Treemap: Small Map with Navigation Experiment

In one of our SLAM experiments, the mobile robot learns a part of our institute building and later navigates through the building transporting various items. Here are the following images and videos:

Our robot and the artifical landmarks it uses for orientation. The white discs are used as an experimental setup for evaluating our SLAM algorithm. In a real application the discs would be replaced by natural landmarks like corners, edges or characteristic gabor wavelet responses.

alt mobile robot doing SLAM

The mobile robot learns (maps) its environment while we move it manually through the building.


Here you can see the same procedure from the perspective of the mobile robot (image in the top half) and how the map is generated by the SLAM algorithm (bottom half). The cyan crosses depicted landmarks in the map, the red icon depicts the robot and the white line its trajectory. In the image the blue crosses show the landmarks extracted from the image. They should be centered in the white discs if the landmark extraction works (it does!). The cyan crosses are projected landmarks from the map according to the robot pose and landmarks estimates. If the estimates are right, the should be centered in the white discs too (they are!). When the robot is about to close a loop, the identification subalgorithm tries to align the most recent part of the map with another part. The best alignment is shown with yellow crosses both in the image and in the map. When the alignment is good enough, the aligned landmarks are accepted to be the same and the loop is closed in the map.


The final map.


Treemap's internal tree representation


Now the mobile robot can autonomously navigate through the building transporting a bottle and a book from one room to another.