Noise filtering and recognition of semi-spheres

To post any request/idea for new functionalities
Post Reply
Ander
Posts: 2
Joined: Mon Oct 04, 2021 11:22 am

Noise filtering and recognition of semi-spheres

Post by Ander »

Hello Daniel,

First, I would like to thank you for the (free) development of CloudCompare, it has been so far very useful during my PhD.

Currently I am working on a technique that record semi-spherical (half sphere) millimeter-scale. I use an optical microscopy for the recording (Depth-from-defocus technique) and a matting spray to improve contrast (~7 µm, Ra <2 µm); the point cloud is quite dense (~2M points in a box of 7x5x3 mm3).

Flowchart:
• Record point cloud
• Cloud segmentation to only keep the sphere
• Apply noise filter (Ideally)
• Fit sphere: using recognition algorithms (RANSAC or Tool/Fit/Sphere) to stablish the radius of the sphere
• Compute C2M distances between cloud and sphere

I have some questions:
1. Do you think filters like Clean/SOR or Clean/Noise-filter could be adapted to improve (clean) my data?
I have tried to use them but I lose most of the information or I am not able to remove points (filtering too small).

2. When using Tool/Fit/Sphere, as expected I get different radii as I iterate the process, however as for the associated RMS I don't understand the physical meaning of it (RMS), as it varies "randomly" with respect to the radius. Ideal radius 2.5mm (-7 µm spray).

Radius (mm) RMS
2.4781 0.00967106
2.4819 0.0113784
2.46647 0.0100649
2.46799 0.0109782
2.46347 0.0100925
2.49799 0.0106177
2.50047 0.0103855
2.42225 0.0111997
2.47268 0.00973837
2.41966 0.0105334
2.47153 0.0098168
2.46064 0.0105219
2.4318 0.011408
2.48223 0.00956892
2.44063 0.0105905
2.43939 0.0101143

STDEVA 0.024973887 0.00059706
AVERAGE 2.462325 0.010417509

3. Do you think it is possible to use RANSACsd in the recognition of the radius of the sphere? and measure the accuracy of the guess?

In short what do you think would be an accurate technique to filter and recognize the surface of spherical shapes with a roughness <2µm and slightly distorted edges?

Merci par avance :)
Ander
daniel
Site Admin
Posts: 7382
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Noise filtering and recognition of semi-spheres

Post by daniel »

1. I guess it depends on how clean the clouds already are? If they are too clean, then the SOR algorithm will indeed remove good points I guess.

2. Not sure what disturbs you here? The RMS is more or less stable (I mean, for a random process).

The RMS is just the square root of the average of the squared distances to the fitted sphere. Since each time the sphere center and radius is slightly different, this will give you a slightly different RMS (and radius).

If you know the radius of the ideal sphere, you can also create a sphere (File > Primitive factory) with the perfect radius. Then don't hesitate to increase the sphere resolution (to avoid facets). Move the sphere close to where it should be, and eventually use the ICP registration tool to improve the fit. At least it will give you a more stable RMS and an idea of how far your cloud is from the ideal sphere.

3. The way you did things (with lots of samples) is probably a good idea. The average is probably a robust estimate, and the std.dev. will give you an idea of the 'confidence'.

Another option, if the RMS seems a good measure to you, is to select the radius with the minimum RMS (as it's basically the 'best' fit).
Daniel, CloudCompare admin
Ander
Posts: 2
Joined: Mon Oct 04, 2021 11:22 am

Re: Noise filtering and recognition of semi-spheres

Post by Ander »

Hello Daniel,

Thank you very much for your reply, I appreciate it very much.

1. I agree with you, indeed, I think my clouds are too clean to use a SOR.

2. I miss the fact that the sphere center will also change. In fact, I didn't know that you could change the mesh resolution, which is a great news.

3. I will make a comparison between both results, using a mean estimate and the result with lower RMS.

Have a nice week :)

Ander
Post Reply