mirror of
https://github.com/introlab/rtabmap.git
synced 2026-10-13 13:29:52 +08:00
Created Robust Graph Optimization (markdown)
@@ -0,0 +1,34 @@
|
||||
## Introduction
|
||||
**RTAB-Map 0.10.6 required** (built with g2o or GTSAM)
|
||||
|
||||
Even if RTAB-Map has a [good](https://introlab.3it.usherbrooke.ca/mediawiki-introlab/images/b/bc/TRO2013.pdf) Recall/Precision performance for loop closure detection, it is not perfect! It may happens that some objects very similar (even identical) in different locations could cause wrong loop closure detections. Optimizing the graph with these wrong loop closures will add significant errors to the generated map. Hopefully, some approaches [1, 2] can deal with a lot of wrong loop closures. [Vertigo](https://openslam.org/vertigo.html) has been integrated in RTAB-Map to increase robustness to graph optimization. To use it, you must have RTAB-Map built with [g2o](https://openslam.org/g2o.html) or [GTSAM](https://collab.cc.gatech.edu/borg/gtsam) support (you can see that in the About dialog or with "WITH_G2O=YES" and "WITH_GTSAM=YES" on cmake). The next video shows a comparison without and with robust graph optimization.
|
||||
|
||||
|
||||
|
||||
## Configuration
|
||||
In the Preferences dialog under RGBD-SLAM panel and "Graph optimization" group, choose either g2o or GTSAM for the optimization algorithm, then click on "Robust graph optimization with Vertigo..." (default already checked):
|
||||
<screenshot>
|
||||
### ROS
|
||||
If you are using ROS, you can set the parameters of the rtabmap node like that in a launch file:
|
||||
```xml
|
||||
<node name="rtabmap" pkg="rtabmap_ros" type="rtabmap">
|
||||
<param name="RGBD/OptimizeStrategy" type="string" value="2"/> <!-- g2o=1, GTSAM=2 -->
|
||||
<param name="RGBD/OptimizeRobust" type="string" value="true"/>
|
||||
...
|
||||
</node>
|
||||
```
|
||||
|
||||
## Example
|
||||
The video above can be reproduced with this database: stereo_robust_optimization.db (xx MB).
|
||||
|
||||
1. Open RTAB-Map.
|
||||
2. Open Preferences dialog.
|
||||
3. Restore default settings (Preferences->General Settings->"Reset all settings").
|
||||
4. Click on Source panel: set source from database, scroll down and select the database above and click on "Yes" to use odometry saved in database.
|
||||
5. Click on Advanced (bottom left) to show up the RGB-D SLAM panel, then click on it. Set the panel as in the screenshot of the previous section (with g2o or GTSAM).
|
||||
6. Close the Preferences dialog.
|
||||
7. Create a new database (File -> New database) and click "Start".
|
||||
|
||||
You should then see mapping like the video above.
|
||||
|
||||
<screenshot>
|
||||
Reference in New Issue
Block a user