Robotics StackExchange | Archived questions

Extend LaserScan angle with Inf

Hello,

Is there any ROS package ables to extend LaserScan angles (min and max) with Inf values ?

Here is the why I need this : I'm configuring the Navigation Stack in ROS1 noetic. For the local costmap, I have a Depth Camera. I convert the depth image to a laser scan. Unfortunately, when a cell is marked as occupied, the cell stays occupied in the local costmap until the camera observes it is effectively not occupied. It means that if the cell disappears from the field of view (because we turn around), the state remains occupied because unobserved free. If I simulate that the sensor is a 360 degrees sensor, It will free up unobserved cells, my expected behavior.

Thanks in advance !

Asked by vanmalleghema on 2023-03-16 05:08:35 UTC

Comments

From what you describe, you seem to actually be looking for a way for "unobserved" obstacles to be removed from the costmap.

I've typically seen that done based on a fixed "decay rate" (mark cells as empty after N update iterations / amount of time / distance travelled), or more complex observation models taking obstacle dynamics into account ("this obstacle is moving in that direction with velocity v, so after t time, mark cells in which obstacle shouldn't be any more as free").

I don't know of any packages implementing the second option, but the very nice spatio_temporal_voxel_layer natively supports a decay rate for clearing cells after a configurable amount of time/distance. There are probably more implementations which support decay rates.

Your proposed solution seems a bit like a hack/work-around. Perhaps going with a more fundamentally correct approach would be better.

Asked by gvdhoorn on 2023-03-16 07:01:15 UTC

Answers