Commit Graph

413 Commits (b51a8380c4e38f5eec4b6a696ccb0173551f9a4f)

Author SHA1 Message Date
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
Stephen Williams f41d4b879b Added the ability to remove factors from ConcurrentIncrementalFilter 2013-08-10 17:16:47 +00:00
Stephen Williams 34a3a6ea49 Added the ability to remove factors from the ConcurrentBatchFilter 2013-08-10 17:16:38 +00:00
Stephen Williams ebc6a66c3a Updated to the marginal factor calculation in BatchFixedLagSmoother to
be more efficient
2013-08-10 17:16:31 +00:00
Stephen Williams 12d003229a Fixed missing '}' 2013-08-10 17:16:19 +00:00
Stephen Williams c33c6e2c70 Added unit tests for Concurrent Incremental Filter and Smoother 2013-08-10 17:15:48 +00:00
Stephen Williams 915dc98bd2 Updated unit tests for Concurrent Batch Filter and Smoother 2013-08-10 17:15:38 +00:00
Stephen Williams f656e93202 Created Concurrent Incremental Filter and Smoother 2013-08-10 17:15:31 +00:00
Stephen Williams 663c598591 Updated Concurrent Batch Filter and Smoother to the latest versions 2013-08-10 17:15:20 +00:00
Stephen Williams 1dc0e6192b Added accessor functions for internal data structures to
IncrementalFixedLagSmoother
2013-08-10 17:15:03 +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 c03172aca3 add prior on second camera 2013-08-09 15:31:15 +00:00
Chris Beall 369e69b0d2 actually set everything to zero to turn factor off during linearization 2013-08-09 15:28:57 +00:00
Zsolt Kira 8d9dcfbfc2 Fixed problem with pixel_sigma (2-dimensional only)
Added switch to determine if normal GenericProjectionFactor or SmartProjectionFactor is used
2013-08-09 14:52:26 +00:00
Alex Cunningham 5b7d7b3793 Closer to building and tests running 2013-08-08 20:45:44 +00:00
Vadim Indelman b0c96f9bf6 unwhitenedError. 2013-08-08 20:14:12 +00:00
Vadim Indelman 27cabb62f1 added unwhitenedError to BetweenFactorEM. 2013-08-08 20:13:39 +00:00
Alex Cunningham 4a4e16485c Making more things in gtsam_unstable compile 2013-08-08 20:08:54 +00:00
Alex Cunningham 883c870dff Removed unnecessary summarization files in gtsam_unstable, restricted compilation of gtsam_unstable for components needing iSAM2 - core gtsam_unstable library builds 2013-08-08 20:08:52 +00:00
Zsolt Kira 5af82c4042 SmartProjectionFactor example: Cleaned up some code, added comments,
changed some of the LM parameters.  Switched to use smaller kitti
dataset for now.
2013-08-08 17:16:23 +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
Zsolt Kira 6dd67a13fd Changed to optimize entire graph instead of sub-graphs 2013-08-08 14:20:08 +00:00
Luca Carlone a82262cf99 Included noise model and f term in SmartProjectionFactor 2013-08-08 14:00:26 +00:00
Zsolt Kira 159f9eee1e Added SmartProjectionFactorExample_kitti.cpp.
Currently loads kitti dataset after processing by VO code (stereo_factors.txt and camera_poses.txt)
Creates graph after N landmarks have been seen, runs it through SmartProjectionFactor
Verification of output is still needed; LM seems to optimize but poses don't seem to change.
2013-08-08 03:11:42 +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 2d60d2cdfa Fixed more unit tests 2013-08-06 18:04:40 +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
Richard Roberts cb7eb1b510 Find+replace Ordered headers 2013-08-05 22:31:33 +00:00
Richard Roberts 09643929fd Making some tests compile 2013-08-05 22:31:26 +00:00
Richard Roberts 628d4e0d77 Disabled discrete for the time being 2013-08-05 22:30:52 +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
Alex Cunningham 424ef0728f Changed a filename to avoid having multiple object files of the same name in the library 2013-08-01 16:54:44 +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 34998b3435 Added missing export tag 2013-07-31 15:36:39 +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
Chris Beall 201a7bfda5 adding triangulation function needed by new Schur complement factor 2013-07-30 18:52:06 +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
Richard Roberts b5c530d080 Merge branch 'svn/trunk'
Conflicts:
	CMakeLists.txt
2013-07-09 17:54:06 +00:00
Richard Roberts ecb24ebd06 Fixes to include path ordering and boost libraries 2013-07-09 15:43:55 +00:00
Richard Roberts d7767188b3 Merged from branch 'trunk' 2013-07-01 13:11:15 +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 31a9319fca Merge branch 'trunk' 2013-06-24 19:30:29 +00:00
Richard Roberts bad9373aec Merge branch 'trunk' 2013-06-24 19:30:24 +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
Richard Roberts 123657e3d0 Merged from branch 'trunk' 2013-06-24 15:28:16 +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 40bc7070ff Example in unstable, to use SmartRangeFactor 2013-06-24 12:06:47 +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
Alex Cunningham 45b5389f8a Serialized more classes in gtsam and gtsam_unstable 2013-06-19 17:50:07 +00:00
Richard Roberts 8f9d5ec2e2 Merge branch 'trunk' 2013-06-17 21:15:57 +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
Alex Cunningham 9e3bfdc4f8 comments only 2013-06-11 14:36:54 +00:00
Alex Cunningham 083e0c849e Switched to templated version of liquefy() to allow for use with non-default clique types 2013-06-11 14:36:53 +00:00
Alex Cunningham 83a1483e9f Adding unit tests and a bugfix for liquefying bayes tree function 2013-06-11 14:36:52 +00:00
Alex Cunningham 361682c485 Working on a test for liquefy 2013-06-11 14:36:51 +00:00
Richard Roberts d5e721a1d0 Continued work on unordered classes and elimination algorithm 2013-06-06 15:36:11 +00:00
Frank Dellaert ebcc638ef5 renamed dist to distance (dist still works but now deprecated) 2013-06-05 16:11:36 +00:00
Richard Roberts b2d4469cb3 Added missing export tag 2013-06-04 17:34:02 +00:00
Stephen Williams 1e5f9c742d Revert "Modified Concurrent Filter to calculate marginals using a "shortcut" that allows constant-time updates during synchronization. Still need to test implementation."
This reverts commit f24a4f4668006cfe9a3eeb1658b7df03c74490d5.
2013-05-22 00:05:03 +00:00
Stephen Williams 8e26da7396 Added matlab version of the Concurrent Filtering and Smoothing example 2013-05-21 21:07:45 +00:00
Stephen Williams 5f371a4e55 Modified Concurrent Filter to calculate marginals using a "shortcut"
that allows constant-time updates during synchronization. Still need to
test implementation.
2013-05-21 21:07:43 +00:00
Richard Roberts 16c11c70fb Fixes to compile on Windows 2013-05-21 17:24:49 +00:00
Stephen Williams 13d3f1cb6e Updated Fixed-Lag smoother example 2013-05-21 14:57:40 +00:00
Duy-Nguyen Ta 77c2e37a4d remove unused debug variables 2013-05-21 00:03:05 +00:00
Frank Dellaert 03977ba628 Added wrapping of AHRS 2013-05-20 23:28:38 +00:00
Frank Dellaert 1d9000724d Moved AHRS to gtsam_unstable 2013-05-20 23:16:44 +00:00
Stephen Williams 1c5061cf3c Added optional flag to ConcurrentBatchFilter to control relinearization
during syncs.
2013-05-17 08:06:06 +00:00
Alex Cunningham d4ec018d0f Added constructors to Point2Vector 2013-05-13 20:48:09 +00:00
Richard Roberts 50866b9a0e Partial fix for compiling statically on Windows 2013-05-13 18:04:36 +00:00
Stephen Williams 7d03d3c502 Moved pre-sync code to the update() call for the cuncurrent smoother 2013-05-09 18:59:22 +00:00
Stephen Williams 93149ae5f2 Updated Concurrent example, forcing a call to smoother.update() between
each synchronization
2013-05-09 18:59:20 +00:00
Chris Beall 7ad3de6bc0 documentation 2013-05-08 20:10:49 +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 f68e301458 Wrapped Inverse Depth Factor variants 2013-05-08 13:23:39 +00:00
Stephen Williams 54808f6d44 Added several experimental versions of an Inverse Depth Factor 2013-05-08 13:23:35 +00:00
Alex Cunningham acd6e629e8 Moved older functions back to gtsam_unstable, cleanup. All tests pass. Rearranged summarization wrap interfaces. 2013-05-08 10:13:57 +00:00
Alex Cunningham 81f63bcc0e Rearranging summarization, now with unit test in gtsam 2013-05-08 10:11:45 +00:00
Stephen Williams 36e66b2f0b Fixed synchronization code in ConcurrentBatchFilter such that an empty graph does not trigger a segfault 2013-05-01 20:54:53 +00:00
Duy-Nguyen Ta 444ab957c4 a numerical derivative version for DiscreteEulerPoincare'Factor, but currently disabled. 2013-05-01 17:30:21 +00:00
Alex Cunningham 62f6089119 Updated matlab wrapping for moved factors 2013-04-30 17:50:48 +00:00
Alex Cunningham a069d24374 Moved PoseRotationPrior, PoseTranslationPrior and ReferenceFrameFactor to gtsam.slam 2013-04-30 17:50:47 +00:00
Duy-Nguyen Ta 84ababc653 wrap SimpleHelicopter factors and fix a bug in noisemodel dimension 2013-04-30 17:21:42 +00:00
Duy-Nguyen Ta 26c63ec122 increase tolerance in TEST( testPoseRTV, Lie ) 2013-04-29 23:35:08 +00:00
Duy-Nguyen Ta e4a9c398c8 Factor for Discrete Euler Poincare' equation in SE3 for Simple Helicopter dynamics with correct dertivatives 2013-04-29 17:21:13 +00:00
Alex Cunningham 224be276e4 Added a new summarization convenience function and cleaned up documentation 2013-04-26 18:27:22 +00:00
Alex Cunningham 2b7d173c22 Added include path for generated headers when wrapping 2013-04-25 18:24:41 +00:00
Stephen Williams 009012005e Removed VariableIndex from the class members as it was often left in an inconsistent state 2013-04-25 18:12:05 +00:00
Stephen Williams 1e1dfdd808 Updated BatchFixedLagSmoother to use the latest version of optimization and marginalization code 2013-04-25 18:10:21 +00:00
Richard Roberts eeef9eab32 Generating config.h file in CMake with quaternion mode flag, dataset paths. Also added CMake option to use system-installed Eigen, which works by generating a global eigen include file containing the corresponding include paths. 2013-04-25 15:57:15 +00:00
Richard Roberts 5f3238634d Added missing GTSAM_UNSTABLE_EXPORT tag 2013-04-25 15:57:06 +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 124a38f72d Made unit test local vars/functions in anonymous namespace 2013-04-22 17:44:09 +00:00
Duy-Nguyen Ta cde44b2952 Finally finish implementing the Reconstruction factor for updating the poses of holonomic vehicles using discrete variational integrators (eq. 10 in [Kobilarov09siggraph]). Also, better approximation for the derivative of the inverse expmap wrt the lie algebra in Pose3. Test with numericalderivative. 2013-04-22 08:34:40 +00:00
Stephen Williams c1f14d60be Purged unused code 2013-04-19 12:16:18 +00:00
Stephen Williams 201ca3da9e Removed debug print statement 2013-04-19 12:16:04 +00:00
Stephen Williams 3eade960b8 Fixed bugs in marginal generation. It is possible that the marginalization will be "perfect", resulting in no marginal factor. However, a factor was being created anyway. 2013-04-19 12:13:43 +00:00
Duy-Nguyen Ta 541d416c84 comment for VelocityConstraint3::evaluateError 2013-04-17 21:25:15 +00:00
Duy-Nguyen Ta 494885bf1d factors for the pendulum discrete mechanics in position-momentum form to use with variational integrator 2013-04-16 19:07:59 +00:00
Duy-Nguyen Ta 37d244e49b fix bug in PendulumFactor2's jacobian 2013-04-16 02:17:19 +00:00
Duy-Nguyen Ta 6a139bd0f8 Factors for the simple Pendulum dynamics for being used with explicit/implicit/sympletic Euler integrators as in [Stern06siggraph] 2013-04-15 21:31:47 +00:00
Stephen Williams c2fb82b935 Added matlab wrapping for Fixed-Lag Smoothers and Concurrent Filters and Smoothers 2013-04-15 19:54:46 +00:00
Stephen Williams f216e97a15 Modified the getter method in the FixedLagSmoother base class to follow general GTSAM conventions 2013-04-15 17:53:33 +00:00
Stephen Williams 41238572c1 Extended the Concurrent Filtering and Smoothing example to include a delayed loop closure 2013-04-15 16:07:40 +00:00
Stephen Williams 693a0f991a Added the Filter<->Smoother synchronization back into the example 2013-04-12 13:05:52 +00:00
Stephen Williams f3007f5013 Moved the pre-sync code back into the presync() function call. This allows the Filter and Smoother to synchronize properly even when no call to smoother.update() has been made. 2013-04-12 13:05:20 +00:00
Stephen Williams 34d7742d95 Added first version of a Concurrent Filtering and Smoothing example 2013-04-12 12:53:34 +00:00
Stephen Williams 03db2b7e55 Modified comments 2013-04-12 12:53:05 +00:00
Stephen Williams 460a428c97 Provided default parameters for concurrent batch filter and smoother constructors 2013-04-12 12:52:29 +00:00
Stephen Williams 1c738123b9 Fixed inconsistency between odometry measurements and initializations 2013-04-12 12:51:22 +00:00
Stephen Williams 5087e4eabc Modified Fixed-Lag Smoothing example to call iSAM2 multiple times to recover the same solution as batch 2013-04-11 21:10:32 +00:00
Stephen Williams 321de2f701 Removed debugging check from IncrementalFixedLagSmoother and added work around for tree reordering 2013-04-11 20:55:55 +00:00
Stephen Williams c902908115 Added 'examples' folder to gtsam_unstable 2013-04-11 20:47:25 +00:00
Stephen Williams 95e97c2dfc Changed the default 'enforceConsistency' flag to true in the Batch Fixed-Lag Smoother to match the incremental version 2013-04-11 20:07:58 +00:00
Stephen Williams d44a9e3b75 Removed unused code from Concurrent Batch Filter unit test 2013-04-11 19:16:52 +00:00
Stephen Williams f963aeb401 Completed rewrite of synchronization functions for the Concurrent Batch Filter 2013-04-11 19:16:15 +00:00
Stephen Williams 04d595dec1 Started re-implementing the synchronization functions for the Concurrent Filter 2013-04-11 12:43:42 +00:00
Stephen Williams 634a4c5ef9 Updated Concurrent Smoother for changes in the base class synchronization 2013-04-11 12:42:45 +00:00
Stephen Williams 0a459549f8 Updated synchronization interface to require the smoother and filter to track their own separator keys and values 2013-04-11 12:42:09 +00:00
Duy-Nguyen Ta 08e6d8860b wrap VelocityConstraint3 2013-04-11 12:07:42 +00:00
Duy-Nguyen Ta 72325d673d simple 3-way factor velocity constraint with LieScalar 2013-04-10 22:02:21 +00:00