gtsam/examples
Frank Dellaert def9b84e45 Added virtual solve method to NonlinearOptimizer that you can override, e.g., with Ceres
See example in testNonlinearOptimizer
As part of this, I also merged SuccessiveLinearizationParams into NonlinearOptimizerParams, which is now in its own separate file NonlinearOptimizerParams.h
2013-10-25 18:27:43 +00:00
..
Data added tests on smartHessianFactor with Cal3Bundler 2013-10-19 22:00:43 +00:00
CMakeLists.txt fix easy Kalman filter example 2013-08-19 21:32:51 +00:00
CameraResectioning.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
DiscreteBayesNet_FG.cpp changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
LocalizationExample.cpp Fix Matrix_() to Mat() in examples 2013-10-14 15:41:33 +00:00
OdometryExample.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
PlanarSLAMExample.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
Pose2SLAMExample.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
Pose2SLAMExample_graph.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
Pose2SLAMExample_graphviz.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
Pose2SLAMwSPCG.cpp Added virtual solve method to NonlinearOptimizer that you can override, e.g., with Ceres 2013-10-25 18:27:43 +00:00
README Another rename 2012-06-03 20:11:40 +00:00
RangeISAMExample_plaza2.cpp Moved Symbol and LabeledSymbol to inference as they are no longer specific to nonlinear optimization 2013-08-19 15:32:16 +00:00
SFMExample.cpp renamed Visual SLAM -> SFM, reserve SLAM for problems where we have odometry 2013-10-18 05:31:55 +00:00
SFMExample_bal.cpp cleaned up but for some reason it segfaults in Release, as if not linked with correct dataset code... 2013-10-18 06:04:48 +00:00
SFMdata.h renamed Visual SLAM -> SFM, reserve SLAM for problems where we have odometry 2013-10-18 05:31:55 +00:00
SelfCalibrationExample.cpp renamed Visual SLAM -> SFM, reserve SLAM for problems where we have odometry 2013-10-18 05:31:55 +00:00
SimpleRotation.cpp Moved Symbol and LabeledSymbol to inference as they are no longer specific to nonlinear optimization 2013-08-19 15:32:16 +00:00
SolverComparer.cpp Added virtual solve method to NonlinearOptimizer that you can override, e.g., with Ceres 2013-10-25 18:27:43 +00:00
UGM_chain.cpp Renamed tic -> gttic and toc -> gttoc to avoid conflict with PCL tic/toc 2012-10-02 20:18:41 +00:00
UGM_small.cpp changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
VisualISAM2Example.cpp renamed Visual SLAM -> SFM, reserve SLAM for problems where we have odometry 2013-10-18 05:31:55 +00:00
VisualISAMExample.cpp renamed Visual SLAM -> SFM, reserve SLAM for problems where we have odometry 2013-10-18 05:31:55 +00:00
easyPoint2KalmanFilter.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +00:00
elaboratePoint2KalmanFilter.cpp Modified Vector_() to Vec() in examples 2013-10-14 03:20:57 +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