-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RadiusOutlierRemoval<PCLPointCloud2> implementation is slow and confusing #2816
Comments
Thank you for exposing the case. It looks indeed like a bug. Please include the unit test you wrote in the resulting PR from this issue.
Agreed and I believe the general guideline now is to not extend support to algorithm specializations of I'm ok in doing so with the objective of reducing maintenance. |
I'm all in favor of reducing code duplication, confusion, and maintenance burden. I'm not sure, however, that these specializations should be deprecated. For example, @stefanbuettner commented here:
Stefan, could you perhaps explain why these were important for you? |
Hey there, it's been a long time but I think I was using PCL in a ROS node where I received a |
Marking this as stale due to 30 days of inactivity. It will be closed in 7 days if no further activity occurs. |
The |
Sadly, this isn't true wrt the actual impl. There's a copy inside the implementation, but the overall class provides good value in a processing pipeline |
Hi,
Context
I had some troubles with the implementation of the
RadiusOutlierRemoval<PCLPointCloud2>
filter :it doesn't have the same behavior as the templated
RadiusOutlierRemoval<PointT>
implementation.I wrote the following unit-test to show the problem :
Code to Reproduce
Current Behavior
This test fails for the
RadiusOutlierRemoval<PCLPointCloud2>
filter.Moreover the
RadiusOutlierRemoval<PCLPointCloud2>
implementation is a lot slower in my test cases :For a dataset of ~12000 points from a 3D Lidar I measured the following timings :
Possible Solution
It is confusing to have two different implementations for the same filter.
I think the best solution that doesn't break the API for existing projects would be marking the
RadiusOutlierRemoval<PCLPointCloud2>
implementation as deprecated, explainingRadiusOutlierRemoval<PointT>
should be used instead.If you agree with this change I can make a pull request.
The text was updated successfully, but these errors were encountered: