Ask Your Question
0

Costmap's obstacle does not clear properly under sparse environment

asked 2011-10-06 05:50:19 -0600

Demian gravatar image

Hi,

I would like to use Hokuyo to perform navigation under outdoor environment (open field for example). However, the obstacles detected before is not clearing out although the laser shows that there's no object. There is some hack that I can use for example http://answers.ros.org/question/1375/how-to-clear-older-costmap-just-before-updating but is there a more elegant way to do this? Perhaps through some parameter settings?

Thanks in advance.

edit retag flag offensive close merge delete

Comments

I know this isn't an answer, but I must warn you, in direct sunlight, I've determined that the Hokuyo scanner performs very poorly. It wasn't even feasible for us to use because of it's performance. I know this is just our analysis, but it could be a problem for you.
DimitriProsser gravatar imageDimitriProsser ( 2011-10-06 07:37:53 -0600 )edit
That depends, the URG models are basically non-usable in sunlight, but the UTM-30LX worked ok for us so far.
Stefan Kohlbrecher gravatar imageStefan Kohlbrecher ( 2011-10-06 18:14:24 -0600 )edit
Oh yes, I forgot to make that distinction. I apologize.
DimitriProsser gravatar imageDimitriProsser ( 2011-10-07 02:07:37 -0600 )edit
Ah, yes, the UTM-30LX is exactly the one we are using. So far so good even under direct sunlight. Can anyone shed some light to the way the costmap does the clearing?
Demian gravatar imageDemian ( 2011-10-07 02:37:53 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted
3

answered 2011-10-07 02:41:43 -0600

joq gravatar image

I don't believe there is any more elegant way.

When clearing obstacles, costmap_2d only trusts laser scans returning a definite range. Indoors, that makes sense. Outdoors, most scans return max range, which does not clear intervening obstacles. A fake scan with slightly shorter ranges can be constructed that does clear them out.

That hack is messy, but not particularly difficult.

edit flag offensive delete link more

Comments

This is something that's come up a few times. Missing returns don't always imply max range so the navigation stack makes no assumptions about them by default. As Jack suggested, the easiest thing to do is write a filter that inserts measurements into a clearing scan at some range.
eitan gravatar imageeitan ( 2011-10-07 07:16:14 -0600 )edit
2

answered 2015-05-01 13:34:52 -0600

mgerdzhev gravatar image

There is an option in the costmap sensor parameters that allows inf values to be treated as valid. See http://wiki.ros.org/costmap_2d/hydro/... Section 1.2.2

~<name>/<source_name>/inf_is_valid (bool, default: false)

edit flag offensive delete link more

Comments

Thanks for mentioning that. It was not available back in 2011.

joq gravatar imagejoq ( 2015-05-01 22:18:16 -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: 2011-10-06 05:50:19 -0600

Seen: 866 times

Last updated: Oct 07 '11