gtsam/examples
dellaert f639ae0d7c Ignore generated files 2015-02-26 13:55:32 +01:00
..
Data Ignore generated files 2015-02-26 13:55:32 +01:00
CMakeLists.txt Using macro for creating examples to remove cmake code copy/paste 2014-02-13 13:24:14 -05:00
CameraResectioning.cpp Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
CreateSFMExampleData.cpp Created second example 2013-12-24 16:47:30 -05: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 Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
METISOrderingExample.cpp Fix comma initializer 2014-11-24 18:15:56 -05:00
OdometryExample.cpp Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
PlanarSLAMExample.cpp Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
Pose2SLAMExample.cpp Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
Pose2SLAMExampleExpressions.cpp Merged in feature/SmartCT (pull request #107) 2015-02-22 06:14:19 +01:00
Pose2SLAMExample_g2o.cpp Fixed (case) type 2015-02-21 13:49:53 +01:00
Pose2SLAMExample_graph.cpp include Pose2 2015-02-22 06:20:53 +01:00
Pose2SLAMExample_graphviz.cpp Merged in feature/SmartCT (pull request #107) 2015-02-22 06:14:19 +01:00
Pose2SLAMExample_lago.cpp Fixed (case) type 2015-02-21 13:49:53 +01:00
Pose2SLAMwSPCG.cpp Merged in feature/SmartCT (pull request #107) 2015-02-22 06:14:19 +01:00
Pose3SLAMExample_changeKeys.cpp Merge branch 'develop' 2014-10-06 17:02:08 -04:00
Pose3SLAMExample_g2o.cpp Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
Pose3SLAMExample_initializePose3Chordal.cpp Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
Pose3SLAMExample_initializePose3Gradient.cpp Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
README Another rename 2012-06-03 20:11:40 +00:00
RangeISAMExample_plaza2.cpp Fix for #204 2015-01-21 13:16:13 -05:00
SFMExample.cpp Merged in feature/SmartCT (pull request #107) 2015-02-22 06:14:19 +01:00
SFMExampleExpressions.cpp Updated examples and test 2014-12-28 19:10:41 +01:00
SFMExampleExpressions_bal.cpp New example reads BAL file, creates expressions 2015-01-22 00:06:29 +01:00
SFMExample_SmartFactor.cpp RADICAL2: The SmartProjectionPoseFactor (soon to be renamed SmartPinholePoseFactor, if it survives at all) now no longer stores shared calibrations. Values expect to contain PinholePoses not Pose3s now. The current state of affairs was simply a bug: one pose could be optimized for several different calibrations. It relied on the user to make sure all measurements for a specific pose to optimize were all given the same shared calibration, which was then stored *millions of times* in the pose factors. Instead, there is now *one* shared calibration per PinholePose unknown. 2015-02-26 13:55:16 +01:00
SFMExample_SmartFactorPCG.cpp RADICAL2: The SmartProjectionPoseFactor (soon to be renamed SmartPinholePoseFactor, if it survives at all) now no longer stores shared calibrations. Values expect to contain PinholePoses not Pose3s now. The current state of affairs was simply a bug: one pose could be optimized for several different calibrations. It relied on the user to make sure all measurements for a specific pose to optimize were all given the same shared calibration, which was then stored *millions of times* in the pose factors. Instead, there is now *one* shared calibration per PinholePose unknown. 2015-02-26 13:55:16 +01:00
SFMExample_bal.cpp Fix crash 2015-01-22 00:06:12 +01:00
SFMdata.h Merged changes from the trunk back into examples. Mostly just Vector inits and some new examples. 2013-12-23 01:41:17 -05:00
SelfCalibrationExample.cpp Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08: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 Removed EXPORT (Chris?) 2014-12-28 17:13:11 +01:00
StereoVOExample.cpp Formatting/spacing 2014-06-12 16:09:39 -04:00
StereoVOExample_large.cpp Update ordering 2014-11-24 12:50:55 -05:00
TimeTBB.cpp Fix for #204 2015-01-21 13:16:13 -05: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 Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
VisualISAMExample.cpp Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
easyPoint2KalmanFilter.cpp Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08: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