Distance computation and M3C2

Feel free to ask any question here
Post Reply
carmen.suet
Posts: 3
Joined: Thu Nov 23, 2017 9:17 am

Distance computation and M3C2

Post by carmen.suet »

I am currently studying a breakwater monitoring project. I have two sets of data collected by UAV photogrammetry: (i) Initial data; (ii) Monitoring data. A DSM is generated from each set of data with 0.1m grid interval, and the points in two sets are in the same X Y coordinates.

Here shows the typical failure pattern of breakwater
failure pattern.jpg
failure pattern.jpg (200.46 KiB) Viewed 2208 times
I would like to know which distance computation method suits my case

I have tried to compute M3C2 distances, 2 versions of guess params are generated
Version 1: normal dia = 0.464511; projection dia = 0.929022; max depth = 46.998202
Version 2: normal dia = 1.858045; projection dia = 0.929022; max depth = 46.998202

For both versions, the result computed are with black dots (bad normal?). How the problem can be solved?
I have tried to increase the scale of normal diameter. However, as the scale value increase, the level of details decrease and the model is smoothed.
Normal scale=0.4.jpg
Normal scale=0.4.jpg (132.9 KiB) Viewed 2208 times
Normal scale=1.8.jpg
Normal scale=1.8.jpg (82.83 KiB) Viewed 2208 times
Thank you :)
carmen.suet
Posts: 3
Joined: Thu Nov 23, 2017 9:17 am

Re: Distance computation and M3C2

Post by carmen.suet »

This is a part-print of my dataset
breakwater.jpg
breakwater.jpg (155.61 KiB) Viewed 2204 times
I have also calculated the roughness of the initial data
roughness.jpg
roughness.jpg (227.08 KiB) Viewed 2204 times
Any help would be much appreciated.
daniel
Site Admin
Posts: 7711
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Distance computation and M3C2

Post by daniel »

What kind of 'normal calculation method' have you chosen? In your case it seems purely vertical normals (+Z) would work well (and it would be much faster).

The 'guess params' button only do some random samplings to guess the params. This is why it can give different results (however it seems quite extreme in your case ;). If your units are meters, then 0.4 is already quite big.

If you think having non vertical normals would really help, the it may be a better idea to compute them before calling M3C2 (with 'Edit > Normals > Compute'). You'll have more options, and you should be able to resolve the bad orientations more efficiently.

Don't hesitate to send me the data (cloudcompare [at] danielgm.net) if you want more directions.
Daniel, CloudCompare admin
carmen.suet
Posts: 3
Joined: Thu Nov 23, 2017 9:17 am

Re: Distance computation and M3C2

Post by carmen.suet »

Thanks Daniel

The above M3C2 results were calculated using default mode as normal computation method.
If I set the "normal computation method" as vertical (+Z), does it means the vertical distance between two surfaces?
How the parameters should be set in this case?

normal dia: does it matters if I set the normal as "vertical"?
projection dia: my point cloud density is with 0.1m grid interval, is it suitable for setting 0.5m as projection dia?
max depth: twice the maximum distance between the 2 clouds?
daniel
Site Admin
Posts: 7711
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Distance computation and M3C2

Post by daniel »

Indeed, if you force the Z+ normal, then it's more or less the vertical distance that will be computed.

You won't have to set the normal diameter anymore. And for the projection diameter, it should of course be greater than the density, but it also depends on the scale of 'features' you want to track and the level of noise (hopefully it should be smaller than your density anyway ;).

And for the max depth, if you set it to 2 times the maximum distance, then it's more than enough (one time is already enough ;). And setting it to a lower value is only useful if you need to save some time (or you know that greater distances are not meaningful).
Daniel, CloudCompare admin
Post Reply