Noise filter
Menu
This tool is accessible via the Tools > Clean > Noise filter menu.
Description
The 'Noise filter' tool resembles a bit the S.O.R. filter but it considers the distance to the underlying surface instead of the distance to the neighbors.
This algorithm locally fits a plane (around each point of the cloud) then removes the point if it's too far away from the fitted plane. This filter can be basically considered as a low pass filter.
To estimate the underlying (planar) surface, the user can define a radius or a (constant) number of neighbors. The user also has the choice between a relative error (as S.O.R.) and an absolute error. Eventually isolated points can be removed in the same run.
Input
One or several clouds (selected in the DB tree).
Parameters
The user has to:
- choose either to extract a given number of neighbors around each point (which is only suitable for clouds with a constant density) or to specify a ball radius (the ball should be big enough to capture at least 6 points typically)
- input a max error (distance of the point to the fitted plane) so as to decide if a point is rejected or not. The error can be relative (as a factor of the neighbors re-projection error on the fitted plane) or absolute
- eventually, isolated points (i.e. with less than 3 neighbors in the sphere) can be removed during the process
Output
A new cloud, hopefully cleaner ;)
Note
Due to the way the algorithm works it is very powerful on flat surfaces (walls, etc.). However, especially if you use a too high kernel radius (or too low error threshold) it will 'eat' the corners. To save the corners or sharp edges one can try to run the algorithm repeatedly with a small radius and relatively high error threshold.