Commit Graph

686 Commits (release/4.3a0)

Author SHA1 Message Date
Chris Beall e799c9ffa9 tabs converted to two spaces 2013-10-10 17:52:57 +00:00
Luca Carlone 121e71431a SmartFactorsCreator + initial fix in kitti example 2013-10-09 17:13:19 +00:00
Luca Carlone 426b4d79cf testSmartProjectionFactor - disabled 2013-10-08 14:28:50 +00:00
Luca Carlone 444df1958a Kitti test not working 2013-10-06 18:17:35 +00:00
Luca Carlone d049dd38c6 Incremental mode in Smart Factors (not working yet with standard ProjectionFactors) 2013-10-06 18:17:32 +00:00
Richard Roberts bf40956592 Merged from Hmf6_unordered 970392249a8c50153f24594c9c81acb740cedd06 2013-10-03 19:51:56 +00:00
Luca Carlone a6dd4c0464 testing on kitti 2013-09-30 20:39:55 +00:00
Luca Carlone 441dcec64e added unit test for selective relinearization 2013-09-28 21:25:08 +00:00
Luca Carlone 9ad72e9523 included rank tolerance in Smart factor constructor 2013-09-28 18:49:26 +00:00
Luca Carlone d10ffee4d4 management of degeneracy 2013-09-28 00:49:37 +00:00
Luca Carlone e10a0a0650 bool to disable selective relinearization 2013-09-26 23:09:50 +00:00
Luca Carlone 8168d4a186 commented test 2013-09-26 23:09:48 +00:00
Luca Carlone 22ccd4b4b4 update to smartFactor 2013-09-26 23:09:47 +00:00
Luca Carlone 70a448f43e Efficient implementation of Selective Linearization 2013-09-26 15:07:56 +00:00
Luca Carlone 73e72a98bd Selective relinearization 2013-09-26 01:06:55 +00:00
Luca Carlone 9f68c04792 Initial implementation of selective relinearization 2013-09-20 20:19:58 +00:00
Luca Carlone 0e5069c26c Added toy example on SmartRangeFactors 2013-09-14 00:21:10 +00:00
Zsolt Kira a8d1072a02 Further optimization with another ~9% speed improvement.
Don't retriangulate on linearize if previous triangulation involved same poses
Added noalias in non-blockwise portion
Added exception handling for project() function
2013-09-10 15:15:24 +00:00
Vadim Indelman b3d500f58c Added optional flag_bump_up_near_zero_probs. 2013-08-29 22:43:09 +00:00
Vadim Indelman 86d21aaa05 Added optional flag_bump_up_near_zero_probs. 2013-08-29 22:42:33 +00:00
Luca Carlone 141958123a Working version of rotation only smart factor 2013-08-28 17:37:58 +00:00
Vadim Indelman df36ee643a Added option to start with an M step. 2013-08-28 16:56:57 +00:00
Luca Carlone 0422b9cfef degenerate case in smart vision factor 2013-08-28 16:07:58 +00:00
Luca Carlone 633220a9dd degenerate case in SmartProjectionFactor 2013-08-28 16:07:56 +00:00
Chris Beall 19ddf3f228 minor speedup 2013-08-28 14:47:57 +00:00
Zsolt Kira bf8621aa3a Added some state that is returned/passed in to smart projection factor to support smart re-linearization
Fixed bug in batch example that did not add last set of measurements in file
Created incremental version that reads measurements as they come, associates with a smart factor (or creates new one), and optimizes.  
Last example achieves same results on 200-pose example as batch example.
2013-08-28 12:31:56 +00:00
Chris Beall 138a7ea28c minor fixes - removed unnecessary boost optional 2013-08-27 17:48:59 +00:00
Zsolt Kira f779736380 Fixed failed test, which resulted from removal of feature allowing one to pass a landmark in to constructor 2013-08-26 12:46:13 +00:00
Vadim Indelman e6d5c2bf73 updated to the new gtsam version. 2013-08-23 18:15:28 +00:00
Vadim Indelman 6ab49e95da Added cref_list_of. 2013-08-23 18:12:59 +00:00
Vadim Indelman e439a298b8 disabled until debugging is done. 2013-08-23 16:18:18 +00:00
Vadim Indelman 77e02a332e Added TransformBtwRobotsUnaryFactorEM. May need to move to MAST later. 2013-08-23 15:24:16 +00:00
Vadim Indelman f6402916d6 added flag_bump_up_near_zero_probs_. 2013-08-23 15:22:50 +00:00
Vadim Indelman ca3956adc1 minor changes. 2013-08-23 15:21:50 +00:00
Zsolt Kira 0466e606b0 Added try/catch for triangulation exception
Optimizations resulting in about 6-7% improvement
Added methods returning keys and other information needed to create generic projection factors
Code cleanup
2013-08-21 01:35:13 +00:00
Alex Cunningham c6cf4d2dab Removed use of convenience libraries for tests - wasn't really supported in current version 2013-08-19 15:32:21 +00:00
Alex Cunningham 4b12d6f794 Moved Symbol and LabeledSymbol to inference as they are no longer specific to nonlinear optimization 2013-08-19 15:32:16 +00:00
Zsolt Kira fe860be33f SmartProjectionFactor: Added add(measured, poseKey) method to incrementally add views to the same landmark.
Added unit test for new method and way of creating factor.
Fixed missing negative when calculating b for non-blockwise version of Schur complement
2013-08-18 02:18:32 +00:00
Richard Roberts 09c4d8b712 Disabled testBetweenFactorEM because it is in progress for debugging 2013-08-16 21:57:49 +00:00
Richard Roberts 0212bbc30d Fixed some unit tests 2013-08-16 04:11:02 +00:00
Luca Carlone 0514ad39c6 Smart projection factor working on Kitti 2013-08-14 19:12:23 +00:00
Luca Carlone d7e6f43fa7 Updated to work with unordered GTSAM 2013-08-14 19:12:21 +00:00
Richard Roberts 16b4f0fe8b Moved ImuFactor and CombinedImuFactor into main gtsam, and moved InertialNavFactor family into gtsam_unstable. 2013-08-13 21:04:31 +00:00
Richard Roberts 13d829687c Merged from branch 'trunk' 2013-08-12 21:49:59 +00:00
Richard Roberts d9c9682f6e Merge branch 'svn/trunk'
Conflicts:
	gtsam_unstable/slam/BetweenFactorEM.h
	gtsam_unstable/slam/tests/testBetweenFactorEM.cpp
2013-08-12 21:47:36 +00:00
Zsolt Kira b34b6cc9ee Added warning if triangulation fails
Added ability to pass in landmark position directly, thereby avoiding triangulation
Added test that compares GenericProjectionFactor and SmartProjectionFactor for 1 iteration using
both GaussNewton and LM optimization.  These tests also fail, until we find the problem/bug.
2013-08-12 21:44:54 +00:00
Richard Roberts 7a027be7e5 Fixed unit tests compiling on windows 2013-08-12 16:25:13 +00:00
Vadim Indelman 87a7c56c88 Switched to square root of covariance norm. 2013-08-12 16:11:48 +00:00
Chris Beall 14931bcc7d improved tests a little. basic 3 landmark test with smart projection factor fails! 2013-08-12 14:40:57 +00:00
Richard Roberts ea3ca54cba "Fixed" more unit tests 2013-08-11 19:01:06 +00:00
Richard Roberts 517a5037a7 Enabled more unit tests and either fixed them or have them print a "disabled" message during make check 2013-08-11 18:41:08 +00:00
Richard Roberts f4d816dcf8 Disabled testSmartProjectionFactor and made print message about this 2013-08-11 18:40:57 +00:00
Richard Roberts f240327f24 Fixed testIMUSystem and BetweenFactorEM 2013-08-11 18:40:47 +00:00
Richard Roberts 4585fd1caa Merge branch 'svn/trunk'
Conflicts:
	gtsam/navigation/tests/testInertialNavFactor_GlobalVelocity.cpp
	gtsam/nonlinear/ISAM2.cpp
	gtsam/nonlinear/ISAM2.h
	gtsam/slam/tests/testBetweenFactor.cpp
	gtsam_unstable/nonlinear/ConcurrentBatchFilter.cpp
	gtsam_unstable/nonlinear/tests/testConcurrentBatchFilter.cpp
	gtsam_unstable/nonlinear/tests/testConcurrentBatchSmoother.cpp
	gtsam_unstable/slam/SmartProjectionFactor.h
2013-08-11 18:16:56 +00:00
Richard Roberts bb4ad176da Needed std:: 2013-08-09 18:50:15 +00:00
Richard Roberts 1eae17561d Taking ImuFactor noise model automatically from preintegrated measurement covariance 2013-08-09 18:50:14 +00:00
Chris Beall 369e69b0d2 actually set everything to zero to turn factor off during linearization 2013-08-09 15:28:57 +00:00
Vadim Indelman b0c96f9bf6 unwhitenedError. 2013-08-08 20:14:12 +00:00
Alex Cunningham 4a4e16485c Making more things in gtsam_unstable compile 2013-08-08 20:08:54 +00:00
Vadim Indelman 579e0931dc Fixed different issues with EM. 2013-08-08 15:12:21 +00:00
Luca Carlone b3ea3f9465 lines added to testSmartProjectionFactor 2013-08-08 14:30:26 +00:00
Luca Carlone a82262cf99 Included noise model and f term in SmartProjectionFactor 2013-08-08 14:00:26 +00:00
Zsolt Kira f423d6f2a8 SmartProjectionFactor: More cleanup, added more tests, added some timing 2013-08-07 23:32:40 +00:00
Vadim Indelman d33f435eab Added BetweenFactorEM with 2 indicator variables. 2013-08-07 15:25:00 +00:00
Zsolt Kira c2f5adc7d0 Cleaned up code: Removed commented out code, added debug condition
If debug is enabled, both blockwise and full implementations are performed and then compared
2013-08-07 13:05:08 +00:00
Richard Roberts e2f8dd866d Merge branch 'svn/trunk'
Conflicts:
	gtsam/linear/GaussianBayesTree.cpp
	gtsam/linear/GaussianBayesTree.h
	gtsam/linear/VectorValues.h
	gtsam/linear/tests/testVectorValues.cpp
	gtsam_unstable/nonlinear/sequentialSummarization.cpp
2013-08-06 18:33:24 +00:00
Richard Roberts e39d100b6a Made most global unit tests compile, includes dogleg, iterative, kalman filter, etc 2013-08-06 13:44:22 +00:00
Luca Carlone 482c5df647 updates in SmartProjectionFactor: first working version with full and block version producing the same results (non-optimized) 2013-08-05 22:34:31 +00:00
Richard Roberts ede0805fac Global find+replace to remove Ordered 2013-08-05 22:31:44 +00:00
Luca Carlone 2e085ace91 Changes in SmartProjectionFactor 2013-08-05 19:25:08 +00:00
Chris Beall 5518007317 adding test with regular projection factors for comparison, and bug fixes in SmartFactor test. 2013-08-05 17:58:32 +00:00
Chris Beall d1de6b29a9 adding 3 camera, 3 landmark test 2013-08-05 15:50:19 +00:00
Luca Carlone 39ec641c4a Modifications to SmartProjectionFactor and unit test: work in progress 2013-08-05 15:09:03 +00:00
Luca Carlone d1419a3d11 Added SmartProjectionFactor (+unit tests) 2013-08-02 23:35:39 +00:00
Richard Roberts f273b8f915 Removed extra 'typename' 2013-08-02 16:04:29 +00:00
Richard Roberts 34dc67c1af Brought some relevant changes from aspn-imu-factor branch (is correct this time) 2013-08-02 16:04:17 +00:00
Richard Roberts 2705d85fa7 Merged from branch 'trunk' 2013-07-31 18:55:15 +00:00
Luca Carlone ed79432a69 Added MultiProjectionFactor, invoving n views (camera poses) observing a single landmark: work in progress 2013-07-31 18:02:56 +00:00
Richard Roberts 321a286f02 Revert "Brought some relevant changes from aspn-imu-factor branch"
This reverts commit b08a11ffb27d14487115f20745f1cea17fcc55ee.
2013-07-31 15:26:48 +00:00
Richard Roberts b62af20fdc Revert "Removed extra 'typename'"
This reverts commit 04fd69f56c1e1cbd934a54aeb415e2cf2132d236.
2013-07-31 15:26:46 +00:00
Richard Roberts 90cf73d4a7 Removed extra 'typename' 2013-07-31 15:25:05 +00:00
Richard Roberts 7345b40feb Brought some relevant changes from aspn-imu-factor branch 2013-07-31 15:25:03 +00:00
Richard Roberts 3ade190128 Renamed old classes to "Ordered" and removed "Unordered" name from new classes 2013-07-29 23:55:40 +00:00
Alex Cunningham f3aa2fde53 Fixed compile error 2013-06-25 17:22:45 +00:00
Frank Dellaert 0837eab8f5 Scripts to test (still not working so-well) smart range factor 2013-06-25 17:13:02 +00:00
Richard Roberts 26df712592 Put new unit test global variables into anonymous namespaces. Removed dll export tag from SmartRangeFactor since it is a header-only class. 2013-06-24 19:30:00 +00:00
Frank Dellaert 39910717d6 Picked the winner 2013-06-24 16:25:02 +00:00
Frank Dellaert 34db300802 Fixed n<3 Jacobians 2013-06-24 16:18:48 +00:00
Frank Dellaert 3383e52c5f Split unit tests.... 2013-06-24 16:02:17 +00:00
Frank Dellaert 43fe036c32 Made more efficient by adding errors -> Jacobians back to 1*3, always. This is big savings if a landmark is seen from many poses. 2013-06-24 15:57:03 +00:00
Frank Dellaert aea4f31096 Fixed Jacobians, optimization works 2013-06-24 15:31:13 +00:00
Frank Dellaert b7dbcefa8b simplified measurements_ to vector 2013-06-24 12:15:01 +00:00
Frank Dellaert 4b412b0a4b keys and Jacobians 2013-06-24 12:07:21 +00:00
Frank Dellaert d041c5b8a8 Split up circle intersection code into three routines that are used in SmartRangeFactor 2013-06-24 08:24:56 +00:00
Frank Dellaert 5f5e481394 AHRS mechanization small efficiency change (in progress) 2013-06-21 00:21:18 +00:00
Alex Cunningham e7334b89bd Rebasing... 2013-06-20 17:08:30 +00:00
Richard Roberts 5ae4f21517 Added missing dll export tags to new functions 2013-06-20 16:05:23 +00:00
Alex Cunningham 456d1b5cf7 Cleanup: moving old serialization function to gtsam_unstable, renaming matlab serializaion test 2013-06-19 17:50:09 +00:00
Kyel Ok d85c773f7c Changes in AHRS - flat trim initialization added, some comments by Frank, aidingAvailablitiy function 2013-06-14 21:18:22 +00:00
Richard Roberts b2d4469cb3 Added missing export tag 2013-06-04 17:34:02 +00:00
Richard Roberts 16c11c70fb Fixes to compile on Windows 2013-05-21 17:24:49 +00:00
Frank Dellaert 1d9000724d Moved AHRS to gtsam_unstable 2013-05-20 23:16:44 +00:00
Chris Beall 32b3eebf07 removed redundant shared_ptr typedefs in Cal3_S2 and Cal3_S2Stereo 2013-05-08 19:21:00 +00:00
Stephen Williams 9e39df6e88 Added PriorFactor and BetweenFactor with optional sensor pose
transformations. Ideally these should simply be the PriorFactor and
BetweenFactor, but more investigation is needed.
2013-05-08 13:23:56 +00:00
Stephen Williams 54808f6d44 Added several experimental versions of an Inverse Depth Factor 2013-05-08 13:23:35 +00:00
Alex Cunningham a069d24374 Moved PoseRotationPrior, PoseTranslationPrior and ReferenceFrameFactor to gtsam.slam 2013-04-30 17:50:47 +00:00
Alex Cunningham 38af960c53 removed commented line 2013-04-24 17:34:49 +00:00
Alex Cunningham 1c17065376 Removed unnecessary templated traits from partial pose priors - now uses rotationInterval and translationInterval 2013-04-24 17:34:48 +00:00
Richard Roberts a54d177202 Added dll export tags and updated cmake scripts so that GTSAM can build as a shared library on windows 2013-03-13 18:56:21 +00:00
Richard Roberts 6111c099ab Improved build of shared vs static GTSAM libraries - now possible to build either one or both, executables link to the shared if it is being build, or otherwise to the static. Also removed separate shared/static CMake flags for gtsam_unstable, now uses the same GTSAM_BUILD_SHARED and GTSAM_BUILD_STATIC as gtsam. 2013-03-13 18:17:39 +00:00
Chris Beall 879417cb0d more documentation and cleanup: missed a file 2012-11-29 18:20:39 +00:00
Chris Beall 6b67238dd3 more documentation and cleanup 2012-11-29 18:19:28 +00:00
Chris Beall 4297d24c96 changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
Alex Cunningham 0ef12f2f20 Moved in reference frame factor from MastSLAM 2012-09-19 02:23:43 +00:00
Alex Cunningham f272a07e29 Moved DummyFactor to gtsam_unstable from MastSLAM - allows for adding sufficient connectivity for solvers to operate 2012-09-18 17:48:18 +00:00
Chris Beall 49a952d237 more doxygen fixes 2012-09-07 19:12:02 +00:00
Chris Beall 9e960b4589 doxygen fixes 2012-09-07 18:54:12 +00:00
Alex Cunningham 891fb2e038 comments only 2012-09-03 00:50:24 +00:00
Alex Cunningham 2285b14c5f Alternate matrix operation 2012-09-03 00:39:02 +00:00
Alex Cunningham 878c79f265 Reworked PoseRotationPrior with better tests and no dependence on PartialPriorFactor 2012-08-27 16:51:52 +00:00
Alex Cunningham c60fc3ca2a Relegated the PartialPriorFactor to gtsam_unstable 2012-08-24 21:39:56 +00:00
Richard Roberts 519ad72139 Made explicit instantiations in header file inline to avoid duplicate definition 2012-08-22 22:40:39 +00:00
Alex Cunningham e488871ffd Fixed compile problem in toolbox for PoseTranslationPrior. Added planar tests. 2012-08-20 14:25:09 +00:00
Alex Cunningham 3794c2a7b7 Reworked PoseTranslationPrior so that it actually works now 2012-08-20 14:25:07 +00:00
Alex Cunningham 4fb9f3b39e Moved RelativeElevationFactor from MastSLAM 2012-08-20 14:25:04 +00:00
Richard Roberts 84924ad663 Removed remaining reference to slam namespace headers 2012-08-03 21:02:39 +00:00
Alex Cunningham b211c1070d Rearranged the inverse depth factor/camera, created a gtsam_unstable/geometry folder - run cmake to find the new/moved files 2012-08-02 20:47:16 +00:00
Alex Cunningham 4c836c6e3a Wrapped Pose[Translation|Rotation]Factor 2012-08-02 19:57:10 +00:00
Chris Beall 93d9023a61 added InverseDepth factor based on Montiel/Civera's paramaterization. MOntiel06rss, Civera08tro 2012-08-02 19:27:36 +00:00
Alex Cunningham d36b8b63e7 Added versions of partial priors for parts of poses - useful for GPS or inertial priors. Added interval interface to Pose2 and Pose3. 2012-06-14 20:00:51 +00:00
Alex Cunningham 3d2c3aff05 Moved all Simulated* example domains and smallExample to the tests folder so they are no longer installed 2012-06-09 20:15:44 +00:00
Frank Dellaert 8440939f27 Using symbol_shorthand instead of redundant kx, kl functions 2012-06-02 19:28:21 +00:00
Frank Dellaert a2512475c9 Symbol.h is now included just in time, no longer by default everywhere. 2012-06-02 19:05:38 +00:00
Frank Dellaert 5160c2eb50 Significant API change in slam (GTSAM 2.0.1 or 2.1): to eliminate confusion and give the user more freedom in creating their own Keys, the different slam variants no longer create Symbol keys themselves. Instead, all interaction is done via Keys (which are just unordered, unsigned ints). All PoseSLAM unit tests and examples now just use sequential keys. However, a user can still create Keys using the Symbol constructor, which is illustrated in the landmark-based unit tests and examples. 2012-06-02 16:18:40 +00:00
Alex Cunningham efd94014b7 Added check.unstable target - currently runs each unstable group separately, however 2012-05-25 16:12:55 +00:00
Alex Cunningham 9ce892ce65 gtsam_unstable now builds and tests pass 2012-05-03 17:03:25 +00:00