Ask Your Question
2

Multiple Robots with slam_gmapping

asked 2012-02-25 18:53:40 -0600

pmwalk gravatar image

updated 2014-01-28 17:11:29 -0600

ngrennan gravatar image

I'm not sure about this, but I gather that the slam_gmapping package cannot combine the laser scans from multiple robots?

If this is true, does anyone know if there exists a ROS slam package that does this? I've done a bit of searching but haven't been able to find one.

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
9

answered 2012-02-26 00:29:11 -0600

Ben_S gravatar image

I am not sure about other SLAM packages that would support multi-robot mapping, but i can confirm, that GMapping is not capable of doing this.

In fact i would guess that none of the particle filter based SLAM variations (like GMapping) is suitable for this use case. Since the map you actually see is only the estimate produced by the currently highest rated particle there would be some kind of combinatory explosion of the needed particle count if odometry-noise from two or more robots has to be estimated. And since the initial offset of the starting points of the robots is not known, even more particles with guesses of this offset would be needed for a global map to align properly if one robot visits an area the other robot has already mapped.

You may have a look at graph-based approaches that maybe incorporate visual features that are globally unique (e.g. SIFT, SURF). But i really have no idea if there is a algorithm like this implemented in ros already. I would really appreciate if you could keep us posted about your findings later on.

edit flag offensive delete link more

Comments

That was my intuition, thank you! If I do find some solution or alternative I will certainly post it back here.

pmwalk gravatar imagepmwalk ( 2012-02-26 06:59:14 -0600 )edit

Please mark the answer as accepted with the checkmark at the left. So others will know you have an acceptable answer.

tfoote gravatar imagetfoote ( 2012-03-01 19:56:04 -0600 )edit

Ah thanks, sorry about that.

pmwalk gravatar imagepmwalk ( 2012-03-01 19:58:45 -0600 )edit
1

answered 2012-02-26 03:04:26 -0600

updated 2012-03-01 15:06:48 -0600

No, slam_gmapping doesn't work with multirobot systems. I have tried it with stage, the SLAM just doesn't start to work, hopefully we will have some improvement in fuerte (March 2012 release).

Probably the reason that slam_gmapping fails is that the communication between two (or more) robots is ambigious.

edit flag offensive delete link more
0

answered 2014-06-29 07:24:56 -0600

Jonas gravatar image

This is a very old topic. But I have constructed a node that can take in laser and odom information from another robot and use that information to add it to it's own map. This is based on the principle of letting a virtual robot run back through the traversed path of the other robot. The implementation is still crude and obviously needs some polishing, but it works very well. You can either use a decentralized approach where the robots incorporate the data of all the other robots the entire time or in intervals (or upon encounter) or do it centralized and have 1 pc/or robot take in all the lasers and odom of the robots and build 1 map from it. What you essentially have to do is subscribe to the odom and laser of all the robots and republish them under the same namespace. You do have to keep track of the timings ofcourse, you need to restamp the message to the current timeframe so that GMapping doesn't reject them. It's a bit of work, but certainly doable.

edit flag offensive delete link more

Comments

Can you please give us the name and the source code of your node ?

assil gravatar imageassil ( 2014-11-15 05:20:52 -0600 )edit

I know it's been over a year, but this node would be very appreciated. I'm running into a similar problem and would love to see your code. Thanks

timisplump gravatar imagetimisplump ( 2015-11-19 14:47:39 -0600 )edit

Yes, please, do you have the node, despite the fact that three years have passed?

Edward gravatar imageEdward ( 2017-05-05 06:48:52 -0600 )edit

FYI, as part of the mrpt_graphslam_2d package, we have implemented an pose-graphSLAM variant that implements multi-robot graphSLAM. For more on this see:

https://github.com/bergercookie/mrpt_...

bergercookie gravatar imagebergercookie ( 2017-05-19 04:42:05 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 2012-02-25 18:53:40 -0600

Seen: 1,842 times

Last updated: Jun 29 '14