gtsam/examples
Frank Dellaert bd7724781d Manhattan world example with covariances, in C++ and MATLAB 2012-06-03 18:20:48 +00:00
..
Data Small Manhattan world example 2012-06-03 05:26:30 +00:00
matlab Manhattan world example with covariances, in C++ and MATLAB 2012-06-03 18:20:48 +00:00
vSLAMexample Using symbol_shorthand instead of redundant kx, kl functions 2012-06-02 19:28:21 +00:00
CMakeLists.txt Added a flag to optionally remove examples from "all" target 2012-05-19 02:21:21 +00:00
CameraResectioning.cpp Added clone() functionality to nonlinear factors 2012-05-21 20:54:40 +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_easy.cpp Symbol.h is now included just in time, no longer by default everywhere. 2012-06-02 19:05:38 +00:00
PlanarSLAMSelfContained_advanced.cpp Synchronized mixed case naming 2012-06-03 05:25:05 +00:00
Pose2SLAMExample_advanced.cpp Synchronized mixed case naming 2012-06-03 05:25:05 +00:00
Pose2SLAMExample_easy.cpp More complex Pose2SLAM example, synced up with manual (in progress) 2012-05-22 04:31:05 +00:00
Pose2SLAMExample_graph.cpp Manhattan world example with covariances, in C++ and MATLAB 2012-06-03 18:20:48 +00:00
Pose2SLAMwSPCG_easy.cpp add a simple spcg implementation and revive the example 2012-06-03 14:52:26 +00:00
README 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
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
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 exapmples 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 
============
Pose2SLAMExample_easy: A 2D Pose SLAM example using the predefined typedefs in gtsam/slam/pose2SLAM.h
Pose2SLAMExample_advanced: same, but uses an Optimizer object
Pose2SLAMwSPCG_easy: solve a simple 3 by 3 grid of Pose2 SLAM problem by using easy SPCG interface
Pose2SLAMwSPCG_advanced: solve a simple 3 by 3 grid of Pose2 SLAM problem by using advanced SPCG interface

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

Visual SLAM
===========
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