Commit Graph

7871 Commits (a4aa7b9f45cc2dae6f74016b03344bbeaa00972c)

Author SHA1 Message Date
dellaert c32d2bb3b2 Fixed comments 2014-10-18 23:48:51 +02:00
dellaert 2f61653316 Fixed comments 2014-10-18 23:44:35 +02:00
dellaert d436d99146 Moved stuff to Manifold.h 2014-10-18 23:25:25 +02:00
dellaert fcda501ee2 double as manifold. No more LieScalar ! 2014-10-18 18:13:33 +02:00
dellaert ed6a2b6eff Charts !!!! 2014-10-18 17:11:28 +02:00
dellaert 9c97b1d8a0 Some more refactoring 2014-10-18 16:45:04 +02:00
dellaert 66b3081603 localCoordinates and retract 2014-10-18 15:02:22 +02:00
dellaert 10cfd47404 TangentVector meta-function 2014-10-18 14:29:40 +02:00
dellaert ec69949f43 Point2 specialized 2014-10-18 14:22:01 +02:00
dellaert f08dc6c031 More boost-style traits 2014-10-18 14:16:24 +02:00
dellaert 4c33444415 Snavely tested 2014-10-18 13:16:44 +02:00
dellaert bdf12b14b9 Add Snavely cost function 2014-10-18 12:35:02 +02:00
dellaert 7018afdd58 Slight refactor of numerical derivatives 2014-10-18 12:34:05 +02:00
dellaert 2972671064 Use boost::bind to avoid code duplication 2014-10-18 12:29:14 +02:00
dellaert db037c96c5 Implemented manifold_traits to allow numerical derivatives wrpt Matrix arguments 2014-10-18 12:12:25 +02:00
dellaert 2cbba15573 ceres style functor 2014-10-18 00:29:18 +02:00
thduynguyen 367c023127 Merge remote-tracking branch 'origin/develop' into develop
Conflicts:
	gtsam/geometry/Cal3DS2_Base.h
2014-10-17 17:49:21 -04:00
thduynguyen b4763ea83a Merged in feature/RevertConstraintNoiseHack (pull request #21) 2014-10-17 17:29:14 -04:00
Andrew Melim 8cd17f6a30 Updating nonlinear params to allow selection of orderings 2014-10-17 15:50:13 -04:00
Luca 5995b20ebe fixed test 2014-10-17 15:48:20 -04:00
thduynguyen a61b49dafa remove augmented parts in constraint noise model hack 2014-10-17 15:25:40 -04:00
Luca e96ceb2b4f extended example for robust kernels 2014-10-17 14:58:45 -04:00
Luca c10993a690 displaying nr of iterations for verbosity = TERMINATION 2014-10-17 14:58:45 -04:00
Jing Dong f258bfe044 add DerivedValue test for Cal3Unified 2014-10-17 14:44:37 -04:00
Jing Dong cdc121cf7d add in testSerialization 2014-10-17 14:25:42 -04:00
Jing Dong 55bda50235 move calculation of Cal3DS2 to base class, all unit tests passed and hopefully fix issue of DerivedValue 2014-10-17 13:35:30 -04:00
thduynguyen b0d95c0a36 check if a JacobianFactor has a dual variable 2014-10-17 13:31:35 -04:00
thduynguyen 4be24f4f70 add adjointMap and expmap/logmap derivatives for Pose2 2014-10-17 13:30:57 -04:00
Jing Dong b4c62969d1 move calculation of Cal3DS2 to base class, all unit tests passed and hopefully fix issue of DerivedValue 2014-10-17 13:30:43 -04:00
thduynguyen 8722c9cf68 small comment 2014-10-17 13:30:32 -04:00
dellaert 02d25f6658 New tests on traceSize 2014-10-16 15:07:05 +02:00
dellaert 0bcca2c386 Drastic reduction in allocations at ExpressionFactor construction by having dims constructed imperatively, and using it for both keys_ and dimensions_ 2014-10-16 14:16:58 +02:00
dellaert 944422e295 Only ExpressionFactor needs dimensions! Also, add dimensions at construction -> speeds up linearize. 2014-10-16 11:15:47 +02:00
dellaert 3413b98331 New storage sizes 2014-10-15 14:30:36 +02:00
dellaert 5bcc3d922c Just always store transpose? Problem with optional was that the *empty* optional was copied from the Values, so we gained nothing.
However, this is expensive space-wise (double), and optimizes for a particular usage of Rot3, so does not seem good practice (see stack overflow discussion, as well). But the alternative is cumbersome.
2014-10-15 14:28:47 +02: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 4a854f7e22 No using namespace in headers 2014-10-15 11:01:27 +02:00
dellaert 898c06ccbb New multi-threaded, realistic SFM example (1M factors, not 1M calls on same factor) 2014-10-15 11:01:02 +02:00
dellaert 79ff0c54f9 createUnknowns 2014-10-15 10:38:54 +02:00
Andrew Melim 103ec596d7 Remove empty file and some code cleanup 2014-10-15 00:03:57 -04:00
Andrew Melim 99caf8833a Finished ordering implementation 2014-10-14 23:46:12 -04:00
dellaert 00d0a7b045 Merge branch 'feature/BAD_stackAb' into feature/BAD 2014-10-15 01:20:01 +02:00
dellaert 649478f186 Should work but seg-faults 2014-10-15 01:19:14 +02:00
Andrew Melim ad74a4b8c9 Update ms_stdint.h in metis. Export libraries correctly 2014-10-14 19:14:59 -04:00
dellaert 9b1c9bbf37 Allocate temporary matrix on the stack rather tahn on heap, and give VerticalBlockMatrix a view on it. 2014-10-15 00:56:06 +02:00
dellaert c88b2a5902 Fixed bizarre link erro as well as off-by-1 bug 2014-10-15 00:34:28 +02:00
dellaert 0f055f7910 Pass matrix to VerticalBlockMatrix constructor 2014-10-15 00:28:53 +02:00
dellaert 2092705d12 Allow for other Eigen matrix types 2014-10-15 00:27:43 +02:00
krunalchande cf4374563b Fixed Dynamics Factor and added debug cout statements to help fix indeterminent linear system exception 2014-10-14 18:08:26 -04:00
dellaert 625b939b66 Another very significant speed-up of reverseAD pipeline, by template specialization of the leaf case for fixed matrices. Unfortunately, while this sped up reverse AD for our SFM kernel by 300%, reverseAD was only 6%, and is now 2% of total time. So, time to look elsewhere.
Oh, and, it is clear that the Identity matrix for Leaf only expressions is completely known at compile time: Eigen::Matrix<double, T::dimension, T::dimension>::Identity(). That should nicely speed up many a PriorFactor (replacement).
2014-10-14 23:40:21 +02:00