tu-darmstadt-ros-pkg / hector_slam

hector_slam contains ROS packages related to performing SLAM in unstructed environments like those encountered in the Urban Search and Rescue (USAR) scenarios of the RoboCup Rescue competition.
http://wiki.ros.org/hector_slam
645 stars 453 forks source link

Map overlay error #82

Open jaimelopez386 opened 4 years ago

jaimelopez386 commented 4 years ago

Hi, after updating the launch files to not include basefootprint I have run into an issue when running the simulation using turtlebot3 waffle pi, gazebo, and rviz. Everything works fine until the turtlebot rotates which causes a new map to overlay the previous map. This happens every time the robot rotates and results in inaccurate mapping. I am not sure if this a transform error or what is going on since there are no actual errors that are displayed. Thanks https://user-images.githubusercontent.com/70869663/95786852-3d1a7c00-0c8d-11eb-9350-e39293d8eb18.png

marcelino-pensa commented 3 years ago

@jaimelopez386 , I just noticed a similar issue... it seems to me that hector does not iterate enough and returns from its scan matching too early... As a test, could you update the file in hector_mapping/include/hector_slam_lib/slam_main/MapRepMultiMap.h as follows: In line 125, the last parameter for matchData is 5, update it to 10 (or an arbitrarily large number). Similarly, in line 128, update the last parameter of matchData from 3 to a larger number

These parameters limit the maximum number of iterations that the solver goes through before returning If it works for you, I think that it would be good to expose these parameters as launch file parameters, as these can be application-dependent