Commit Graph

559 Commits (a4d61d2f237e4278fdfda8c3b7cd548a9f6de7b0)

Author SHA1 Message Date
Richard Roberts aa2aa4149c Special case for trace==1 in Rot3 logmap 2010-01-10 23:36:37 +00:00
Richard Roberts b0fd5396ad Bug fix in Rot3 for logmap(identity) 2010-01-10 22:58:30 +00:00
Richard Roberts 1dcc864d97 Comment cleanup to /** style and adding global print functions 2010-01-10 22:41:23 +00:00
Kai Ni 78a579a24a add the missing #pragma once 2010-01-10 22:15:34 +00:00
Viorela Ila f8be2c2626 dim, expmap, logmap works 2010-01-10 21:53:38 +00:00
Frank Dellaert 64eca2d550 addConstraint 2010-01-10 19:25:19 +00:00
Frank Dellaert d11b2e6bd5 Added omitted headers 2010-01-10 18:37:55 +00:00
Richard Roberts 88ae5380a8 Removed Vector-specific versions of NumericalDerivative, instead Vector is now a Lie object 2010-01-10 18:23:47 +00:00
Frank Dellaert 1a96ef41cf Created Pose3Config, Pose3Graph, and tested loop closure optimization. 2010-01-10 18:21:20 +00:00
Frank Dellaert 2fe02dbaa7 Moved optimization tests to testPose2Graph 2010-01-10 18:20:10 +00:00
Richard Roberts edb68b3b60 Fixed typo in LieConfig expmap(Vector) 2010-01-10 17:48:55 +00:00
Richard Roberts 33ba34a1f6 Minimized headers included in Lie.h, removed print from testLieConfig 2010-01-10 17:26:44 +00:00
Frank Dellaert 8d84078036 Loop closure tested 2010-01-10 17:02:49 +00:00
Frank Dellaert 12caabb667 Method to add a factor without having to do shared factor dance 2010-01-10 17:02:35 +00:00
Frank Dellaert 120f1301c2 operator[] 2010-01-10 17:01:48 +00:00
Frank Dellaert 710bce5cc4 Pose2Config is now simply a typedef (note that for linking specific template instantiations were needed). 2010-01-10 16:17:55 +00:00
Frank Dellaert 4a21fb9387 Fixed 2nd expmap template, which now creates a VectorConfig and calls the first template 2010-01-10 16:16:03 +00:00
Frank Dellaert 65e4dc1342 pose2Circle 2010-01-10 15:46:18 +00:00
Frank Dellaert 43b2facd10 Now Pose3Config == LieConfig 2010-01-10 14:59:39 +00:00
Frank Dellaert 92c58e50a1 Small changes, mainly const correctness 2010-01-10 14:59:22 +00:00
Frank Dellaert c957672656 Small to change to work well with LieConfig 2010-01-10 14:55:19 +00:00
Frank Dellaert 794ffd3b2f Fixed significant bug in Pose2Factor, where we forgot to multiply the error with the square root inverse covariance. 2010-01-10 13:55:55 +00:00
Frank Dellaert 8061f29ec5 added test clarifying Ax-b \approx h(x)-z 2010-01-10 13:54:34 +00:00
Frank Dellaert f1f21a8589 inverted sign of square root to make inv sqrt positive for simple covariance matrices 2010-01-10 13:53:31 +00:00
Frank Dellaert bf315781af defined global functions in Lie.h rather than here 2010-01-10 12:35:41 +00:00
Frank Dellaert 6bcb9d08d6 Unit tests for correct "Agrawal06iros" versions: they are indeed correct. 2010-01-10 12:26:31 +00:00
Frank Dellaert 30367e35fb Much faster compund rotation using Justin's (indeed correct) formula 2010-01-10 12:25:46 +00:00
Frank Dellaert d5eade62ef Moved expmap and logmap to .cpp, also tested correct "Agrawal06iros" versions, and they are indeed correct (see testPose3). 2010-01-10 12:24:31 +00:00
Frank Dellaert ec1b57ed08 Added Lie required functions (trivial) for Vector. Not in Vector.h as this becomes circular. 2010-01-10 12:22:59 +00:00
Richard Roberts 4fa53a1f79 Merging lieconfig branch - LieConfig works but currently requires Lie objects to have a global print function. 2010-01-10 06:35:16 +00:00
Kai Ni 6a7987fa91 fix Pose2Prior problem and adding prior factor when splitting factor graph 2010-01-09 23:39:11 +00:00
Richard Roberts 2b82ff65e7 Deriving Lie objects from a base class Lie<T>, which provides member functions to access global functions, for use in MATLAB. 2010-01-09 23:15:06 +00:00
Kai Ni d015b31799 more meaningful error messages for matrix operations 2010-01-09 07:06:29 +00:00
Frank Dellaert cc358fb2ce removed print statements 2010-01-09 02:37:58 +00:00
Frank Dellaert 5fbb820341 fixed comments and tolerances 2010-01-09 02:27:49 +00:00
Frank Dellaert 6851b31fad Added static methods to construct rotations, coded up convention for yaw-pitch-roll, modernized RQ 2010-01-09 00:03:47 +00:00
Kai Ni d4f92c7bb6 pass FactorGraph as reference into split 2010-01-08 20:27:10 +00:00
Kai Ni 06b7f8ee04 add split to FactorGraph 2010-01-08 19:07:46 +00:00
Frank Dellaert 5dc237eeea BetweenFactor is a template that models the measurement between two Lie types e.g. Pose2 or Pose3. Pose2Factor and Pose3Factor are now simply typedefs. 2010-01-08 15:32:45 +00:00
Kai Ni 215ff24d0f generate ordering by breadth-first-search, a lot faster than before 2010-01-08 04:12:23 +00:00
Frank Dellaert 8d22b3aca2 Just refactoring 2010-01-08 03:38:05 +00:00
Frank Dellaert f684becf1f Fixed Dbetween1 2010-01-08 03:06:03 +00:00
Richard Roberts 19a3e228d7 Large refactoring - made several Lie group functions global, which used to be member functions, to treat Lie groups more uniformly. Also created Lie.h, and a preprocessor flag in numericalDerivative to change the coordinate frame derivatives are reported in. gtsam and easylib build and pass unit tests, but this will probably break other projects, which will require a few small changes to work again. Email coming in a few minutes to describe the changes. 2010-01-08 00:40:17 +00:00
Kai Ni a845b3d30a generate ordering from the spanning tree 2010-01-07 08:00:54 +00:00
Kai Ni 6298a45050 use prim algorithm instead of kruskal for finding MST, which yields the parent map. 2010-01-07 06:25:54 +00:00
Alex Cunningham 20c6f29823 Moved control-related components to separate library 2010-01-06 20:01:34 +00:00
Frank Dellaert b20ed42134 log and between 2010-01-06 19:29:41 +00:00
Frank Dellaert f77da96caf Modernized and tested RQ and added Rot3::ypr. Note this yaw-pitch-roll is different from ML version, which is focused on cameras. Let the fun begin... 2010-01-06 15:52:43 +00:00
Kai Ni 9845a5ae37 add findMinimumSpanningTree to FactorGraph 2010-01-06 11:15:37 +00:00
Frank Dellaert cd644e75a5 GaussianBayesNet::matrix now properly divides in sigmas 2010-01-05 14:14:49 +00:00
Frank Dellaert 22d66df766 added manifold test 2010-01-05 14:13:51 +00:00
Richard Roberts 39334ea9e0 Update MATLAB wrapper for earlier Pose2* changes 2010-01-04 18:07:24 +00:00
Kai Ni 46cc85e351 added size and clear to pose2config 2010-01-03 07:25:59 +00:00
Michael Kaess 052149771a relinearizing factors corresponding to contaminated cliques 2010-01-03 04:57:35 +00:00
Kai Ni cade0e7780 fix timing test linking problem by using noinst_PROGRAMS 2010-01-03 00:23:16 +00:00
Manohar Paluri 68159fb5e4 corrected SubgraphPreconditioner case 2010-01-02 20:24:59 +00:00
Frank Dellaert f82b46f96c Sped up rodriguez and replaced slow implementation with call to fast implementation. Also moved some functions to cpp. 2010-01-02 14:28:18 +00:00
Frank Dellaert a1c55b9f62 Updated Pose2Config to expected coding standard 2010-01-02 10:33:33 +00:00
Frank Dellaert ff06cd757f moved all "Urban" factors and tests to (cmake-based) CitySLAM project 2009-12-31 16:54:23 +00:00
Frank Dellaert a1d14ba2ae Added Bayes Net and Subgraph preconditioners to gtsam (developed in CitySLAM project) 2009-12-31 12:56:47 +00:00
Frank Dellaert 730f4a546f Added planar graph with easy subtree 2009-12-31 12:55:51 +00:00
Frank Dellaert 07cc95e4c4 Comments and formatting 2009-12-31 12:55:16 +00:00
Frank Dellaert eaa8176de1 correct behavior when entire columns are zero 2009-12-31 10:30:44 +00:00
Frank Dellaert 46a65d89df using ediv_ where needed 2009-12-31 10:30:06 +00:00
Frank Dellaert f7d5b517a4 ediv_ is same as ediv except returns 0 for 0/0 division, needed for dealing with constraints 2009-12-31 10:29:25 +00:00
Frank Dellaert 3fbc857a9e fixed behavior of error for sigma==0 2009-12-31 10:28:43 +00:00
Frank Dellaert 9b327d1a9d added reset 2009-12-31 10:27:39 +00:00
Frank Dellaert bf85f10de7 subtraction 2009-12-31 10:27:16 +00:00
Michael Kaess b4e65e9631 progress in ISAM2, but unit test still disabled 2009-12-31 05:35:08 +00:00
Richard Roberts afc3028ad5 Fixed bug in testPose2Factor optimize unit test where only the first expected value was checked. 2009-12-30 18:41:33 +00:00
Frank Dellaert 793a9d58ae Errors is now a list 2009-12-30 17:13:36 +00:00
Frank Dellaert f80ac5d7d5 backSubstitute functions (unit-tested in CitySLAM) for preconditioning 2009-12-30 17:13:24 +00:00
Frank Dellaert 2368f3605a getReference 2009-12-30 14:53:40 +00:00
Frank Dellaert 15bb00683a transpose backsubstitute on upper-triangular matrix 2009-12-30 13:20:16 +00:00
Michael Kaess 42fca8c399 nonlinear update, all but rhs/config 2009-12-30 04:27:14 +00:00
Richard Roberts 0b9451bc4b Initializing libtool correctly in gtsam (see email to frankcvs with same subject) 2009-12-29 20:01:38 +00:00
Michael Kaess 737a2f1e05 unit test enabled again and working 2009-12-29 14:54:45 +00:00
Frank Dellaert c43cd425ab new back-substitution functions that can do unit triangular solves 2009-12-29 13:59:34 +00:00
Michael Kaess 75ab62a729 ISAM2 (nonlinear ISAM) partially there, unit test currently disabled 2009-12-29 05:57:05 +00:00
Frank Dellaert 8d4a029665 rhs method 2009-12-28 18:46:01 +00:00
Frank Dellaert 543d3fcd65 System now a class (gradient is method) 2009-12-28 17:28:48 +00:00
Frank Dellaert 0c0b73042b template now exposed in iterative.h, and has its own implementation file 2009-12-28 16:26:16 +00:00
Frank Dellaert 5ac304aff3 correct convergence criterion, verbose flag 2009-12-28 16:15:26 +00:00
Frank Dellaert 674ae9d030 steepest descent now all implemented in iterative.h/cpp 2009-12-28 12:37:34 +00:00
Frank Dellaert bc27afc49f CGD method now uses CGD template in iterative.cpp 2009-12-28 10:48:48 +00:00
Frank Dellaert 863ee58c0f new iterative.h/cpp compilation unit 2009-12-28 09:56:58 +00:00
Frank Dellaert d9fd502656 moved CG tests from testGFG to testIterative 2009-12-28 09:44:30 +00:00
Frank Dellaert 1fac98b4cb Errors:dot, VectorConfig::operator*/-, as a result Conjugate Gradient Descent template now works for factor graphs 2009-12-28 08:15:09 +00:00
Michael Kaess 5dfd1921e1 template nightmare resolved, all tests working 2009-12-27 23:15:36 +00:00
Frank Dellaert 266fc56dea Gradient using new operator^ and errors method 2009-12-27 12:13:31 +00:00
Frank Dellaert 7d1428de60 Added Errors class and operator* for GaussianFactor and GaussianFactorGraph. Also moved a few functions to cpp. 2009-12-26 22:48:41 +00:00
Frank Dellaert 6614434b83 System version of CG 2009-12-26 21:25:45 +00:00
Richard Roberts 8d3918e7f9 Typo made testPose2Factor not build on Linux 2009-12-26 19:31:02 +00:00
Frank Dellaert f3965b07ca Conjugate Gradient Descent template (in progress) 2009-12-26 15:06:54 +00:00
Frank Dellaert 886c7dcdcc formatting and comments 2009-12-26 15:06:21 +00:00
Frank Dellaert 8dbf79706e commented out two broken tests 2009-12-26 15:05:55 +00:00
Michael Kaess 4403b51fcd isam functionality separated into ISAM class, still within BayesTree 2009-12-26 04:44:13 +00:00
Frank Dellaert 2cb52694b5 Multiply with transpose sugar A'*v = A^v 2009-12-25 17:52:58 +00:00
Michael Kaess 80ff7e6d26 uncommented urban In Makefile.am as it prevents linking; added Pose2Prior; ISAM2/planar now working 2009-12-24 23:44:08 +00:00
Richard Roberts 92b60a8543 Made 'between' derivatives in the tangent space of the solution instead of tangent space of identity, this makes Pose2 an "origin-free" manifold. 2009-12-21 16:43:23 +00:00