Ask Your Question
0

Sick LMS100 small object filters

asked Feb 22

rplankenhorn gravatar image rplankenhorn
48 1 5

I am interfacing with a Sick LMS100 laser scanner and I am having problems filtering small objects (such as grass clippings). Are there any tools built into ROS that I could use to filter these objects out easily? If not, what would be the best method for filtering the objects out of the scans?

delete close flag offensive retag edit

2 Answers

Sort by ยป oldest newest most voted
2

answered Feb 23

DimitriProsser gravatar image DimitriProsser flag of United States
6817 23 59 126

updated Feb 23

I've had some success doing this by using PointCloud Library's built-in functions, namely Statistical Outlier Removal. It really depends where the majority of your points lie. If there's a lot of grass, this won't work as well. If the grass is sparse, this method could definitely improve your performance. Radial Outlier Removal might also work.

EDIT:

In order to get a ROS sensor_msgs/PointCloud2 to a pcl cloud, use the following code:

sensor_msgs::PointCloud2 cloud_in;
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
pcl::fromROSMsg(cloud_in, *cloud);

The cloud variable will now contain a pcl cloud that you can use with the PCL built-in functions.

link delete flag offensive edit

Comments

This looks like it could work. How do you suggest I implement it? I looked at the PCL page for ROS and the functions to convert from an ROS PointCloud to a PCL PointCloud and back are deprecated. Am I missing something?

rplankenhorn (Feb 23)edit

Use the fuction pcl::fromROSMsg(). The docs might be misleading. This function is not deprecated. The fuction point_cloud::fromMsg() is, but not pcl::fromROSMsg().

DimitriProsser (Feb 23)edit

Thanks again. If the fromMsg is deprecated, how do I convert the pcl::PointCloud back to a PointCloud2?

rplankenhorn (Feb 23)edit

pcl::toROSMsg() does the opposite of pcl::fromROSMsg()

DimitriProsser (Feb 23)edit
0

answered Feb 22

joq gravatar image joq
7304 29 68 133
http://www.austinrobot.co...

updated Feb 23

I've never found a solution to that problem.

The grass stops the laser, it gives a return, it looks like a solid object.

EDIT:

Thanks for the clarification. We have used obstacle grids to filter out intermittent noise with fair success.

link delete flag offensive edit

Comments

I know that if the grass isn't cut it will look like a wall. I am talking about if the area has been freshly mowed and also on a windy day, the grass clippings are flying around in front of the laser. They appear as random small objects.

rplankenhorn (Feb 23)edit

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[hide preview]

Question tools

Follow
1 follower

subscribe to rss feed

Stats

Asked: Feb 22

Seen: 90 times

Last updated: Feb 23