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