Practical Course on Simultaneous Localization and Mapping


The goal of this practical course is to develop a complete mapping system for laser-based robots. This includes scan-alignment techniques, tools for closing loops, an optimization engine, as well as a user interface.
Given the topics at hand, it is strongly suggested to have participated in the lecture "Introduction to Mobile Robotics" (even if this is not a hard constraint). Furthermore, programming skills are definitively needed and we expect a significant amount of own motivation. Note that students participating in this project will have to work in teams.

General Information

  • Organizer: PD Dr. Cyrill Stachniss
  • Co-Organizer: Henrik Kretzschmar
  • We will meet Wednesdays at 10h in building 51, room HS 03 026.
  • The 1st meeting will be on Wed, 27.10.08, 10h (ct)
  • Prerequisits: It is strongly recommended to have attended Introduction to Mobile Robotics. Having attended Robotics 2 can be helpful but its not expected.
  • Language: The course language will be English (or German depending on the participating students).
  • Registration: See online system!
  • The course is restricted to 10 students (for master students only). In case there are not free places left, contact me via email and I will put you on the waiting list (or seek for an alternative solution).
  • Registration-policy: First come, first serve.
  • Check this page for updates frequently.

Slides

Important Notes

  • Operating System: We will develop based on Ubuntu 10.4 LTS (download). Please make sure that you have a Ubuntu installation running on your Notebook/PC which you will use for the developments. This should have happend before the first meeting.
  • ...but I don't have space to install Ububntu on my notebook! What should I do? Consider to install Ubuntu on a 8 GB USB stick and use that for your developments (regular install using the casper-rw filesystem for USB sticks). This solution is slower but will not affect the data on your harddrive.
  • Teams: You will probably have to work in groups of 3 or 4 students. The group assignment will be done in the first meeting.
  • Programming language: We recommend and support the usage of C++. If a whole group/team of students plans to use Java, we will not have serious objections against that - however, be aware that you have to code JNIs to external libraries and similar. Furthemore our support on Java is limited.

Some Potentiall Useful Links