Frank Dellaert
28f4493a2b
Now uses Adjoint map for derivatives of inverse/compose/between, see doc/math.pdf
2010-02-28 09:10:39 +00:00
Frank Dellaert
98aa08bcd0
Re-use memory
2010-02-28 09:09:37 +00:00
Frank Dellaert
85784400c6
prototype object map
2010-02-28 09:09:12 +00:00
Frank Dellaert
dcfe52dae7
some renaming of variables
2010-02-28 09:08:47 +00:00
Kai Ni
b58f7b8ea7
the derivative for transform_from
2010-02-28 08:51:43 +00:00
Kai Ni
d894e23a06
assert_equal for a list of matrices
2010-02-28 00:48:42 +00:00
Manohar Paluri
4604cbce05
svd now handles m < n cases. Added unit tests to verify this. But svd in place will throw an exception for such cases.
2010-02-27 18:23:34 +00:00
Frank Dellaert
5e00c58ea7
Baker–Campbell–Hausdorff formula: in non-commutative Lie groups, when composing exp(Z) = exp(X)exp(Y) it is not true that Z = X+Y. Instead, Z can be calculated using the BCH formula:
...
Z = X + Y + [X,Y]/2 + [X-Y,[X,Y]]/12 - [Y,[X,[X,Y]]]/24 + ...
See http://en.wikipedia.org/wiki/Baker–Campbell–Hausdorff_formula
2010-02-27 14:58:54 +00:00
Kai Ni
67b4834bdb
someone forgot to return it
2010-02-27 00:04:51 +00:00
Viorela Ila
b6599ebdce
readst the tree files
2010-02-26 22:23:00 +00:00
justinca
9941b28128
Fix matrix inverse square root so it, once again, returns an upper triangular matrix
2010-02-26 18:53:41 +00:00
Manohar Paluri
940202226b
added #pragma
2010-02-26 14:45:17 +00:00
Frank Dellaert
d21ff82d21
Kruskal skeleton
2010-02-26 13:31:38 +00:00
Kai Ni
87c8465315
the beautiful Jacobian of compose in pose2
2010-02-26 10:55:41 +00:00
Frank Dellaert
c40760485d
I think we might have a problem: is expmap<Pose2> correct? Uncomment the new test in testPose2. It does not match what is said in http://www.cis.upenn.edu/~cis610/cis610lie1.ps .
2010-02-26 06:00:58 +00:00
Frank Dellaert
0004d90feb
formatting only
2010-02-26 05:30:02 +00:00
Frank Dellaert
38ed1a5cdd
more compulsive checking, more efficient removing
2010-02-26 05:29:45 +00:00
Kai Ni
73848d9e0e
added comments to make people realize it is for the matlab wrapper not actually c++ implementation
2010-02-26 05:05:05 +00:00
Kai Ni
7e8aa6e6b9
add unit test for the constructor
2010-02-26 05:04:03 +00:00
Frank Dellaert
5e97d07f5e
*it is already the right type
2010-02-26 04:03:56 +00:00
Frank Dellaert
0a33b50554
use Matrix.resize
2010-02-26 04:03:31 +00:00
Frank Dellaert
17bd59ec80
only call alpha calls if CBLAS version will be called.
2010-02-26 03:23:48 +00:00
Frank Dellaert
044ea1348d
Modernized/refactored, esp. with regards to map insert and iterating.
2010-02-26 03:20:15 +00:00
Alex Cunningham
9d704bb977
Added flag to default Factorization for old or new elimination, defaulting to old code.
2010-02-25 21:07:35 +00:00
Alex Cunningham
5b60511505
Reverted default elimination code to older implementation - use switch in optimize() or eliminate() to use newer code.
2010-02-25 20:43:59 +00:00
Kai Ni
c56ee9ea0d
added a new constructor that takes a list
2010-02-25 08:16:33 +00:00
Alex Cunningham
74787df3fc
Added ability to insert whole configs at a time to LieConfig and TupleConfig
2010-02-25 02:50:01 +00:00
Frank Dellaert
93a3f48920
Created patch to camera homography function with Duy
2010-02-25 00:05:27 +00:00
Alex Cunningham
9955ea20bd
Added pure cblas implementation of multiplyAdd functions. This does not have autotools support yet, so to enable, goto cpp/Makefile.am, comment out the block concerning GSL/ATLAS, and uncomment the above section enabling just blas.
2010-02-24 18:12:48 +00:00
Alex Cunningham
f8c4e1fe27
Fixed bug in unit test causing crashes, altered corner case test for column insertion
2010-02-24 18:09:15 +00:00
Alex Cunningham
022f706d94
Changed default elimination algorithm to newer one with fewer matrix allocations to solve crashing bug from LM discovered in MAST
2010-02-24 14:19:52 +00:00
Frank Dellaert
04f7bbf253
use vector_scale_inplace
2010-02-24 06:15:06 +00:00
Frank Dellaert
696be0d0c1
RETURN CONST REFERENCES WHERE YOU CAN and some inlining
2010-02-24 06:14:43 +00:00
Frank Dellaert
dd9446993a
5-fold performance improvement in combined between function
2010-02-24 06:14:02 +00:00
Frank Dellaert
51281ea78f
in-place colamd
2010-02-24 06:13:11 +00:00
Frank Dellaert
71089a6354
vector_scale_inplace
2010-02-24 06:12:56 +00:00
Frank Dellaert
c1f50a0637
fixed noise model, removed istringstream and getline in favor of ignore
2010-02-24 06:11:52 +00:00
Kai Ni
547427514f
add save functions for Matrix and Vector to save them to disk
2010-02-24 00:12:10 +00:00
Alex Cunningham
ac41ee7215
Added a test in GaussianFactor to demo a problem found in MAST where eliminating a single factor with two priors causes a memory corruption error. To run the test and see the error, go to the last test in testGaussianFactor called "exploding_MAST_factor" and uncomment the indicated line.
2010-02-23 18:41:07 +00:00
Alex Cunningham
a2310b4eab
Fixed small error in NonlinearConstraint and added note explaining why nonlinear constraints do not use a constrained noisemodel in the nonlinear sense.
2010-02-23 18:37:17 +00:00
Manohar Paluri
032c8887d6
added point-point-point check
2010-02-23 13:14:07 +00:00
Kai Ni
5594d162a2
allocate noise model once
2010-02-23 05:28:39 +00:00
Kai Ni
3ae81002be
fixed the unit tests
2010-02-23 05:23:15 +00:00
Manohar Paluri
8900a37d93
removed unncessary prints
2010-02-23 05:08:42 +00:00
Frank Dellaert
a178023a27
Fixed christian01 example, polluting gtsam with extra header files for MATLAB. Need to look for a better solution.
2010-02-23 05:06:16 +00:00
Manohar Paluri
443d304a7c
Added another TrifocalTensor estimation test
2010-02-22 21:45:15 +00:00
Alex Cunningham
fbbdd0be3e
Fixed error calculation with NonlinearConstraints - now use Unit noisemodels in NonlinearConstraint to prevent having the error forced to infinity
2010-02-22 21:11:22 +00:00
Kai Ni
ee9205f0fa
uncommented unit tests
2010-02-22 16:43:40 +00:00
Kai Ni
65cbff6af6
added unit tests
2010-02-22 06:42:58 +00:00
Frank Dellaert
6ea8a22958
Fixed two unit tests in MATLAB, needed some small changes in C++ as well
2010-02-21 23:50:28 +00:00
Frank Dellaert
694f6e4219
linearize now always returns a shared pointer
2010-02-21 21:17:47 +00:00
Frank Dellaert
517c82f62f
Small details, like using a reference in FOREACH
2010-02-21 17:06:11 +00:00
Frank Dellaert
fe4471930f
avoid keys() call to known set of keys
2010-02-21 15:24:05 +00:00
Frank Dellaert
190ec53a63
use ifdef
2010-02-21 15:23:27 +00:00
Manohar Paluri
7f1c3f9952
fixed a bug
2010-02-21 04:51:42 +00:00
Frank Dellaert
274265a401
Errors:axpy and testErrors
2010-02-21 00:01:43 +00:00
Frank Dellaert
5b6af9e4bd
1.0 versions of BLAS level 2
2010-02-20 23:44:07 +00:00
Frank Dellaert
ac316f2d56
formatting only
2010-02-20 23:43:41 +00:00
Richard Roberts
75b35949c9
Fixed several unit test main() functions that were returning 0 instead of the result of runAllTests. This caused unit tests to print failures but not count as failures in the pass/fail counts. In CMake projects, since test output is logged to a file instead of printed, this caused no indication of failures when they occured! All tests still pass with no other modifications after fixing this.
2010-02-20 22:22:45 +00:00
Kai Ni
1949a992cd
define two additional types
2010-02-20 00:28:10 +00:00
Kai Ni
689b9fefc0
throw exceptions instead of crashing
2010-02-19 22:44:45 +00:00
Kai Ni
d0ce5d36da
created addPrior
2010-02-19 02:48:47 +00:00
Manohar Paluri
e60d903210
removed extra quotes
2010-02-18 23:31:23 +00:00
Manohar Paluri
2bf4c0ce5b
Fixed two bugs, both related to array overflow
2010-02-18 22:52:49 +00:00
Richard Roberts
c26219e3d4
Added Pose2::matrix() function.
2010-02-18 16:27:01 +00:00
Frank Dellaert
cd5c281c76
Added get and set
2010-02-18 14:30:16 +00:00
Frank Dellaert
ede0a8c874
Added unit test
2010-02-18 14:29:40 +00:00
Frank Dellaert
3247751b5d
Major check-in: there are now two interchangeable implementations of VectorConfig.
...
VectorMap uses a straightforward stl::map of Vectors. It has O(log n)
insert and access, and is fairly fast at both. However, it has high overhead
for arithmetic operations such as +, scale, axpy etc...
VectorBTree uses a functional BTree as a way to access SubVectors
in an ordinary Vector. Inserting is O(n) and much slower, but accessing,
is O(log n) and might be a bit slower than VectorMap. Arithmetic operations
are blindingly fast, however. The cost is it is not as KISS as VectorMap.
Access to vectors is now exclusively via operator[]
Vector access in VectorMap is via a Vector reference
Vector access in VectorBtree is via the SubVector type (see Vector.h)
Feb 16 2010: FD: I made VectorMap the default, because I decided to try
and speed up conjugate gradients by using Sparse FactorGraphs all the way.
2010-02-17 03:29:12 +00:00
Kai Ni
cb5d4c3127
instantiate SymbolicConfig
2010-02-16 23:20:39 +00:00
Alex Cunningham
d895cb90dc
Added a static dim function to Point3 for generic detection of dimension
2010-02-16 20:21:03 +00:00
Alex Cunningham
529fc5536b
Fixed templating problem with visualSLAM::ProjectionFactor
2010-02-16 02:09:07 +00:00
Frank Dellaert
30893b33eb
some small details to work it work with NewVectorConfig
2010-02-15 23:54:10 +00:00
Frank Dellaert
5d33eb185c
added SubVector type and some related routines
2010-02-15 23:53:16 +00:00
Frank Dellaert
e4691a1594
BTree refactored, Node is now an inner class, find is non-recursive
2010-02-15 23:52:46 +00:00
Manohar Paluri
39708194a3
added TrifocalTensor test and changed DLT to use non-sorted version.
2010-02-15 23:45:53 +00:00
Frank Dellaert
341c4d9250
Deleted debug print
2010-02-15 21:38:33 +00:00
Manohar Paluri
8691d633a7
added testTensors to the tests
2010-02-15 20:25:38 +00:00
Alex Cunningham
17706d4ebd
Added key template parameters to visualSLAM::projectionFactor without changing the interface. Added dimension checking function for Point2 type.
2010-02-15 16:37:37 +00:00
Manohar Paluri
6f0d23cdaf
forgot to change comments in previous checkin
2010-02-14 07:26:53 +00:00
Manohar Paluri
1cc5bf748b
make file changes and added make targets to the cproject
2010-02-14 07:26:10 +00:00
Manohar Paluri
c16e6fc0d5
Moved Tensor related Files from CitySLAM
2010-02-14 07:25:03 +00:00
Manohar Paluri
1923778750
Moved Tensor related Files from CitySLAM
2010-02-14 07:24:37 +00:00
Frank Dellaert
44094b494e
fixed maxIteration bug
2010-02-14 07:14:42 +00:00
Frank Dellaert
1f165a9f85
Made CG state a class
2010-02-14 05:52:20 +00:00
Manohar Paluri
43f9baf77a
added test to check singular value ordering for a sample homography case
2010-02-14 04:56:29 +00:00
Manohar Paluri
693e13ef88
added default bool option to svd to sort the singular values and V. the default is true so pass false to avoid sorting
2010-02-14 04:54:39 +00:00
Kai Ni
f9c2000847
save graph to graphviz format
2010-02-13 07:09:56 +00:00
Kai Ni
d0a93ad9dd
insert bayes net as a clique
2010-02-13 07:09:27 +00:00
Richard Roberts
4408eaf6f4
Added FactorGraph::checkGraphConsistency() to check for consistency between the variables->factors and factors->variables maps, and a unit test that tests the replace function including checking consistency.
2010-02-13 01:29:19 +00:00
Alex Cunningham
f1988513fe
Fixed bug in print function of TypedLabeledSymbol
2010-02-10 21:03:49 +00:00
Alex Cunningham
dde0626e5c
Added a constructor for TypedLabeledSymbol from Symbol that decodes the index to split out a label
2010-02-10 15:27:21 +00:00
Alex Cunningham
d0aed559b5
TypedLabeledSymbols now convert properly to Symbols, so they can be used to add a runtime label to a TypedKey to express "Pose 1 of robot A"
2010-02-10 14:39:58 +00:00
Kai Ni
31999ecb1f
added 4-way symbolic factor
...
fixed a bug in the bayes tree to graphviz routine
2010-02-09 22:59:18 +00:00
Richard Roberts
e83b6c3b84
Normalizing rotation matrix to fix numerical instability when composing many poses
2010-02-09 22:44:02 +00:00
Kai Ni
31fc894a4a
added 4-way symbolic factor
...
fixed a bug in the bayes tree to graphviz routine
2010-02-09 21:32:14 +00:00
Alex Cunningham
d2a4bdae3c
Made simulated2D factors more generic - can now specify key types
2010-02-09 19:47:39 +00:00
Alex Cunningham
8ff64793f1
Apparently, expmap != exmap. TupleConfigN's are no longer broken now.
2010-02-09 19:27:28 +00:00
Alex Cunningham
942e2b9c6d
static chr() function for TypedSymbol, and another version of Symbol (don't use)
2010-02-09 03:59:45 +00:00
Alex Cunningham
0c74e0c309
Ensured that constraints add keys to keys_
2010-02-09 01:52:36 +00:00
Alex Cunningham
8aa440a679
Fixed the instantiation macros and exmap global functions for TupleConfigN
2010-02-09 01:24:41 +00:00