How does gmapping detect loop closure?
I want to know the way to detect loop closure in gmapping package. I couldn't find loop closing method in gmapping papers.
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
I want to know the way to detect loop closure in gmapping package. I couldn't find loop closing method in gmapping papers.
gmappinp Parameter resampleThreshold
handles this.
~resampleThreshold (float, default: 0.5) The Neff based resampling threshold
Neff
drops in case of loop closures.
gmapping does resampling based on Neff
threshold in case of loop closure.
Check rbpf slam tutorial . Pictures is from these slides.
I tried using a Neff value of 0.8 and it seemed to make things better in terms of updating the map. According to the slides: "We only resample when Neff drops below a given threshold (N/2)" So setting resampleThreshold to 0.8 instead of 0.5 means resampling is done when fewer particles are needed to reach the sampling threshold.
Asked: 2014-12-18 15:06:10 -0600
Seen: 4,654 times
Last updated: Dec 19 '14
Corrected Odometry from GMapping / Karto?
Issue with setting tf in gmapping
How to change fake laser scan direction of rotation
Navigation Stack with gmapping
2D SLAM with gmapping and openni_kinect
Loading a prior map with gmapping
gmapping + iRobot Create + Hokuyo laser scanner
Its through the ICP (iterative closest point) scan matching technique. Read [here].(http://en.wikipedia.org/wiki/Iterative_closest_point)
Thank you for your reply. If loop closure is found, will all historical pose be recalculated? I want to get recalculated pose data. Is there a good method to do that?
Hey! did you end up with loop closures? I can't activate it. set resampleThreshold equal to 1, all the same the new map is superimposed on the old one
@infiniti@AlexR@Kislyy_homyak I am unable to get proper loop closure in gmapping slam, I set the resample Threshold equal to 0.8, were you able to solve this?