This site and the code provided here are under active development. Even though we try to only release working high quality code, this version might still contain some issues. Please use it with caution.


This Stack builds on the well known monocular SLAM framework PTAM presented by Klein & Murray in their paper at ISMAR07. Please study the original PTAM website and the corresponding paper before using this code. Also, be aware of the license that comes with it.

We modified the original code such that:

  • it is compatible with ROS.
  • it runs on-board a computationally limited platform (e.g. at 20Hz on an ATOM 1.6GHz single core processor)
  • it is robust in outdoor and self-similar environments such as grass.

This version of PTAM was successfully used in the European project sFly to estimate a 6DoF pose for long-term vision based navigation of a micro helicopter in large outdoor environments. You may use this version together with the ethzasl_sensor_fusion stack to pose control your MAV in a similar way.

Relevant publications are:

  • Stephan Weiss. Vision Based Navigation for Micro Helicopters PhD Thesis, 2012 pdf

  • Stephan Weiss, Markus W. Achtelik, Simon Lynen, Margarita Chli and Roland Siegwart. Real-time Onboard Visual-Inertial State Estimation and Self-Calibration of MAVs in Unknown Environments. in IEEE International Conference on Robotics and Automation (ICRA), 2012. pdf

  • Stephan Weiss, Davide Scaramuzza and Roland Siegwart, Monocular-SLAM–based navigation for autonomous micro helicopters in GPS-denied environments, Journal of Field Robotics (JFR), Vol. 28, No. 6, 2011, 854-874. pdf

  • Markus W. Achtelik, Michael Achtelik, Stephan Weiss, and Roland Siegwart. Onboard IMU and Monocular Vision Based Control for MAVs in Unknown In- and Outdoor Environments. in IEEE International Conference on Robotics and Automation (ICRA), 2011. pdf

ethzasl_ptam_icarus.jpg ethzasl_ptam_traj.jpg

Vision based MAV navigation in not so small environments: We use ethzasl_ptam and ethzasl_sensor_fusion for vision based navigation for computationally constrained MAVs in large environments:

Top image: vision based height test up to 70m above ground and landing in the same mission

Bottom image: long-term vision based navigation for 360m (one battery life-time) with about 0.4% position drift (Bing Maps)


ptam_com: custom message definitions needed for this stack.

ptam: the modified PTAM in this stack


The following commands will fetch and compile the ethzasl_ptam stack with catkin.

cd ~/catkin_ws/src
git clone
cd ..

Change Log

September 7th 2012

  • First version of tutorials online - finally.
  • "under construction" tag removed.

August 21st 2012

  • Added link to PhD Thesis Weiss2012

May 4th 2012

  • First version of this site up and running - releasing code

April 13th 2012

  • starting to release this stack...

Report a Bug

ethzasl_ptam issues

Wiki: ethzasl_ptam (last edited 2015-02-13 13:13:25 by MartinKerschberger)