Commit Graph

315 Commits (6fd2ac7f86f99fbf58d7fdbeea9a60332bbd8f4c)

Author SHA1 Message Date
Alex Cunningham 03b4743e7a Removed unnecessary cpp file in vSLAMexample, added CMake support for examples, used static linking to the real gtsam for tests 2012-01-31 05:28:02 +00:00
Alex Cunningham e45514e858 added tests folder to cmake build, fixed testSerialization due to namespace changes, set up linking with boost 2012-01-31 05:28:00 +00:00
Stephen Williams 4c54d05da9 Fixed index bug in ExtendedKalmanFilter unit test 2012-01-30 23:37:47 +00:00
Chris Beall 537a1a3fae Matlab wrapped classes now live within the gtsam namespace, meaning you have to use gtsamPose2 instead of just Pose2 in Matlab. This fixes the Point2 and Point3 issues we had with Matlab 2011b.
promote pose2SLAM planarSLAM etc. namespaces to be next to gtsam instead of within
2012-01-30 22:00:13 +00:00
Richard Roberts 51dca5b2d0 (in branch) Fixed Value base class assignment operator, ISAM2 expmap function, and unit tests 2012-01-30 21:23:02 +00:00
Duy-Nguyen Ta f86da6f983 testProjectionFactor and testVSLAM passed. Remaining unpassed tests: GaussianISAM2, NonlinearFactorGraph (colamd failed), SPCG 2012-01-30 16:46:36 +00:00
Duy-Nguyen Ta 98f2d47f58 most tests passed, except testPose2SLAMwSPCG, testGaussianISAM2, testNonlinearEquality, testNonlinearFactorGraph, testProjectionFactor, testVSLAM 2012-01-30 04:34:46 +00:00
Duy-Nguyen Ta 2db224df3c All compiled! Only SPCG and linear/SubgraphSolver are not fixed. 2012-01-29 22:10:35 +00:00
Duy-Nguyen Ta 5b5bbfdfff testSimmulated2D passes. Too many warnings in boost from clang! 2012-01-29 21:12:58 +00:00
Alex Cunningham 67aa0bf63d Fixed compile problems with NonlinearOptimizationParameters, removed redundant typedef 2012-01-29 01:24:27 +00:00
Alex Cunningham 93b1619c81 updated serialization test for pinhole camera 2012-01-29 00:03:45 +00:00
Chris Beall 63dc9399b9 refactored Pose2SLAM 2012-01-28 02:31:44 +00:00
Frank Dellaert ba34a43b1c wrapped new KF style and fixed test 2012-01-27 22:20:43 +00:00
Richard Roberts b3df8d336a For ASPN release, added temporary ENABLE_SPCG flag to avoid conflict with boost::variant 2012-01-27 16:43:31 +00:00
Frank Dellaert 852bb149ce documentation 2012-01-22 06:28:11 +00:00
Richard Roberts e0e3875ff9 Values and TupleValues throw error if attempting to insert the same key twice, also improved error handling with specific exception types. 2012-01-06 18:58:20 +00:00
Alex Cunningham 2572265096 Added noisemodel syntactic sugar so that matlab interface examples and tests work 2012-01-04 16:18:38 +00:00
Alex Cunningham 94049675a4 pacified warnings 2012-01-03 19:20:42 +00:00
Richard Roberts 18a1a98859 Ability to manually constrain specified variables to end of ordering in iSAM2 2012-01-03 19:14:00 +00:00
Richard Roberts 6c6409b81a Ability to remove factors from iSAM2 2012-01-03 17:50:48 +00:00
Richard Roberts b9bd2e61d8 Simplified Rot3 by having only one implementation available at a time 2012-01-02 20:24:23 +00:00
Richard Roberts fa4af2e211 Merged Rot3M.h and Rot3Q.h into Rot3.h, which now defines both Rot3M and Rot3Q. 2012-01-02 02:24:29 +00:00
Alex Cunningham 927217ba4b Cleanup from FactorGraph-inl.h 2011-12-21 16:59:37 +00:00
Stephen Williams 7c87a4f58d Included the inline header at the bottom of SubgraphSolver, NonlinearFactorGraph, NonlinearOptimization, and NonlinearOptimizer. This avoids having to include the '-inl.h' in subsequent projects. 2011-12-20 23:25:43 +00:00
Richard Roberts 64c0606f21 Merged incremental dogleg, updated ASPNtests and GeneralFlow projects for new ISAM2Params. Refactoring of BayesTree. Added many, but not all, #includes of -inl.h files at bottom of .h files, and removing includes of -inl.h files from .cpp files and other -inl.h files. 2011-12-15 20:14:21 +00:00
Alex Cunningham 17bf0f0169 Added static and shared versions of gtsam 2011-12-15 16:17:58 +00:00
Richard Roberts 2fff75562f (in branch) Merged from trunk r8058-r8097 2011-12-15 15:53:05 +00:00
Richard Roberts 21140ea0d5 (in branch) incremental dogleg bug fix and unit test (wasn't computing Gauss-Newton point) 2011-12-15 15:37:52 +00:00
Richard Roberts f3de9e425f (in branch) first pass at Dogleg in ISAM2, bug(s) remaining 2011-12-15 00:08:57 +00:00
Alex Cunningham 5dd461c5b1 Added make check equivalent 2011-12-14 02:24:23 +00:00
Alex Cunningham 61d05813ff Library now builds and all tests run with cmake 2011-12-14 02:24:21 +00:00
Richard Roberts dace9e213c (in branch) Start of unit test for incremental gradient calculation 2011-12-13 22:54:11 +00:00
Richard Roberts 88c3e81a7d (in branch) bug fix and unit test in permutation bug introduced during BayesTree Clique refactoring 2011-12-13 18:46:31 +00:00
Richard Roberts 8d5facb09e (in branch) make check passes after refactoring and code changes for including -inl.h files from .h files 2011-12-12 23:19:31 +00:00
Richard Roberts 3b139cbae2 (in branch) Merged from trunk r7960-r8057 2011-12-12 16:03:52 +00:00
Duy-Nguyen Ta e036dd460e support cloning (deep copy) for ISAM2 2011-12-06 16:21:57 +00:00
Alex Cunningham ec4cfdf065 Added a test runner script for matlab unit tests 2011-12-01 01:59:39 +00:00
Richard Roberts a0abe68b64 (in branch) Merged from trunk r7760-r7959 2011-11-29 17:02:02 +00:00
Alex Cunningham 8bc83d4219 Changed -inl.h use with Values and TupleValues, removed instantiation macros for Values and TupleValues 2011-11-17 22:44:46 +00:00
Alex Cunningham 96f77466c6 Removed need to include -inl.h for isam variants 2011-11-17 21:20:04 +00:00
Alex Cunningham ba22799b67 Removed unnecessary includes 2011-11-17 18:45:41 +00:00
Richard Roberts e6a43d6330 (in branch) Dogleg in ISAM2 in progress 2011-11-12 21:19:46 +00:00
Alex Cunningham bdc2d8f996 Fixed switching to QR for constrained graphs 2011-11-10 19:44:03 +00:00
Alex Cunningham 0fe13ae3ca Fixed noisemodel compile error, moved remaining nonlinear constraints to NonlinearEquality 2011-11-10 02:05:03 +00:00
Alex Cunningham 98410ca5c9 Merge branch 'unified_constraints'
Conflicts:
	gtsam/linear/NoiseModel.cpp
	gtsam/linear/NoiseModel.h
	gtsam/linear/tests/testNoiseModel.cpp
2011-11-09 22:15:40 +00:00
Richard Roberts 716c5175ab Quaternion implementation of Rot3, made default with GTSAM_DEFAULT_QUATERNIONS 2011-11-09 01:40:20 +00:00
Richard Roberts 3cd3a06eb7 Unit test bug fix - wasn't a rotation matrix 2011-11-09 01:39:18 +00:00
Alex Cunningham d340e556b5 Fixes due to bad merge 2011-11-07 21:16:26 +00:00
Alex Cunningham 8592e6b2c6 Renamed LieValues, changed Lie interface 2011-11-07 20:23:20 +00:00
Alex Cunningham 42a3963c7e Merge branch 'master' into retraction_name 2011-11-06 19:40:48 +00:00
Alex Cunningham 5798868ab7 Changed LieValues->Values. Did not change Values typedefs in slam domains, just adjusted namespaces 2011-11-06 19:08:42 +00:00
Richard Roberts 26dd292872 Enabled DogLeg unit test and made DogLeg verbose printing controlled by a flag 2011-11-06 18:26:47 +00:00
Alex Cunningham 4284f07a61 Updates to dogleg to work with newer Lie/Manifold/Group interface 2011-11-05 23:01:50 +00:00
Alex Cunningham 1ec7d7e86e Merge branch 'master' into retraction_name 2011-11-05 23:01:48 +00:00
Alex Cunningham 2b9a3db085 Added Group concept, reworked naming and conventions to reduce unnecessary functions 2011-11-05 23:01:43 +00:00
Richard Roberts 53dfa5dbb9 Merging Dogleg into trunk 2011-11-05 21:29:02 +00:00
Alex Cunningham 97a82add25 make check for entire library now works 2011-11-04 21:44:34 +00:00
Frank Dellaert 28415ee219 Added EQUALITY for MATLAB tests 2011-11-04 00:27:43 +00:00
Frank Dellaert cbd6446bd7 Wrapped KalmanFilter and tested it in MATLAB 2011-11-04 00:27:02 +00:00
Richard Roberts 5408ab0a2d Made GaussianFactorGraph::sparse and sparseJacobian functions take no arguments, and instead compute column indices internally 2011-10-29 23:12:58 +00:00
Richard Roberts eb8fb31b2a VectorValues documentation and interface cleanup, additional unit tests and bug fix. 2011-10-29 18:53:08 +00:00
Frank Dellaert 65616dbde5 Matrix version of sparseJacobian for MATLAB wrapping, unit-tested in linear now 2011-10-29 04:01:03 +00:00
Richard Roberts c120ee93f6 Added unit tests for higher-ary NonlinearFactors 2011-10-26 02:07:35 +00:00
Richard Roberts 2c53df3ee7 Simplified VectorValues interface and implementation, slight simplification to Permuted<> 2011-10-26 02:04:06 +00:00
Frank Dellaert 7c55724ddd Doxygen 2011-10-22 19:57:36 +00:00
Manohar Paluri 5016ca4f25 Added determinant function to GaussianBayesNet and added a unit test 2011-10-21 21:45:40 +00:00
Frank Dellaert 8535b13809 Made error a method again: all checks, let me know if project throw errors 2011-10-21 05:36:30 +00:00
Frank Dellaert ce5751e454 Moved test here from gtsam_experimental, as now works 2011-10-21 05:35:30 +00:00
Alex Cunningham 3b5c6e8cef Removed old Testable base class 2011-10-20 02:11:28 +00:00
Frank Dellaert 56d1d6ae34 Fixed some Doxygen problems with global replace 2011-10-14 03:23:14 +00:00
Richard Roberts af3c12a7df Implemented N-way factor base class in NoiseModelFactor, added NonlinearFactor{3-6}, adapted NonlinearFactor1,2,3 and NonlinearConstraint1,2,3 to derive from NoiseModelFactor in a minimal way 2011-10-03 04:24:24 +00:00
Richard Roberts 63ca74e492 Fixed bug in multifrontal marginals caused by backwards permutations with LDL (seems to be an inconsistency in Eigen?). Added GaussianConditional constructor from any number of frontal and parent variables. Added several new unit tests on marginals. Fixed small bug in GaussianConditional non-const get_d_ and get_R_ functions that didn't account for multiple frontal variables. 2011-09-23 02:50:46 +00:00
Richard Roberts 222d5073b9 Relocated unit test 2011-09-23 02:48:34 +00:00
Alex Cunningham 4569bb41a3 Fixed serialization of stereo cameras 2011-09-12 15:30:31 +00:00
Richard Roberts 936ee6d9fd ISAM2 refactoring and documentation 2011-09-07 15:42:49 +00:00
Frank Dellaert b614f6bf42 header order 2011-09-03 04:47:43 +00:00
Frank Dellaert 04e41f8c38 Split off NoiseModelFactor (a NonlinearFactor with a NoiseModel) from NonlinearFactor (a Factor with dim, linearize, and symbolic methods). NonlinearConstraint derives from NoiseModelFactor. 2011-09-03 03:46:19 +00:00
Frank Dellaert 0c34b57b92 removed spurious typename 2011-09-02 13:53:36 +00:00
Richard Roberts 06fd0335cc ISAM2 parameters struct instead of function arguments and hard-coded values, also documentation improvement and refactored IndicesFromFactors 2011-09-01 21:53:57 +00:00
Stephen Williams b1c1b45aba Renamed Key and Values to have a common name between linear and nonlinear examples 2011-08-30 19:54:50 +00:00
Richard Roberts 059de23b6e Moved ISAM2 from inference to nonlinear 2011-08-30 17:15:50 +00:00
Duy-Nguyen Ta f45b1556ca typedef typename ... doesn't compile for me. Removing typename makes it work. 2011-08-29 19:22:11 +00:00
Stephen Williams 27d062a0f0 Fixed compile errors due to new SharedGaussian definition 2011-08-27 13:50:35 +00:00
Stephen Williams 82fdb0a5f8 Added ExtendedKalmanFilter class and easyPoint2KalmanFilter example 2011-08-27 12:28:47 +00:00
Yong-Dian Jian fd07d61a2e Add a robust noise model. Change SharedGaussian to SharedNoiseModel 2011-08-26 21:41:01 +00:00
Richard Roberts d329d06b77 (in branch) moved ISAM2 into main gtsam library 2011-08-18 18:06:35 +00:00
Frank Dellaert 964af8b21c Commented use of GTSAM_MAGIC_KEY 2011-08-18 13:18:26 +00:00
Alex Cunningham 778001f63e assorted cleanup - mostly comments and adding implementations to cpp files, rather than in header files 2011-06-13 20:01:58 +00:00
Alex Cunningham 322f61c537 added flags for dataset timing tests to change the number of trials 2011-06-13 17:14:24 +00:00
Alex Cunningham fa4faa274a Merge branch 'prep_0.9.3' 2011-06-13 16:55:31 +00:00
Alex Cunningham 36f9ebae90 Removed files full of broken code, removed simulated2D matlab files, condensed slam unit tests, added the only known test for SPCG in gtsam 2011-06-04 20:42:29 +00:00
Alex Cunningham c4d9208eeb Added serialization for most linear/inference structures, simulated2D - serialization, except for example domains, should be complete 2011-06-04 16:52:54 +00:00
Richard Roberts 265b057580 Removed key sorting from NonlinearFactor 2011-06-04 14:54:27 +00:00
Alex Cunningham c44315fec8 Added more serialization - geometry is done, jacobian and hessian factors done, visual system done. Split projection factor out from visual SLAM into separate header 2011-06-03 21:32:27 +00:00
Alex Cunningham 9160775d2a Added nonlinear constraints to gtsam library 2011-06-03 15:07:11 +00:00
Alex Cunningham e9b8a48c43 ccolamd now installs and works with gtsam - all tests pass 2011-06-02 14:35:26 +00:00
Alex Cunningham 040493474f added more serialization 2011-05-20 18:43:42 +00:00
Alex Cunningham e20561be73 Merge branch 'eigen' 2011-05-20 13:52:08 +00:00
Alex Cunningham d35eb581ee Removed experimental cmake files - see the branch cmake_build 2011-05-19 19:16:03 +00:00
Yong-Dian Jian 85ff7853eb experimental cmake support for linux 2011-05-09 16:53:08 +00:00
Richard Roberts 5057138ef1 Returning GaussianFactor instead of JacobianFactor from NonlinearFactor::linearize and NonlinearFactorGraph::linearize, so that HessianFactors may be returned as well. 2011-04-12 21:18:10 +00:00
Richard Roberts f5eac05add Merged factorization branch - sequential and multifrontal factorization with a function argument to specify the elimination method 2011-03-29 21:32:22 +00:00
Richard Roberts 07820af903 Fixed crashes when doing linearize/solve on nonlinear factor graphs with NULL factors 2011-03-29 19:51:50 +00:00
Frank Dellaert 5c193422af Major change, elimination functions are now passed an "Eliminate function", so you can select at run-time which factorization method is used (symbolic, QR, etc...). 2011-03-24 19:27:12 +00:00
Alex Cunningham 726bed11b8 Removed exports for SharedGaussian and SharedDiagonal and moved them to testSerialization 2011-03-08 19:19:21 +00:00
Alex Cunningham fc3b668171 Removed boost.serialization export keys from noisemodel because they don't work outside of one test 2011-03-08 18:13:49 +00:00
Alex Cunningham 1c1e47ca1f Added serialization export keys directly to NoiseModel 2011-03-04 14:56:18 +00:00
Alex Cunningham a87a52035d Serialization for (some) nonlinear factors now works, added virtual destructors to factor classes that needed them. 2011-03-03 17:16:13 +00:00
Alex Cunningham cee6b4523e Improved serialization for noisemodel and NonlinearFactors, however currently fails on NonlinearFactorGraphs and some factors 2011-02-23 20:31:19 +00:00
Alex Cunningham 4865f1a64d Added more serialization functionality to noiseModel, but SharedGaussians segfault on test, so tests for Nonlinear graphs are commented out 2011-02-23 05:19:07 +00:00
Richard Roberts 1c27b1021f Removed incorrect dynamic_pointer_cast that caused a compile error for non-virtual derived factors. 2011-02-18 22:10:21 +00:00
Alex Cunningham d8f05f78ff Added marginal function to GaussianISAM, renamed and added comments to bayes tree 2011-02-11 22:08:07 +00:00
Alex Cunningham 7407843214 Reworked nonlinear optimizer so that it only uses a solver member variable if you are using spcg. SPCG may be broken at this point, and its member variable will be removed soon. 2011-02-10 16:01:29 +00:00
Alex Cunningham 06b08c6f85 Fixed bug with shared solvers in recursive LM nonlinear optimizer 2011-02-10 16:01:28 +00:00
Alex Cunningham 719e851643 Added a functional version of LM optimization for comparison 2011-02-06 04:13:32 +00:00
Alex Cunningham 251d83b41a Disabled unit test for serialization of Values, as FastMap does not have serialization 2011-02-04 05:45:42 +00:00
Alex Cunningham 37ee4f6cb3 Added a test for Ordering, added pop_back() to ordering, made changing the ordering in NonlinearISAM possible 2011-02-02 03:50:06 +00:00
Alex Cunningham e4cda1b360 Added accessor for NonlinearISAM, comments and whitespace 2011-01-29 00:53:15 +00:00
Richard Roberts 4880257e69 Merging hessianfactor branch, Cholesky is now default and GaussianFactor is virtual (see email to frankcvs) 2011-01-20 22:22:00 +00:00
Alex Cunningham 4367a245bd Added unit test for NonlinearISAM with a simple markov chain demo 2011-01-20 15:42:11 +00:00
Richard Roberts 880040a6f6 Added extra link libraries to examples and global tests required when building a static-only gtsam library 2010-12-29 03:25:52 +00:00
Richard Roberts 9edeb1102c Fixed bug in BayesTree shortcuts and marginals. Also added an input check to Permutation::PushToBack and PullToFront that catches the bad input of duplicate variables caused by the bug. 2010-12-21 18:23:56 +00:00
Richard Roberts a8a584d38e Rolling back last commit (undoing merge of hessianfactor branch) - does not compile on Linux, could be compiler or boost version problems. Also will probably break Alex's stuff so will work that out before merging. 2010-12-17 01:11:28 +00:00
Richard Roberts de1892016d Merged in hessianfactor branch, Cholesky is now default. This merge also includes improved timing statements with automatic outlining and low overhead 2010-12-17 00:51:51 +00:00
Richard Roberts a6fd5ff9e2 Removed unused inference-inl.h and testOrdering.cpp, added unit test for ordering with unobserved variables. 2010-12-09 01:34:20 +00:00
Kai Ni e726f7c7af remove backward compatible functions in NonlinearOptimizer 2010-11-21 22:00:22 +00:00
Richard Roberts 4e0b4021df Added prior on the first pose in time*OnDataset 2010-11-19 16:30:06 +00:00
Richard Roberts d6929d4409 Storing variable index in solver, saved between nonlinear iterations 2010-11-15 23:01:50 +00:00
Alex Cunningham 15310ed6ad Added fix to make TupleConfig1 work 2010-11-06 17:35:47 +00:00
Richard Roberts 898ca38f1c Removed unmatched timing statement, reduced default trials in timing scripts 2010-11-03 22:52:24 +00:00
Richard Roberts 60e10d7380 Added timeSequentialOnDataset and timeMultifrontalOnDataset, removed timeLinearOnDataset 2010-11-03 22:35:02 +00:00
Kai Ni 448ada270a create n-way factor, return keys from nonlinear factor graph 2010-10-30 19:27:30 +00:00
Alex Cunningham 201b16dabe Added more print statements for timing 2010-10-29 15:00:57 +00:00
Richard Roberts 3743342534 Standardized function names - marginalFactor, marginalFactorGraph, marginalCovariance 2010-10-25 22:45:45 +00:00
Richard Roberts 2c90e3d836 Moved the subdirectories that compile into libgtsam.la into a 'gtsam' subdirectory. Hopefully a good fix for the problem we had trying to make a gtsam distribution, that the source directory may not be called 'gtsam'. 2010-10-25 20:10:33 +00:00
Richard Roberts fda11d7c15 Extra unit test to check that marginals from sequential and multifrontal are the same 2010-10-22 22:53:33 +00:00
Richard Roberts 8ff5bf5c7c Bug fix in BayesTree marginal, re-enabled joint and unit tests 2010-10-22 22:11:23 +00:00
Chris Beall 69c6d05ce1 config() changed to values() for consistency 2010-10-22 19:29:15 +00:00
Richard Roberts f9e0ed07a3 Code cleanup: lean and mean VariableIndex (got rid of different types for different FG's, slots, and storage template), renamed Conditional.h and Factor.h to match class names ConditionalBase and FactorBase (not ideal names but prevents conflict with typedefs), added typedef for symbolic multifrontal solver. 2010-10-22 18:02:55 +00:00
Richard Roberts 1d94dacca0 make check passes with dense qr using lapack geqrf 2010-10-22 03:51:10 +00:00
Richard Roberts 812e3277ee New linear solver interface, global inference functions removed. 2010-10-21 22:59:54 +00:00
Richard Roberts f15fea202e Change that may be reverted again soon - templated factor base type on key and make IndexFactor and IndexConditional for all current code. Did this to experiment with using symbols on the linear side in an efficient way but am putting this on hold for now because of complications. Will revisit and either fix or revert to int-only later in the week. Also moved some files to experimental and templating EliminationTree on FACTOR instead of FACTORGRAPH. 2010-10-19 21:31:13 +00:00
Chris Beall 4071d4f673 small change to make boost work properly 2010-10-18 21:44:38 +00:00
Richard Roberts 4a7b8bad27 --with-boost no longer required, automatically finding boost 2010-10-17 17:06:28 +00:00
Alex Cunningham a9a066aec7 Removed hard constraints from gtsam library (with the exception of NonlinearEquality) and moved them to gtsam_experimental and MastSLAM 2010-10-17 03:56:05 +00:00
Kai Ni bc36e653fd depend on external CCOLAMD and DenseQR 2010-10-16 01:55:47 +00:00
Richard Roberts 130d9d2797 Made EliminationTree generic, with Symbolic and Gaussian unit tests 2010-10-15 15:53:36 +00:00
Kai Ni 24d499039f prepend license information on all the codes 2010-10-14 04:54:38 +00:00
Kai Ni 5cbf67eeba move colamd and spqr_mini out of gtsam 2010-10-14 02:41:08 +00:00
Richard Roberts 47b11749fe Moved old elimination tree to gtsam_experimental 2010-10-13 22:07:52 +00:00