From 4b6eb6734034649fed005699be8b509894d036e6 Mon Sep 17 00:00:00 2001 From: Frank Dellaert Date: Sun, 8 Aug 2010 18:46:56 +0000 Subject: [PATCH] moved timing scripts back to main directory, added timeCalibratedCamera --- .cproject | 2086 ++++++++++++++--------------- geometry/Makefile.am | 2 +- geometry/timeCalibratedCamera.cpp | 44 + geometry/{tests => }/timeRot3.cpp | 0 4 files changed, 1086 insertions(+), 1046 deletions(-) create mode 100644 geometry/timeCalibratedCamera.cpp rename geometry/{tests => }/timeRot3.cpp (100%) diff --git a/.cproject b/.cproject index ebbb1f90c7..f8214daada 100644 --- a/.cproject +++ b/.cproject @@ -5,47 +5,46 @@ - - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -299,1011 +298,1008 @@ - - - make - all - true - true - true - - - make - clean - true - true - true - - - make - check - true - true - true - - - make - testGaussianConditional.run - true - true - true - - - make - testGaussianFactor.run - true - true - true - - - make - timeGaussianFactor.run - true - true - true - - - make - timeVectorConfig.run - true - true - true - - - make - testVectorBTree.run - true - true - true - - - make - testVectorMap.run - true - true - true - - - make - testNoiseModel.run - true - true - true - - - make - testBayesNetPreconditioner.run - true - true - true - - - make - testErrors.run - true - false - true - - - make - - check - true - true - true - - - make - - tests/testSPQRUtil.run - true - true - true - - - make - - clean - true - true - true - - - make - check - true - true - true - - - make - tests/testGaussianJunctionTree.run - true - true - true - - - make - - check - true - true - true - - - make - - clean - true - true - true - - - make - - testBTree.run - true - true - true - - - make - - testDSF.run - true - true - true - - - make - - testDSFVector.run - true - true - true - - - make - - testMatrix.run - true - true - true - - - make - - testSPQRUtil.run - true - true - true - - - make - - testVector.run - true - true - true - - - make - - timeMatrix.run - true - true - true - - - make - - all - true - true - true - - - make - all - true - true - true - - - make - clean - true - true - true - - - make - -k - check - true - false - true - - - make - testBayesTree.run - true - false - true - - - make - testBinaryBayesNet.run - true - false - true - - - make - testFactorGraph.run - true - true - true - - - make - testISAM.run - true - true - true - - - make - testJunctionTree.run - true - true - true - - - make - testKey.run - true - true - true - - - make - testOrdering.run - true - true - true - - - make - testSymbolicBayesNet.run - true - false - true - - - make - testSymbolicFactor.run - true - false - true - - - make - testSymbolicFactorGraph.run - true - false - true - - - make - timeSymbolMaps.run - true - true - true - - - make - check - true - true - true - - - make - testClusterTree.run - true - true - true - - - make - testJunctionTree.run - true - true - true - - - make - testEliminationTree.run - true - true - true - - - make - - check - true - true - true - - - make - - testGaussianFactorGraph.run - true - true - true - - - make - - testGaussianISAM.run - true - true - true - - - make - - testGaussianISAM2.run - true - true - true - - - make - - testGraph.run - true - false - true - - - make - - testIterative.run - true - true - true - - - make - - testNonlinearEquality.run - true - true - true - - - make - - testNonlinearFactor.run - true - true - true - - - make - - testNonlinearFactorGraph.run - true - true - true - - - make - - testNonlinearOptimizer.run - true - true - true - - - make - - testSQP.run - true - true - true - - - make - - testSubgraphPreconditioner.run - true - true - true - - - make - - testTupleConfig.run - true - true - true - - - make - - timeGaussianFactorGraph.run - true - true - true - - - make - - testBayesNetPreconditioner.run - true - true - true - - - make - - testConstraintOptimizer.run - true - true - true - - - make - - testInference.run - true - false - true - - - make - - testGaussianBayesNet.run - true - false - true - - - make - - testGaussianFactor.run - true - false - true - - - make - - testJunctionTree.run - true - false - true - - - make - - testSymbolicBayesNet.run - true - false - true - - - make - - testSymbolicFactorGraph.run - true - false - true - - - make - clean - true - true - true - - - make - all - true - true - true - - - make - testNonlinearConstraint.run - true - true - true - - - make - testLieConfig.run - true - true - true - - - make - testConstraintOptimizer.run - true - true - true - - - make - install - true - true - true - - - make - clean - true - true - true - - - make - - all - true - true - true - - - make - - clean - true - true - true - - - make - - all - true - true - true - - - make - - clean - true - true - true - - - make - - all - true - true - true - - - make - - clean - true - true - true - - - make - all - true - true - true - - - make - clean - true - true - true - - - make - - clean all - true - true - true - - - make - - all - true - true - true - - - make - - check - true - true - true - - - make - - clean - true - true - true - - - make - - testPlanarSLAM.run - true - true - true - - - make - - testPose2Config.run - true - true - true - - - make - - testPose2Factor.run - true - true - true - - - make - - testPose2Prior.run - true - true - true - - - make - - testPose2SLAM.run - true - true - true - - - make - - testPose3Config.run - true - true - true - - - make - - testPose3SLAM.run - true - true - true - - - make - - testSimulated2DOriented.run - true - false - true - - - make - - testVSLAMConfig.run - true - true - true - - - make - - testVSLAMFactor.run - true - true - true - - - make - - testVSLAMGraph.run - true - true - true - - - make - - testPose3Factor.run - true - true - true - - - make - - testSimulated2D.run - true - false - true - - - make - - testSimulated3D.run - true - false - true - - - make - - check - true - true - true - - - make - - check - true - true - true - - - make - - check - true - true - true - - - make - -j2 - install - true - true - true - - - make - -j2 - check - true - true - true - - - make - clean - true - true - true - - - make - -j2 - install - true - true - true - - - make - -j2 - clean - true - true - true - - - make - -j2 - check - true - true - true - - - make - - all - true - true - true - - - make - - dist - true - true - true - - - make - - testRot3.run - true - true - true - - - make - - testRot2.run - true - true - true - - - make - - testPose3.run - true - true - true - - - make - - timeRot3.run - true - true - true - - - make - - testPose2.run - true - true - true - - - make - - testCal3_S2.run - true - true - true - - - make - - testSimpleCamera.run - true - true - true - - - make - - testHomography2.run - true - true - true - - - make - - testCalibratedCamera.run - true - true - true - - - make - - check - true - true - true - - - make - - clean - true - true - true - - - make - - testPoint2.run - true - true - true - - - make - check - true - true - true - - - make - testGaussianJunctionTree.run - true - true - true - - - make - testGaussianFactorGraph.run - true - true - true - - - make - timeGaussianFactorGraph.run - true - true - true - - - make - check - true - true - true - - - make - clean - true - true - true - - - make - install - true - true - true - - - make - all - true - true - true - - - - + + +make + +all +true +true +true + + +make + +clean +true +true +true + + +make + +check +true +true +true + + +make + +testGaussianConditional.run +true +true +true + + +make + +testGaussianFactor.run +true +true +true + + +make + +timeGaussianFactor.run +true +true +true + + +make + +timeVectorConfig.run +true +true +true + + +make + +testVectorBTree.run +true +true +true + + +make + +testVectorMap.run +true +true +true + + +make + +testNoiseModel.run +true +true +true + + +make + +testBayesNetPreconditioner.run +true +true +true + + +make + +testErrors.run +true +false +true + + +make +check +true +true +true + + +make +tests/testSPQRUtil.run +true +true +true + + +make +clean +true +true +true + + +make + +check +true +true +true + + +make + +tests/testGaussianJunctionTree.run +true +true +true + + +make +check +true +true +true + + +make +clean +true +true +true + + +make +testBTree.run +true +true +true + + +make +testDSF.run +true +true +true + + +make +testDSFVector.run +true +true +true + + +make +testMatrix.run +true +true +true + + +make +testSPQRUtil.run +true +true +true + + +make +testVector.run +true +true +true + + +make +timeMatrix.run +true +true +true + + +make +all +true +true +true + + +make + +all +true +true +true + + +make + +clean +true +true +true + + +make +-k +check +true +false +true + + +make + +testBayesTree.run +true +false +true + + +make + +testBinaryBayesNet.run +true +false +true + + +make + +testFactorGraph.run +true +true +true + + +make + +testISAM.run +true +true +true + + +make + +testJunctionTree.run +true +true +true + + +make + +testKey.run +true +true +true + + +make + +testOrdering.run +true +true +true + + +make + +testSymbolicBayesNet.run +true +false +true + + +make + +testSymbolicFactor.run +true +false +true + + +make + +testSymbolicFactorGraph.run +true +false +true + + +make + +timeSymbolMaps.run +true +true +true + + +make + +check +true +true +true + + +make + +testClusterTree.run +true +true +true + + +make + +testJunctionTree.run +true +true +true + + +make + +testEliminationTree.run +true +true +true + + +make +check +true +true +true + + +make +testGaussianFactorGraph.run +true +true +true + + +make +testGaussianISAM.run +true +true +true + + +make +testGaussianISAM2.run +true +true +true + + +make +testGraph.run +true +false +true + + +make +testIterative.run +true +true +true + + +make +testNonlinearEquality.run +true +true +true + + +make +testNonlinearFactor.run +true +true +true + + +make +testNonlinearFactorGraph.run +true +true +true + + +make +testNonlinearOptimizer.run +true +true +true + + +make +testSQP.run +true +true +true + + +make +testSubgraphPreconditioner.run +true +true +true + + +make +testTupleConfig.run +true +true +true + + +make +timeGaussianFactorGraph.run +true +true +true + + +make +testBayesNetPreconditioner.run +true +true +true + + +make +testConstraintOptimizer.run +true +true +true + + +make +testInference.run +true +false +true + + +make +testGaussianBayesNet.run +true +false +true + + +make +testGaussianFactor.run +true +false +true + + +make +testJunctionTree.run +true +false +true + + +make +testSymbolicBayesNet.run +true +false +true + + +make +testSymbolicFactorGraph.run +true +false +true + + +make + +clean +true +true +true + + +make + +all +true +true +true + + +make + +testNonlinearConstraint.run +true +true +true + + +make + +testLieConfig.run +true +true +true + + +make + +testConstraintOptimizer.run +true +true +true + + +make + +install +true +true +true + + +make + +clean +true +true +true + + +make +all +true +true +true + + +make +clean +true +true +true + + +make +all +true +true +true + + +make +clean +true +true +true + + +make +all +true +true +true + + +make +clean +true +true +true + + +make + +all +true +true +true + + +make + +clean +true +true +true + + +make +clean all +true +true +true + + +make +all +true +true +true + + +make +check +true +true +true + + +make +clean +true +true +true + + +make +testPlanarSLAM.run +true +true +true + + +make +testPose2Config.run +true +true +true + + +make +testPose2Factor.run +true +true +true + + +make +testPose2Prior.run +true +true +true + + +make +testPose2SLAM.run +true +true +true + + +make +testPose3Config.run +true +true +true + + +make +testPose3SLAM.run +true +true +true + + +make +testSimulated2DOriented.run +true +false +true + + +make +testVSLAMConfig.run +true +true +true + + +make +testVSLAMFactor.run +true +true +true + + +make +testVSLAMGraph.run +true +true +true + + +make +testPose3Factor.run +true +true +true + + +make +testSimulated2D.run +true +false +true + + +make +testSimulated3D.run +true +false +true + + +make +check +true +true +true + + +make + +timeCalibratedCamera.run +true +true +true + + +make + +timeRot3.run +true +true +true + + +make + +clean +true +true +true + + +make +check +true +true +true + + +make +-j2 +install +true +true +true + + +make +-j2 +check +true +true +true + + +make + +clean +true +true +true + + +make +check +true +true +true + + +make +testRot3.run +true +true +true + + +make +testRot2.run +true +true +true + + +make +testPose3.run +true +true +true + + +make +timeRot3.run +true +true +true + + +make +testPose2.run +true +true +true + + +make +testCal3_S2.run +true +true +true + + +make +testSimpleCamera.run +true +true +true + + +make +testHomography2.run +true +true +true + + +make +testCalibratedCamera.run +true +true +true + + +make +check +true +true +true + + +make +clean +true +true +true + + +make +testPoint2.run +true +true +true + + +make +-j2 +install +true +true +true + + +make +-j2 +clean +true +true +true + + +make +-j2 +check +true +true +true + + +make +all +true +true +true + + +make +dist +true +true +true + + +make + +check +true +true +true + + +make + +testGaussianJunctionTree.run +true +true +true + + +make + +testGaussianFactorGraph.run +true +true +true + + +make + +timeGaussianFactorGraph.run +true +true +true + + +make + +check +true +true +true + + +make + +clean +true +true +true + + +make + +install +true +true +true + + +make + +all +true +true +true + + + + - - + + diff --git a/geometry/Makefile.am b/geometry/Makefile.am index b08d89810c..e7ac5db7f2 100644 --- a/geometry/Makefile.am +++ b/geometry/Makefile.am @@ -21,7 +21,7 @@ sources += projectiveGeometry.cpp tensorInterface.cpp check_PROGRAMS += tests/testTensors tests/testHomography2 tests/testTrifocal # Timing tests -noinst_PROGRAMS = tests/timeRot3 +noinst_PROGRAMS = timeRot3 timeCalibratedCamera #---------------------------------------------------------------------------------------------------- # Create a libtool library that is not installed diff --git a/geometry/timeCalibratedCamera.cpp b/geometry/timeCalibratedCamera.cpp new file mode 100644 index 0000000000..96b9f862fd --- /dev/null +++ b/geometry/timeCalibratedCamera.cpp @@ -0,0 +1,44 @@ +/** + * @file timeCalibratedCamera.cpp + * @brief time CalibratedCamera derivatives + * @author Frank Dellaert + */ + +#include +#include + +#include "CalibratedCamera.h" + +using namespace std; +using namespace gtsam; + +int main() +{ + int n = 100000; + Matrix computed; + + const Pose3 pose1(Matrix_(3,3, + 1., 0., 0., + 0.,-1., 0., + 0., 0.,-1. + ), + Point3(0,0,0.5)); + + const CalibratedCamera camera(pose1); + const Point3 point1(-0.08,-0.08, 0.0); + + // Aug 8, iMac 3.06GHz Core i3 + // 0.263943 seconds + // 378870 calls/second + // 2.63943 musecs/call + + long timeLog = clock(); + for(int i = 0; i < n; i++) + computed = Dproject_pose(camera, point1); + long timeLog2 = clock(); + double seconds = (double)(timeLog2-timeLog)/CLOCKS_PER_SEC; + cout << ((double)n/seconds) << " calls/second" << endl; + cout << ((double)seconds*1000000/n) << " musecs/call" << endl; + + return 0; +} diff --git a/geometry/tests/timeRot3.cpp b/geometry/timeRot3.cpp similarity index 100% rename from geometry/tests/timeRot3.cpp rename to geometry/timeRot3.cpp