Robotics StackExchange | Archived questions

Why HectorSLAM gets better results from a rosbag that in live time?

Hi!!!

I've been doing proves with the turtlebot using the Kinect sensor with HectorSLAM and in live time, and the result was that HectorSLAM could not generate the map of a small environment, because it loses the robot pose by the rotations. I've read that HectorSLAM doesn't work good with the Kinect, so I created a rosbag of /scan and /tf while I was using Gmapping to build a map in live time, and then I used this file to run HectorSLAM with the same parameters that in live time. The surprise for me was that HectorSLAM generated a good map with this file and I still can not understand why? If it supose that the file has the same data that if I run HectorSLAM in live time.

I hope that someone can explain me why happens this situation please. Thanks in advance!!!

EDIT:

I attach the map generated by HectorSLAM in live time: HectorSLAM in live time

The map generated with a rosbag of the same environment: HectorSLAM with rosbag

Asked by Diana_Elyza on 2017-05-20 22:48:58 UTC

Comments

What sort of CPU are you running this on? Have you monitored the CPU usage of each node to see if you have enough CPU cycles to run the map-building process?

Asked by ahendrix on 2017-05-22 13:18:22 UTC

I've running this with an Intel core i7 with 8 cores and I don't know how to see the CPU usage of each node. Thanks by your attention!

Asked by Diana_Elyza on 2017-05-22 13:21:41 UTC

I might miss something here, but where do you get the scan topic from? From Kinect sensor?

Asked by DavidN on 2017-05-27 06:43:34 UTC

And btw, HectorSlam can still work with Kinect if the area is small enough and you do some filtering of data from Kinect

Asked by DavidN on 2017-05-27 06:44:24 UTC

Thanks DavidN by your attention!! Then, HectorSLAM does not do the filtering of data? Because I only keep the data from /scan and /tf topics in the rosbag and then I replayed it with the default parameters of the algorithm. I did not do a filtering of data, but the area is small.

Asked by Diana_Elyza on 2017-05-29 10:00:13 UTC

I tried this algorithm with a rosbag that I generated of another environment bigger but HectorSLAM collapsed, it only did a map with the small environment with the rosbag, but it can not generate the map in live time. I can not understand this situation, if it supose that is the same data no? Thanks

Asked by Diana_Elyza on 2017-05-29 10:06:04 UTC

So HectorSLAM collapsed when you used the bag of a big environment? Is it ok if you upload the rosbag so I can try?

Asked by DavidN on 2017-05-29 21:42:56 UTC

Thanks again DavidN! HectorSLAM sometimes collapsed with big environments or it generates small portions of the map, but it always loses the robot pose. With small environments, it generates the map with the rosbag, but I stop the replay of the bag when it begins to generate errors.

Asked by Diana_Elyza on 2017-05-30 10:53:23 UTC

I upload the rosbag files of a small environment and a big environment, the first is called "Aula3V3" and the second "DCCPlantaAlta26Abril17", this is the link: Rosbags

Thanks by your help!

Asked by Diana_Elyza on 2017-05-30 11:00:25 UTC

Answers