gtsam/examples
Yong-Dian Jian 83f656f93d add the spcg example to matlab 2012-06-04 20:14:41 +00:00
..
Data remove old visual SLAM example and its data 2012-06-04 08:51:34 +00:00
matlab add the spcg example to matlab 2012-06-04 20:14:41 +00:00
CMakeLists.txt removed vSLAMExample directory reference 2012-06-04 12:34:58 +00:00
CameraResectioning.cpp use make_shared, cleanup 2012-06-03 19:50:04 +00:00
LocalizationExample.cpp Synchronized mixed case naming 2012-06-03 05:25:05 +00:00
LocalizationExample2.cpp Significant API change in slam (GTSAM 2.0.1 or 2.1): to eliminate confusion and give the user more freedom in creating their own Keys, the different slam variants no longer create Symbol keys themselves. Instead, all interaction is done via Keys (which are just unordered, unsigned ints). All PoseSLAM unit tests and examples now just use sequential keys. However, a user can still create Keys using the Symbol constructor, which is illustrated in the landmark-based unit tests and examples. 2012-06-02 16:18:40 +00:00
PlanarSLAMExample.cpp Renamed examples to not have _easy.... 2012-06-03 19:52:35 +00:00
PlanarSLAMExample_selfcontained.cpp Another rename 2012-06-03 20:11:40 +00:00
Pose2SLAMExample.cpp new Pose3SLAM examples in C++ and MATLAB 2012-06-04 00:41:13 +00:00
Pose2SLAMExample_advanced.cpp Synchronized mixed case naming 2012-06-03 05:25:05 +00:00
Pose2SLAMExample_graph.cpp Manhattan world example with covariances, in C++ and MATLAB 2012-06-03 18:20:48 +00:00
Pose2SLAMwSPCG.cpp add the spcg example to matlab 2012-06-04 20:14:41 +00:00
README Another rename 2012-06-03 20:11:40 +00:00
SimpleRotation.cpp Updated examples and namespaces for the new NonlinearOptimizer interface 2012-05-14 20:25:20 +00:00
UGM_small.cpp UGM (undirected graphical model) example, small, see http://www.di.ens.fr/~mschmidt/Software/UGM/small.html 2012-05-03 05:09:22 +00:00
VisualISAMExample.cpp change filename for visualSLAM examples 2012-06-04 16:05:13 +00:00
VisualSLAMData.h change filename for visualSLAM examples 2012-06-04 16:05:13 +00:00
VisualSLAMExample.cpp change filename for visualSLAM examples 2012-06-04 16:05:13 +00:00
easyPoint2KalmanFilter.cpp Symbol.h is now included just in time, no longer by default everywhere. 2012-06-02 19:05:38 +00:00
elaboratePoint2KalmanFilter.cpp Removed LDL in favor of Cholesky 2012-05-15 15:49:14 +00:00

README

This directory contains a number of examples that illustrate the use of GTSAM:

SimpleRotation:  a super-simple example of optimizing a single rotation according to a single prior

Kalman Filter Examples
======================
elaboratePoint2KalmanFilter: simple linear Kalman filter on a moving 2D point, but done using factor graphs
easyPoint2KalmanFilter: uses the cool generic templated Kalman filter class to do the same
fullStateKalmanFilter: simple 1D example with a full-state filter
errorStateKalmanFilter: simple 1D example of a moving target measured by a accelerometer, incl. drift-rate bias

2D Pose SLAM 
============
LocalizationExample.cpp: modeling robot motion
LocalizationExample2.cpp: example with GPS like measurements
Pose2SLAMExample: A 2D Pose SLAM example using the predefined typedefs in gtsam/slam/pose2SLAM.h
Pose2SLAMExample_advanced: same, but uses an Optimizer object
Pose2SLAMwSPCG: solve a simple 3 by 3 grid of Pose2 SLAM problem by using easy SPCG interface

Planar SLAM with landmarks
==========================
PlanarSLAMExample: simple robotics example using the pre-built planar SLAM domain
PlanarSLAMExample_selfcontained: simple robotics example with all typedefs internal to this script.

Visual SLAM
===========
CameraResectioning.cpp: An example of gtsam for solving the camera resectioning problem
The directory vSLAMexample includes 2 simple examples using GTSAM:
- vSFMexample using visualSLAM in for structure-from-motion (SFM), and
- vISAMexample using visualSLAM and ISAM for incremental SLAM updates
See the separate README file there.

Undirected Graphical Models (UGM)
=================================
The best representation for a Markov Random Field is a factor graph :-)
This is illustrated with some discrete examples from the UGM MATLAB toolbox, which
can be found at http://www.di.ens.fr/~mschmidt/Software/UGM