Commit Graph

122 Commits (f4bcb11ec63130042b35048bd9ff7ffd17008f22)

Author SHA1 Message Date
Frank 3394e85ef7 Now allows for a flag to compile Point3 as derived from Vector3 2016-02-08 17:34:42 -08:00
dellaert 27405fc185 renaming variables 2016-01-28 01:26:57 -08:00
Duy-Nguyen Ta bc99c58226 fix Rot3-from-Matrix construction for Quaternion case 2015-09-17 17:44:00 -04:00
Frank Dellaert 2deac4b88f Some fixed-size optimizations, some const. Save a quaternion->matrix conversion in transform_from. 2015-07-19 18:54:59 -07:00
Frank Dellaert 6b037ea492 bearing test 2015-07-11 18:32:10 -07:00
Frank Dellaert 58a280c672 Bearing 2015-07-11 16:56:31 -07:00
Frank Dellaert ecfa459590 Use consistent check and refactored to avoid sqrt 2015-07-05 15:40:42 -07:00
dellaert 22ff9b6aef Made retract etc take Fixed vectors in poses 2015-05-26 00:10:03 -07:00
Abe 13a4da21b2 misc bugfixes and cleanup from skydio 2015-05-13 22:26:24 -07:00
dellaert 9955610ea4 Back to compile flags 2014-12-26 00:19:59 +01:00
thduynguyen 2aaa7e7564 fix degenerated cases in Pose3's ExpmapDerivative. testPose3 passed. 2014-12-25 16:59:11 -05:00
dellaert 47ff09f6c8 Pose3 lost its mojo! But there are errors in Expmap/Logmap derivatives around identity... 2014-12-25 19:43:32 +01:00
dellaert b5c5a268a7 Merge remote-tracking branch 'origin/develop' into feature/tighteningTraits
Conflicts:
	gtsam/geometry/Pose2.h
	gtsam/geometry/Pose3.cpp
	gtsam/geometry/tests/testPose3.cpp
2014-12-25 18:16:30 +01:00
thduynguyen 65bbb5e12d use static free function and fix comments 2014-12-25 09:07:21 -05:00
thduynguyen 5ae9f19de2 unify duplicated code 2014-12-24 14:08:08 -05:00
thduynguyen ea80e36b24 Pose3 [Expmap/Logmap]Derivative 2014-12-24 14:01:16 -05:00
dellaert c6ae119414 Tightened what is needed for Lie, i.e., fewer versions of retract/localCoordinates 2014-12-22 23:42:52 +01:00
dellaert 99a50a2f87 Split up concepts into Group/Manifold/Lie/VectorSpace. Also fixed some implementations and put in exceptions elsewhere, rather than CONCEPT_NOT_IMPLEMENTED macro. 2014-12-22 02:50:52 +01:00
nsrinivasan7 bd6f210b87 changed << to =. gives error because range() was removed from PinholeCamera.h ? 2014-12-04 09:36:00 -05:00
dellaert fcfd232639 Added tests, everything checks out 2014-12-04 12:28:12 +01:00
dellaert cc96529eb6 Sanitized Matrix typedefs and constants a la Eigen 2014-12-04 10:41:09 +01:00
Natesh Srinivasan aad0b2876b Changed Matrix.h to correct return values amd impleemnted rectangular matrix types.
Also changed block operations to <<
2014-12-03 15:16:55 -05:00
nsrinivasan7 deff8b1e25 fixed the (*) to -> and code some more code beautification. 2014-12-03 11:27:18 -05:00
nsrinivasan7 7116661a2e changed naming convention of const matrices to _DxD. @dellaert 2014-12-03 10:58:09 -05:00
Natesh Srinivasan 4e557d38e6 updated Matrix.h with commonly used matrices. 2014-12-03 09:59:10 -05:00
nsrinivasan7 595afb51fe fixed Rot3(). @dellaert, I will do the '->', Identity(), setZero() etc . once I am fully done with geometry. 2014-12-01 18:20:03 -05:00
nsrinivasan7 1b2d86929a partially fixed Pose3(). Also adressed some of frank's comments from previous commits 2014-12-01 15:52:30 -05:00
dellaert 6505e602d8 FixedRef is now OptionalJacobian 2014-11-28 17:14:26 +01:00
dellaert 1e4905ef04 Now use new FixedRef type in all methods that I used fixed-sized matrices in to develop Expressions. All copy/paste bloat is now gone, and boost::none arguments are back. 2014-11-28 01:56:28 +01:00
Richard Roberts aa093a35da Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
dellaert b21db08ec1 Fixed small issue, should not assign to reference in case of Quaternions. 2014-11-02 13:03:36 +01:00
dellaert c4bf680e96 Cached Rot3::transpose(). Inspired by @cbeall3 fix of Unit3, I realized that with one million points and 1000 cameras, the same Matrix3 (R_.transpose()) was computed a 1000 more times than needed. Especially with quaternions this would be expensive, even with Rot3Q. 2014-10-15 11:51:41 +02:00
dellaert b704b7b1a1 Faster versions 2014-10-07 19:34:45 +02:00
dellaert ea40de6758 Fixed Jacobian versions 2014-10-06 21:37:05 +02:00
dellaert 930c77642e Made tarnsform_to derivatives about twice as fast. Biggest culprit is still malloc. 2014-10-06 12:12:54 +02:00
jing 5e9540470a modified Vector_() in gtsam/base and gtsam/geometry folders 2014-01-23 01:17:07 -05:00
Richard Roberts 880d9a8e3c Switched to new Eigen built-in special comma initializer 2013-12-16 21:33:12 +00:00
Jing Dong e4d56df32e Fix Matrix_(...) to Mat() <<… 2013-11-14 05:39:29 +00:00
Frank Dellaert 752a9877c5 Reformatted with new style file, renamed some derivatives to Dcal, Dpose, Dpoint etc. 2013-10-12 05:13:36 +00:00
Frank Dellaert 1251ba9abb ostream << operator 2013-06-06 01:21:34 +00:00
Duy-Nguyen Ta 104ad15e91 Separate adjointMap, which returns a matrix, and adjoint+adjointTranspose actions on a vector with optional derivatives. Also, change dExpInv_TLN to dExpInv_exp with higher order of approximation 2013-04-29 21:22:33 +00:00
Alex Cunningham 26f5f93c60 Added Pose3::align() for labeled correspondences. Fixed depreciated make targets. 2013-04-29 18:06:33 +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
Duy-Nguyen Ta 96f9ecaf53 Change "adjoint" and "adjoint_map" to Adjoint and Adjoint_map, since they correspond to Lie group's Ad operator. Implement the Lie algebra's adjoint operator, aka Lie bracket, and the inverse right-trivialized tangent map of the exponential map using the trapezoidal Lie-Newmark scheme, as detailed in [Kobilarov09siggraph] 2013-04-21 05:50:07 +00:00
Frank Dellaert 620583f3c3 Pose3::between now 4 times faster (in Debug, did not test in Release) 2013-04-05 06:44:16 +00:00
Chris Beall 4297d24c96 changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
Frank Dellaert 747342ffda Changed some printing details, prompted by MATLAB display 2012-07-02 15:01:28 +00:00
Chris Beall d95e1738d4 fixed size improvements for significant speedup in LBA 2012-05-09 17:19:01 +00:00
Chris Beall 1623b8ce12 converted Rot3M to fixed-size Matrix, and changed some methods elsewhere to return fixed-size Vector3 to avoid heap allocations for speedup. 2012-04-11 06:46:19 +00:00
Frank Dellaert c75f7ead65 explicit retract versions for calling in MATLAB 2012-01-10 20:23:48 +00:00
Frank Dellaert 659e524fa0 Constructor from Pose2 2012-01-10 05:05:36 +00:00
Richard Roberts f2638b2c0c Fixed names of coordinates modes in Rot3 and Pose3 2012-01-08 21:25:29 +00:00
Richard Roberts 4f59f58cd1 retract and localCoordinates optional argument in Pose3 to switch between different math versions, and unit testing all versions 2012-01-08 20:43:17 +00:00
Frank Dellaert 651259e26b Added comment and sped up both Logmap (by a little) and localCoordinates (by more, esp. in combination with unrotate improvement) 2012-01-07 21:12:40 +00:00
Frank Dellaert e6382c7ec0 Fixed major problem with Pose3 retract. All retractions have to have exactly the same derivatives as the exponential map. Hence, it should never make sense to have to match derivaties with a retract version. I deleted all "wrong" derivatives and pushforwards. Finally, CalibratedCamera had to be modified as well as it hardcoded the wrong derivative of transform_to (for efficiency). It now simply implements the chain rule. 2012-01-05 16:45:52 +00:00
Frank Dellaert 53946b28d0 Fixed calls of adjointMap and tested correct exponential map derivatives based on them 2012-01-04 14:23:50 +00:00
Alex Cunningham 4b4815e97f Added more functions to wrap, started going though wrap tests 2011-12-01 18:57:32 +00:00
Alex Cunningham a7ea0f4e04 Formatting and comments, adding Rot3 and Pose3 to matlab interface 2011-12-01 01:59:34 +00:00
Alex Cunningham cc858224aa Comments only - broken parts in Pose3 correct expmap 2011-11-26 22:28:45 +00:00
Alex Cunningham af9320e468 Cleaned up commented code 2011-11-10 15:19:04 +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 2b9a3db085 Added Group concept, reworked naming and conventions to reduce unnecessary functions 2011-11-05 23:01:43 +00:00
Alex Cunningham 07aaf38245 Geometry passes tests with newer interfaces and more concept checks 2011-11-04 21:44:29 +00:00
Alex Cunningham b22a39e663 Cleaned up use of concept checks in generic factors 2011-10-15 18:38:51 +00:00
Alex Cunningham c6e2547dad Added concept checking for "Poses", and made both Pose2 and Pose3 comply 2011-10-06 20:47:30 +00:00
Alex Cunningham 541c1085db Added a range to pose function for Pose3 2011-10-06 20:47:23 +00:00
Alex Cunningham e20561be73 Merge branch 'eigen' 2011-05-20 13:52:08 +00:00
Richard Roberts 1a94808f57 Tightened thresholds in Rot3, Pose3, Rot2, Pose2, that were "correcting" numbers to zero and one with too loose tolerance. This made it necessary to specify large steps for numerical derivatives (1e-2 instead of the default 1e-5). Fixed this, and updated unit tests to use the default step size. 2011-04-08 18:41:50 +00:00
Alex Cunningham 8398c8a53d Made versions with [expmap|logmap]Full() for Pose2 and Pose3 to allow access to complete expmap functions, while also allowing for the concurrent existence of the approximate expmap for optimization speed 2011-02-02 05:17:21 +00:00
Alex Cunningham 120b6878cf Fixed range function for Pose3 2011-01-13 17:09:29 +00:00
Alex Cunningham 6348a33165 Added range measurement function to Pose3 2011-01-12 19:31:04 +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