ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How to clean up a noisy 3d point cloud?

asked 2019-01-28 18:44:14 -0500

Avner gravatar image


I am running ros melodic rtabmap rgbd_odometry. I'm getting a noisy point cloud, which I tried to filter by using the rtabmap_ros parameters:

cloud_noise_filtering_radius, cloud_noise_filtering_min_neighbors

which map to rtabmap parameters

/rtabmap/Grid/NoiseFilteringRadius, /rtabmap/Grid/NoiseFilteringMinNeighbors

I can see that the parameters are passed into the rtabmap process:

ps1 ros | grep -i rtabmap
opt/ros/melodic/lib/rtabmap_ros/rtabmap --udebug --Grid/NoiseFilteringMinNeighbors 80000 --Grid/NoiseFilteringRadius 90000.0 rgb/image:=/camera/rgb/image_color depth/image:=/camera/depth_registered/image_raw rgb/camera_info:=/camera/rgb/camera_info rgbd_image:=rgbd_image_relay left/image_rect:=/stereo_camera/left/image_rect_color right/image_rect:=/stereo_camera/right/image_rect left/camera_info:=/stereo_camera/left/camera_info right/camera_info:=/stereo_camera/right/camera_info scan:=/scan scan_cloud:=/scan_cloud user_data:=/user_data user_data_async:=/user_data_async odom:=odom __name:=rtabmap

I set the parameters to very big values (NoiseFilteringMinNeighbors 80000 NoiseFilteringRadius 90000.0), for sanity check.

I expect that the rviz will filter all the 3d points and that the point cloud will be empty, but I'm getting the same point cloud as when cloud_noise_filtering is disabled (NoiseFilteringMinNeighbors 2 NoiseFilteringRadius 0)

rosparam get /rtabmap/Grid/NoiseFilteringMinNeighbors 

rosparam get /rtabmap/Grid/NoiseFilteringRadius 

NoiseFilteringRadius_0__NoiseFilteringMinNeighbors_2 What should I do so that the cloud_noise_filtering takes effect?

Thanks, Avner

edit retag flag offensive close merge delete


Which topic are you visualizing in RVIZ? Those parameters only affect /rtabmap/cloud_map output.

matlabbe gravatar image matlabbe  ( 2019-01-28 19:00:29 -0500 )edit

ok. so I'm now looking at /rtabmap/cloud_map. I set: the Radius to 0.1 and MinNeighbors to 80000 My understanding id is that there must be 80000 in a radius of 0.1 (what units ?) Since the NoiseFilteringMinNeighbors number is big, I expect that all the points will be filtered but I still see points

Avner gravatar image Avner  ( 2019-01-28 19:36:52 -0500 )edit

units are in meters

matlabbe gravatar image matlabbe  ( 2019-01-29 15:43:32 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2019-01-28 19:48:00 -0500

Avner gravatar image

After removing the map rtabmap.db and starting fresh with extreme numbers:

NoiseFilteringRadius to 0.1, and NoiseFilteringMinNeighbors to 80000

I'm now not seeing 3d points in /rtabmap/cloud_map as expected.

Thanks for your help.


edit flag offensive delete link more

Question Tools

1 follower


Asked: 2019-01-28 18:44:14 -0500

Seen: 1,193 times

Last updated: Jan 28 '19