We have recently integrated the loop closure in our open source SLAM algorithm. This new feature can be used in LidarView to correct the SLAM drift. Below is an example of an outdoor mapping with loop closure of Cité international in Lyon (France). This video shows how efficient is our loop closure feature and how it accurately corrects the SLAM drift without any external sensor.
The loop closure consists in correcting the whole SLAM trajectory when some place is revisited after a period of time. We use this information to reduce the mapping noise.
What it does
The poses estimated in the SLAM algorithm are represented in a pose graph. Such a graph is created with its vertices encoding the poses (positions and orientations) and its edges encoding the spatial constraints between these poses. The loop closure is then added as a constraint in this graph, forcing the poses to align consequently. This optimization is performed using the G2O open-source library.
How to use it in LidarView
To use the loop closure in LidarView, you will need to enable the Use pose graph checkbox in the general parameters list. The Pose Graph parameters section will appear. Make sure that Logging timeout value is adequately set to keep states in the memory. Only the logged trajectory will be updated.
Whenever there’s a loop closure (meaning that the same place has been revisited), you will have to enable External detect loop closure frame and enter the Query frame index and the Revisited frame index, click on the Optimize Graph button and you are done! Your trajectory will be corrected and your maps will be updated accordingly.
The loop closure feature may be fine tuned to better fit your use case.
The automatic detection of the loop closure is coming soon, so stay tuned!
Use our SLAM to map the world!