|Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.|
How to run BoWP-Map on your robot!Description: This tutorial shows how to configure bowpmap_ros with any camera sensor(default: Kinect) on turtlebot2.
Keywords: bowpmap, bowpmap_ros, mapping, SLAM, topological mapping
Tutorial Level: INTERMEDIATE
The robot must be equipped with a RGB camera sensor either kinect (default) or any web camera. You should be able to publish the rgb images from this camera on a rostopic.
Step by Step method for BoWP-Map based loop closure detection
* Bring up your robot(turtlebot 2):
$ roslaunch turtlebot_bringup minimal.launch
* Run openni. Launch kinect to publish rgb images on a ros topic.
$ roslaunch openni_launch openni.launch
If you are using any web camera, publish its rgb images on a topic and edit the topic name in bowp_mapping.launch.
* To run bowpmap_ros node for topological mapping, launch bowp_mapping.launch:
$ roslaunch bowpmap_ros bowp_mapping.launch
* Teleoperate turtlebot to move the robot in the environment and capture the images:
$ roslaunch turtlebot_teleop keyboard_teleop.launch
* As you move the robot in the environment, the algorithm will create nodes and recognize the previously seen places known as loop closure detection. You can see the results in a Result folder which will be created in your output directory. Each image will be either used to create a new node or it will be a loop closure with existing node. All the results will be available in the form of rostopic also (Loop Closure decision rostopic is /loopClosure and Corresponding Node Image rostopic is /loopClosureImage).