How to optimize the lidarSLAM object poseGraph after removing incorrect loop closures?
5 views (last 30 days)
Show older comments
soorajanilkumar
on 21 Jun 2019
Commented: soorajanilkumar
on 22 Jun 2019
Hi,
I use the robotics.LidarSLAM offline SLAM example to build a map as in the example LidarSLAM implementation.
The problem is I detect some incorrect loop closures that mess up my SLAM. I found a way to remove the incorrect loop closures as shown below (assuming EdgeID :196 is the incorrect constraint) from the SLAM object slamAlg:
removeLoopClosures(slamAlg,[196])
Even after removing loop closure, the poseGraph remains the same (retains the incorrect shape). I would like to know if there is a way to reoptimize the poseGraph or updatePosegraph afterwards?
Evidently there is a way as it is used in the Matlab SLAM Mao builder application where you can correct/ignore loop closures and the map is reoptimized.
Thank you
Sooraj
0 Comments
Accepted Answer
Yiping Liu
on 21 Jun 2019
Calling removeLoopClosures does not automatically rerun the pose graph optimization, it only removes the LC from the pose graph object. You have to call optimizePoseGraph one more time on the pose graph.
More Answers (0)
See Also
Categories
Find more on SLAM in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!