Commit Graph

1095 Commits (a4aa7b9f45cc2dae6f74016b03344bbeaa00972c)

Author SHA1 Message Date
Mike Bosse 1fadda83e0 removed DerivedValue<> inheritence from classes 2014-10-24 18:34:06 +02:00
Chris Beall eeb0293f27 Merged in feature/FixQuaternion (pull request #22)
Was quaternion (somewhat) broken ?
2014-10-24 09:53:50 -04:00
dellaert e7ec6b3fa5 Fixed size 2014-10-23 12:04:16 +02:00
dellaert 77e7f0437d Merge remote-tracking branch 'origin/feature/FixQuaternion' into feature/BAD
Conflicts:
	gtsam/geometry/tests/testRot3M.cpp
	gtsam/geometry/tests/testRot3Q.cpp
2014-10-23 10:03:10 +02:00
dellaert 845697555a Fixed tests for Quaternion mode but Pose3 not in EXPMAP mode 2014-10-23 09:52:35 +02:00
dellaert 49ff33602d Undid change 2014-10-23 01:44:04 +02:00
dellaert 0501750c7c Fixed accuracy and size issues in Quaternion mode 2014-10-22 22:54:25 +02:00
dellaert 48a6777935 Some refactoring 2014-10-22 16:26:40 +02:00
dellaert a29f09423c Merge branch 'develop' into feature/BAD
Conflicts:
	gtsam/linear/tests/testGaussianBayesNet.cpp
2014-10-22 13:56:27 +02:00
dellaert 0f53c8d5ec Timing of Ceres AutoDiff adaptor 2014-10-22 12:49:18 +02:00
dellaert f44e6f0187 Moved AdaptAutoDiff template in its own header file 2014-10-22 11:41:04 +02:00
dellaert 516bb4b0b1 Isolated Snavely example 2014-10-22 11:23:35 +02:00
dellaert 439f51ec7f test out invoke 2014-10-22 10:10:58 +02:00
dellaert 113b9d2e74 Got rid of unnecessary LieVector usage that broke fixed-code 2014-10-22 01:32:59 +02:00
dellaert 1eb5e185e5 New numericalDerivatives with traits an Charts - still some segfaults, *and* there should be no need for (a) multiple prototypes to match against c++ pointers, (b) the use of explicit template arguments. A task for someone... 2014-10-21 18:50:52 +02:00
dellaert fcbc1e90cf More traits 2014-10-21 18:03:28 +02:00
dellaert 224b71d696 Created testManifold 2014-10-21 12:54:28 +02:00
dellaert 0acffe5ae9 Fixed bug in DefaultChart: keeping a reference s never a good idea. 2014-10-21 11:13:14 +02:00
dellaert 25ad9ade05 Moved AdaptAutoDiff into its own test 2014-10-21 10:42:30 +02:00
dellaert bf16446f92 Deal with traits changes 2014-10-21 01:26:17 +02:00
dellaert e0841fb3e6 No more Ceres dependecy, copied relevant Ceres files here (for now) 2014-10-20 23:53:56 +02:00
dellaert bce84ca4db Successfully created Expression from AutoDiff function! 2014-10-20 15:38:27 +02:00
dellaert bf5580d518 AdaptAutoDiff now works with RowMajor Eigen matrices 2014-10-20 14:39:28 +02:00
dellaert df5e584412 Compiles, but Jacobains not correct yet 2014-10-20 14:32:20 +02:00
dellaert a423f284e9 Canonical coordinates prototype, works for Snavely 2014-10-20 14:23:08 +02:00
dellaert 821f776118 Wrapper works to some extent 2014-10-20 09:43:32 +02:00
dellaert 7ebc8e969f Charts with default constructors 2014-10-20 09:29:45 +02:00
dellaert 63ae33088e Some success on the way to autodiff 2014-10-19 23:47:59 +02:00
dellaert 8ee16c9018 Comments for Paul 2014-10-19 11:19:09 +02:00
dellaert eac76cd0f0 Some progress on defining interface 2014-10-19 11:18:36 +02:00
dellaert 6e142184cc Implemented is_manifold and dimension for all types in testExpressionFactor 2014-10-19 00:35:25 +02:00
dellaert c32d2bb3b2 Fixed comments 2014-10-18 23:48:51 +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
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 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
dellaert 649478f186 Should work but seg-faults 2014-10-15 01:19:14 +02: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 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
dellaert baaeaacabe Made dimensions constant property. Now performance is ***blazing***, way past custom factors. 2014-10-14 17:46:57 +02:00
dellaert c971207abf Switched to vector for dimensions 2014-10-14 17:16:31 +02:00
dellaert 1c3f328fb2 Successful switch to Blocks ! 2014-10-14 15:43:41 +02:00
dellaert f3e1561105 Prepare VerticalBlockMatrix for filling 2014-10-14 11:13:49 +02:00
dellaert 4c76f39009 Now uses dimensions 2014-10-14 09:55:34 +02:00
dellaert d8d94d0c34 dimensions implemented and tested 2014-10-14 09:53:47 +02:00
dellaert 781cc6daa9 keys now from expression_ 2014-10-14 08:59:01 +02:00
dellaert 0a41b0a027 Moved meta-programming tests to testExpressionMeta.cpp 2014-10-14 08:53:16 +02:00
dellaert ef5bf03c81 Clean up 2014-10-13 23:04:30 +02:00
dellaert 70f0caf0e3 Experimenting w Fusion 2014-10-13 22:50:47 +02:00
dellaert dda91df6e1 On the way to full fusion: Optional meta-function now separate from Jacobian. 2014-10-13 18:32:58 +02:00
dellaert ba0b68110f Boost Fusion needed to access values :-( 2014-10-13 13:56:51 +02:00
dellaert a52ff52941 Try some meta-transforms 2014-10-13 13:34:00 +02:00
dellaert 1c1695353e Now we can apply ExecutionTrace and Expression as meta-functions 2014-10-13 13:04:37 +02:00
dellaert c11d7885e1 Comments 2014-10-13 11:55:16 +02:00
dellaert 74269902d7 Big collapse now realized all the way through 2014-10-13 11:37:47 +02:00
dellaert da0e5fe52f The great collapse: instead of two recursively defined classes, there is now only one. The Record class is now a (recursive) inner class. 2014-10-13 10:50:05 +02:00
dellaert bc9e11f43c Pre-big collapse: prototype recursively defined inner Record2 type 2014-10-13 10:10:46 +02:00
dellaert 7fde47c48b No more JacobianTA typedefs -> all use Jacobian<T,A> now. 2014-10-13 09:25:06 +02:00
dellaert 7848d74928 Detailed explanation of recursive class composition pattern.
Jacobian type now defined in argument.
2014-10-13 08:49:12 +02:00
dellaert 7f621af54a Fixed bug 2014-10-13 00:57:11 +02:00
dellaert 2e8d868cd2 keys have been implemented 2014-10-13 00:37:46 +02:00
dellaert a9d9fcd241 FunctionalNode inherited for all three functional ExpressionNode sub-classes 2014-10-13 00:31:03 +02:00
dellaert 8100d89094 So much better as methods 2014-10-12 23:57:08 +02:00
dellaert 55cc4ba56c Switched names of fold result and meta-function that is folded over 2014-10-12 23:31:58 +02:00
dellaert ef21a4ba4a Major re-org in preparation of recursive Functional nodes 2014-10-12 23:03:33 +02:00
dellaert 408be628d2 Small change in meta-programming, big improvement in clarity 2014-10-12 22:17:21 +02:00
dellaert 107bcd8bb4 Going forwards, we default to reverse :-) 2014-10-12 22:04:40 +02:00
dellaert 4d1eb05c7d Passing JacobianMap as an argument now.. 2014-10-12 20:16:08 +02:00
dellaert dc541f1051 made traceSize an instance variable 2014-10-12 18:52:12 +02:00
dellaert 7a5f48f6dd Fixed typo in assert 2014-10-12 12:20:12 +02:00
dellaert fea2eb0b5f Inlined VerticalBlockMatrix construction 2014-10-12 11:05:43 +02:00
dellaert ed62271f81 Dealing with constrained noise model 2014-10-12 10:52:07 +02:00
dellaert 86d3e559e6 Merge branch 'feature/BAD' into feature/BAD_linearize 2014-10-11 23:07:40 +02:00
dellaert c9f80536c0 Added a constraint model 2014-10-11 23:07:23 +02:00
dellaert 3c6f7a42e6 Merge branch 'feature/BAD' into feature/BAD_linearize: easier trace/dTdA access 2014-10-11 22:31:43 +02:00
dellaert c776e87f78 Refactoring for readability/sanity 2014-10-11 21:33:07 +02:00
dellaert 0c7ea68f2f Now overwriting linearize as preparation for direct VericalBlockMatrix 2014-10-11 17:05:53 +02:00
dellaert 1bac83381f Merge remote-tracking branch 'origin/feature/BAD_meta' into feature/BAD: Now the Record structures are recursively generated using template meta-programming, basically mpl::fold
Conflicts:
	gtsam_unstable/nonlinear/Expression-inl.h
2014-10-11 15:20:12 +02:00
dellaert 88f9a423c5 Numbered types avoid ambiguity 2014-10-11 14:19:39 +02:00
dellaert ecf6462a25 Victory!! Unit tests work! 2014-10-11 13:07:58 +02:00
dellaert 599e232d1d traceSize, two tests work 2014-10-11 12:11:22 +02:00
dellaert 9585823d5d ...but works with correct size ! 2014-10-11 11:32:52 +02:00
dellaert deed7b8018 Unary prints, but still-faults downstream 2014-10-11 11:30:06 +02:00
dellaert 05f78b6dca Re-factor, allow traceExecution 2014-10-11 11:29:42 +02:00
dellaert 1f692638f5 Accessing matrices works 2014-10-11 11:04:39 +02:00
dellaert 69b69a0bc8 placement new works! And sophisticated Trace::print 2014-10-11 11:03:35 +02:00
dellaert eef2d49e8d First prototype, segfaults 2014-10-11 10:27:30 +02:00
dellaert e09e24964a No need to have all of T as template parameter 2014-10-11 09:00:03 +02:00
dellaert 820988b04e Do casting inside Trace 2014-10-11 08:52:24 +02:00
dellaert 52fc6f2db4 Testing old trace 2014-10-11 08:41:39 +02:00
dellaert 820e9553ee TestBinaryExpression friend 2014-10-11 08:17:46 +02:00
dellaert a2d2d82e0e some namespace management 2014-10-11 07:39:13 +02:00
dellaert 23485a0e71 New and consistent naming: ExecutionTrace = whole tree, CallRecord = local information left by the function. 2014-10-10 17:45:39 +02:00
dellaert 5cfe761f27 Timing multi-threaded code 2014-10-10 17:17:20 +02:00
dellaert ae93dd9869 Commented out repeated arguments 2014-10-10 13:57:37 +02:00
dellaert 58bbce482d Ternary works, same caveat 2014-10-10 13:33:13 +02:00
dellaert 406467e341 Binary works, but it's ugly and does not work for repeated types 2014-10-10 13:29:56 +02:00
dellaert 24714e48c5 Works for Unary ! 2014-10-10 12:38:26 +02:00
dellaert f8468bd596 Recursion done 2014-10-10 12:31:40 +02:00
dellaert 40fc6f5c03 Working prototype 2014-10-10 12:29:01 +02:00
dellaert dd1b931802 Successfully defined Jacobian 2014-10-10 12:03:13 +02:00
dellaert 732ff54b83 More experiments 2014-10-10 11:41:01 +02:00
dellaert 8e264f4289 Attempt at defining Trace recursively 2014-10-09 14:38:16 +02:00
dellaert 5e5457b390 Renamed entry point to startReverseAD to emphasize it is only called once 2014-10-09 13:42:43 +02:00
dellaert 563c4d214c Renamed BADFactor -> ExpressionFactor 2014-10-09 13:00:56 +02:00
dellaert 7e069191e5 Slight refactor 2014-10-09 10:58:46 +02:00
dellaert a38a0ae9e1 Some comments 2014-10-09 00:21:10 +02:00
dellaert 9ebe1e6d10 Super-speedup by specializing to 2-dimensional output (for now). Using some template magic. 2014-10-08 23:50:17 +02:00
dellaert 31c138d0d6 Profile Bin(Leaf,Un(Bin(Leaf,Leaf))) by default 2014-10-08 17:52:46 +02:00
dellaert abb92632b8 Empty derived destructors are not needed 2014-10-08 17:32:46 +02:00
dellaert 6a1bc6e242 Documentation 2014-10-08 17:28:33 +02:00
dellaert 4ac065fab4 Show explanation of timing 2014-10-08 17:27:46 +02:00
dellaert ce2dcaeb3b Tagged union, lightweight 2014-10-08 15:39:59 +02:00
dellaert 390842e1f7 Put Trace in front 2014-10-08 13:58:15 +02:00
dellaert ba9faa68b6 New Leaf/noise tests 2014-10-08 13:56:54 +02:00
dellaert d7022a21c7 More samples to average 2014-10-07 20:11:19 +02:00
dellaert c4a92acde1 Avoid argument temporaries 2014-10-07 19:35:44 +02:00
dellaert 84987aa351 Deal with Rot3 changes 2014-10-07 19:35:20 +02:00
dellaert 3c1c9c6d12 Switch to pointers - nice improvement 2014-10-07 18:11:12 +02:00
dellaert 982dc29d2f Time ternary version as well 2014-10-07 18:10:53 +02:00
dellaert e4392c0a3b JacobianTrace no longer templated 2014-10-07 16:11:55 +02:00
dellaert 83d77271d9 Ternary now fixed 2014-10-07 13:04:04 +02:00
dellaert 613cb0bb12 Binary functions now take fixed Jacobians 2014-10-07 01:01:46 +02:00
dellaert 921b79f446 No more default argument 2014-10-07 01:01:16 +02:00
dellaert 0a6fe0f0a8 No more default argument 2014-10-07 00:44:40 +02:00
Luca 7a4f307342 moved biasedGPS and GaussMarkov to unstable 2014-10-06 13:11:40 -04:00
dellaert e48b38ca21 Fixing uncalibrate (does not yet compile) 2014-10-06 15:45:26 +02:00
dellaert e5c3f4228a Some fixed size in UnaryExpression 2014-10-06 14:22:18 +02:00
dellaert 51eab1068f Time the most common SFM expression 2014-10-06 13:57:37 +02:00
dellaert 5c96b7f38d Made naming more suggestive of AD process rather than generic H1,H2... 2014-10-06 13:19:01 +02:00
dellaert 0ed96dda33 Avoid alloc and copy 2014-10-06 12:14:15 +02:00
dellaert c748fdb404 Re-did with move semantics. Dangerously imperative. 2014-10-06 12:13:52 +02:00
Sungtae An 69f74014aa add traceExecution in TernaryExpression 2014-10-05 17:40:11 -04:00
Sungtae An cc3c0fcfec add trace structure for reverse AD in TernaryExpression 2014-10-05 17:38:09 -04:00
Sungtae An 0421d05d44 add forward() in TernaryExpression 2014-10-05 17:36:53 -04:00
Sungtae An 0a7db2d252 Merge remote-tracking branch 'origin/feature/BAD' into feature/BAD 2014-10-05 16:16:19 -04:00
Sungtae An 40565564f5 TernaryExpression is added 2014-10-05 16:09:24 -04:00
dellaert 632810ff9a Now only inline add, for performance 2014-10-05 21:53:40 +02:00
dellaert 33c1d072a4 Add switch between inline add and JacobianMap as a new class. 2014-10-05 21:49:30 +02:00
dellaert 5b13306104 Split out starting the AD process vs. propagating it, is more efficient than starting with a useless identity matrix 2014-10-05 19:27:52 +02:00
dellaert ff9dd8eb8d Removed some obsolete code 2014-10-05 19:09:16 +02:00
dellaert caf742d5e1 Better names 2014-10-05 17:20:55 +02:00
dellaert 001504a432 JacobianTrace base, and avoid copying JacobianMaps. 2014-10-05 17:12:38 +02:00
dellaert 2718662467 Removed debug printing 2014-10-05 15:01:36 +02:00
dellaert fdf9c10b42 Implemented value and now testBADFactor also runs 2014-10-05 15:00:10 +02:00
dellaert 8db2cd17fc Finished constant Trace and *everything* just works!!! Amazing :-) 2014-10-05 13:41:20 +02:00
dellaert 7c19542245 Leaf Trace compiles 2014-10-05 13:37:51 +02:00
dellaert 75445307b2 Unary Trace done 2014-10-05 13:33:23 +02:00
dellaert 8e527a2251 Binary Trace compiles, runs 2014-10-05 13:27:41 +02:00
dellaert 303d37a716 Separate hierarchy 2014-10-05 11:22:14 +02:00
dellaert 6fb10a5de9 Rename, emphasizing is forward AD 2014-10-03 21:13:34 +02:00
dellaert 3f017bf51f An optimized version 2014-10-03 14:35:39 +02:00
dellaert c20b588fe0 timing, is pretty bleak for Expressions 2014-10-03 14:19:23 +02:00
dellaert a5b92f0342 MUCH simpler by just using boost::bind to turn methods into functions 2014-10-03 13:18:25 +02:00
dellaert bdf5451565 Typedefs 2014-10-03 12:52:35 +02:00
dellaert c8dd361080 Common base class BinaryExpression 2014-10-03 12:48:28 +02:00
dellaert 987b123ec9 NullaryMethodExpression and UnaryFunctionExpression, derived from UnaryExpression 2014-10-03 12:40:26 +02:00
dellaert aefad1e548 MAJOR refactor: I now use separate functions for value (only) and "augmented", for combined value-derivatives. The latter returns a new templated class, Augmented<T>. 2014-10-03 10:25:02 +02:00
dellaert da4cfe6fdc ternary test 2014-10-02 23:39:17 +02:00
dellaert 59af1c4b6d Major refactor that does not ask for derivatives when argument is constant. Also split combine into double add, added print, and moved those two statics to ExpressionNode. 2014-10-02 23:28:19 +02:00
dellaert 166396d6f6 Added tests with constant Expression 2014-10-02 23:26:59 +02:00
dellaert e7e7b3806f New test with constant argument 2014-10-02 20:28:37 +02:00
dellaert d5709facf6 Added Pose2SLAMExample 2014-10-02 20:20:00 +02:00
dellaert 8f856ceaf8 Renamed 2014-10-02 20:19:49 +02:00
dellaert df17758469 Assume H pre-allocated as usual, and *move* Jacobians to avoid allocations 2014-10-02 13:30:16 +02:00
dellaert 0800b83285 Slight efficiencies 2014-10-02 11:44:16 +02:00
dellaert bef23a2008 ExpressionExample now only uses BADFactors and yields same result as SFMExample 2014-10-02 11:21:24 +02:00
dellaert ebb091d390 BadFactor is now a functioning NoiseModelFactor 2014-10-02 11:01:39 +02:00
dellaert 3f5aa0f23e Expression version of SFMExample (in progress) 2014-10-01 14:10:54 +02:00
dellaert ce53346a9e Added Symbol versions 2014-10-01 13:12:07 +02:00
dellaert 0d94eeb480 Created expressions.h header 2014-10-01 11:25:49 +02:00
dellaert 254f8c5f75 Possible naming convention 2014-10-01 11:01:38 +02:00
dellaert a6c1ba19cc Concise version 2014-10-01 10:53:35 +02:00
dellaert d45250a989 Fixed dim 2014-10-01 10:45:57 +02:00
dellaert d935172ac5 Tightened 2014-10-01 10:43:03 +02:00
dellaert 8f6eae922a Tightened/cleaned up 2014-10-01 10:36:24 +02:00
Paul Furgale 837b2a6bc0 Fixed the member function with very ugly syntax 2014-09-30 23:13:07 +02:00
dellaert c68c2d2dac Prototype code for passing methods. Does not work (uncomment line 61) 2014-09-30 13:19:44 +02:00
dellaert ae17f8a82f Some refactoring, new static method "combine" 2014-09-30 13:00:37 +02:00
dellaert 374140abb8 Moved all BAD stuff to nonlinear 2014-09-30 12:34:03 +02:00
dellaert 1aa7b570f9 Added BADFactor header and created new test 2014-09-30 12:30:15 +02:00
dellaert ef52e12f87 Split off BADFactor code from Expression 2014-09-30 12:29:57 +02:00
dellaert 5a1ea6071b Split off ExpressionNode hierarchy 2014-09-30 12:20:02 +02:00
dellaert e2f6f01941 Some cleanup of headers/old code 2014-09-30 12:12:17 +02:00
dellaert e789de2353 Check derivatives of compose 2014-09-29 12:14:59 +02:00
dellaert 05c49601ed Added Expression header 2014-09-29 12:06:04 +02:00
Paul Furgale de3e1c3ed1 Fixed the product compilation 2014-09-29 07:22:25 +02:00
dellaert 10a35f3535 Structure for compose. Does not compile (uncomment line 492) 2014-09-28 17:50:36 +02:00
dellaert 7be6ac0e8c Now compiles but product construction fails because optional derivatives can't be delivered by the operator*() 2014-09-28 10:22:19 +02:00
dellaert 11187a4c0d I added operator logic but can't get it to compile 2014-09-27 18:22:37 +02:00
dellaert ab1f4c1e32 keys now functional 2014-09-27 16:08:59 +02:00
dellaert 186afcc95e Made constructors private 2014-09-27 15:58:34 +02:00
dellaert e487979b0f Removed obsolete typedefs 2014-09-27 15:49:25 +02:00
dellaert cde9a41acc Formatting only 2014-09-27 15:48:07 +02:00
Paul Furgale 768c7f00e1 Removed the clone method 2014-09-27 15:01:02 +02:00
dellaert 9eed7e10fe Added testBAD.run target, fixed an issue with getKeys 2014-09-27 14:08:31 +02:00
Paul Furgale 1a00d7e3d9 Second draft of the BAD implementation 2014-09-27 11:39:46 +02:00
cbeall3 e0a9eb63ce Fix for Windows: renamed some tests 2014-09-24 16:47:07 -04:00
dellaert b47837462e Unit test succeeds !!! 2014-09-21 18:54:01 +02:00
dellaert 4bc82da85c Compile with optional derivatives 2014-09-21 18:36:19 +02:00
dellaert 8e3a0f4847 Prototype [jacobians] code 2014-09-21 18:22:28 +02:00
dellaert 583c81ffea Implemented uncalibrate, value test succeeds 2014-09-21 17:59:34 +02:00
dellaert 6a5e4191a3 UnaryExpression 2014-09-21 17:43:47 +02:00
dellaert b89f65cccc BinaryExpression 2014-09-21 17:37:09 +02:00
dellaert 59b0e6a657 Progress on error 2014-09-21 17:13:25 +02:00
dellaert d9fafc1bf1 No more base class 2014-09-21 16:48:24 +02:00
dellaert 7a64e2e546 Class hierarchy 2014-09-21 16:30:30 +02:00
dellaert 6532966f62 Call JacobianFactor constructor with map 2014-09-21 13:11:55 +02:00
dellaert c7b6a9af12 Now use old-style factor to create expected value and derivatives 2014-09-21 05:33:53 -04:00
dellaert a76c27d074 Now just linearize 2014-09-18 18:33:11 -04:00
dellaert b19132e004 First version of test, with vector of Matrices 2014-09-18 17:10:39 -05:00
Jing Dong be68cc0047 add given marginals to update_noiseModel to improve speed 2014-09-15 03:03:25 -04:00
Jing Dong 1a7653730c fix headers for TransBtwRobotFactorEM 2014-09-13 18:12:28 -04:00
Vadim Indelman 6b890cec0e added updateNoiseModels functionality 2014-09-10 00:24:32 +03:00
Chris Beall 2634b2e890 Finish concurrent-calibration 2014-08-12 16:00:20 -04:00
Chris Beall 50c8313233 Rename TransformProjectionFactor to ProjectionFactorPPP 2014-08-12 15:55:28 -04:00
Chris Beall 2c3f6e563d Renamed TransformCalProjectionFactor to ProjectionFactorPPPC to follow new naming convention 2014-08-12 15:29:05 -04:00
Vadim Indelman bcab483574 Changed norm to determinant. 2014-08-01 21:51:52 +03:00
Vadim Indelman 89410fe1ee added updateNoiseModels_givenCovs to BetweenFactorEM. 2014-08-01 21:11:19 +03:00
cbeall3 bc982293ab New unit tests for quaternary pose+transform+landmark+calibration factor 2014-07-29 21:55:14 -04:00
cbeall3 f75f26fb63 Fix for Mac 2014-07-22 22:00:33 -04:00
Stephen Camp 8bad295209 Changed initial noise generation for SmartStereoProjectionFactorExample to Y direction, changed noise generation scale 2014-07-22 12:49:09 -04:00
Stephen Camp a297434148 Modified SmartStereoProjectionFactorExample to write optimized poses to file 2014-07-22 09:08:38 -04:00
Jing Dong b5b1bbfba0 improve TransBtwRobotEM factor's preformance by removing redundant unwhitenedError calc 2014-07-18 17:11:21 -04:00
Jing Dong e06c2cfacc change few function parameters to const reference to improve preformance of TransformBtwRobot factors 2014-07-18 15:59:14 -04:00
Stephen Camp e7c82652af Added option to increase initial error in SmartStereoProjectionFactorExample 2014-07-16 14:45:56 -04:00
cbeall3 f4dc6a3a95 Fix metis linking in tests 2014-07-16 14:45:12 -04:00
cbeall3 d68e6b9add Noisemodel dimension 2->3 2014-07-15 13:09:12 -04:00
Stephen Camp 4c076fca2d Added SmartStereoProjectionFactor example 2014-07-15 10:14:23 -04:00
cbeall3 f261a6ddbc Merge remote-tracking branch 'origin/develop' into feature/concurrent-calibration 2014-07-02 15:49:47 -04:00
cbeall3 8bc87e8f4f Transform + Calibration examples and factor 2014-07-01 16:33:23 -04:00
cbeall3 5b2f4a2c3a Move Transform factors to unstable 2014-07-01 16:03:35 -04:00
Vadim Indelman 991906181b Updating EM factor (to accout for uncertainty in states) 2014-06-30 20:43:25 +03:00
Richard Roberts 946cc5338a Merge branch 'develop' into feature/timing_scripts_build
Conflicts:
	gtsam_unstable/CMakeLists.txt
2014-06-21 08:55:49 -07:00
cbeall3 7485a8f2d5 Merge remote-tracking branch 'origin/develop' into feature/concurrent-calibration 2014-06-20 13:48:26 -04:00
cbeall3 3bacdbbec5 Move Smart Projection Factor wrapper to stable 2014-06-20 13:41:51 -04:00
cbeall3 a34dff1397 Merge remote-tracking branch 'origin/feature/new_imu_factors' into develop 2014-06-20 13:32:34 -04:00
cbeall3 67e0e71802 First script to experiment with Concurrent calibration estimation 2014-06-13 12:17:45 -04:00
cbeall3 9f796565d0 print optimization errors for now 2014-06-12 16:24:03 -04:00
cbeall3 8bee2cd70f Fixed unstable examples never getting built 2014-06-12 14:40:24 -04:00
Richard Roberts fe235b1209 Building timing scripts using new timing script support in GtsamTesting.cmake. Fixed compile errors in timing scripts but disabled a couple. 2014-06-07 19:02:11 -07:00
Richard Roberts 2591f7dca2 Fixed missing gtsam_unstable/partition tests 2014-06-07 19:01:13 -07:00
cbeall3 87f5818776 Move smart projection factor 2014-05-31 15:33:19 -04:00
cbeall3 41de41deec minor cleanup 2014-05-30 19:37:03 -04:00
cbeall3 a7a209ce0c Minor fixes and documentation cleanup 2014-05-30 13:31:35 -04:00
cbeall3 625b7b0743 Monocular Smart Projection factor example based on stereo data 2014-05-30 11:58:07 -04:00
Luca 386ed2e510 Merge branch 'develop'
Conflicts:
	gtsam_unstable/slam/SmartFactorBase.h
2014-05-28 18:11:39 -04:00
cbeall3 2699605943 Fix return type mismatch 2014-05-28 11:31:17 -04:00
Luca 8806c15b36 fixed possible connectivity issue when smart factors are degenerate 2014-05-23 17:49:42 -04:00
Luca c2705902cb added dynamic outlier rejection (with unit tests) for smart pose factors 2014-05-22 22:32:12 -04:00
Luca e0500f7b18 added and renamed unit tests 2014-05-22 21:28:00 -04:00
Luca 4f91f94d1e included possibility to linearize to Jacobian for smart Pose factors 2014-05-22 21:27:46 -04:00
djensen3 b83a996731 Fixed SmartProjectionPoseFactor matlab wrapping 2014-05-13 17:04:16 -04:00
Chris Beall 1062e41de3 shut up some warnings on Windows 2014-05-06 22:57:26 -04:00
cbeall3 842554a230 Unit test fixes for quaternion mode and also rotation matrix + full expmap mode. 2014-05-06 20:03:45 -04:00
cbeall3 0450c58d66 silence warning 2014-05-06 12:06:07 -04:00
dellaert 9373711a85 Finish TSAMFactors 2014-05-06 01:34:56 -04:00
cbeall3 2f180d1d02 Remove using namespace std from header files 2014-05-05 16:35:22 -04:00
dellaert 0a2385711b MATLAB wrapping of TSAMFactors 2014-05-05 10:14:56 -04:00
dellaert 05c1e572b6 Moved TSAMFactors.h from tsam to gtsam 2014-05-05 10:14:36 -04:00
Luca 5c420f1aec added references 2014-05-04 18:16:40 -04:00
dellaert 92c9e9c0aa Fixed "unused" warnings 2014-05-03 12:23:49 -04:00
dellaert 1ed07ca4ed Moved to unstable 2014-05-03 12:23:20 -04:00
djensen3 5402f9fa20 Removed smartProjectionPoseFactor from matlab wrapper; it was causing matlab crashes 2014-05-02 11:12:10 -04:00
djensen3 8dbd7c175c added SmartProjectionFactor to matlab wrapper 2014-05-01 15:55:37 -04:00
djensen3 ce13807d10 added script to run and save tests in a simplified way 2014-05-01 12:56:24 -04:00
Luca 32e1a8f994 tried some changes for wrapping 2014-05-01 10:48:54 -04:00
djensen3 2cb448fa24 adding SmartProjectionPoseFactor to wrapper 2014-04-30 16:17:32 -04:00
Luca 185c572b5a removed wrong base class 2014-04-24 11:28:41 -04:00
Luca 8c657f8857 slight change in implementation of hessianBlockDiagonal 2014-04-23 19:00:15 -04:00
Luca d9e93f316a error computation now does not include noise model 2014-04-23 18:43:14 -04:00
Luca 2b52bad569 optimized point damping 2014-04-23 15:15:48 -04:00
Luca e56666e85c fixed print function 2014-04-23 14:53:01 -04:00
Luca 37b750411f added gradientAtZero with raw memory access 2014-04-22 18:38:12 -04:00
Luca dd780e356c fixed computation of linearized error in implicit schur factors 2014-04-21 18:59:33 -04:00
Luca e232b6085b wrapping smart factors 2014-04-15 11:06:38 -04:00
Luca bd218feada Merge branch 'develop' 2014-04-15 10:57:20 -04:00
Luca f63db8859b addind wrapper for smart factors 2014-04-15 10:56:17 -04:00
Luca 926b4c6443 removed temporary variables - minor 2014-04-14 11:41:55 -04:00
Luca 6ef11bb297 removed debug statements 2014-04-09 21:14:38 -04:00
Luca 4bdefc3f70 removed debug bloks 2014-04-09 21:04:52 -04:00