Hello,
I have 12 TLS scans of a room in .e57 format. Each has around 360M points. The interior of room remains the same, only the scanner is moved. The goal is to align them all and complete a single scene. First I've used PointPickins for coarse registration (which is good) and then ICP (which makes the alignment even worse). I've tried with down-sampling the resolution and different parameters but nothing worked. The scans are bad aligned (shift around 10cm).
What can possibly be wrong?
Thank you in advance.
Point cloud ICP inaccurate alignment
Re: Point cloud ICP inaccurate alignment
For ICP, you have to pay attention to the fact that by default all points are used (i.e. the algorithm will try too match all points of the to-be-aligned cloud with all points of the reference cloud!). If not (and that's probably the case), you have to reduce the 'overlap' parameter to roughly the number of points of the to-be-aligned cloud that probably have a matching point in the reference cloud. It's probably something like 20 or 30% I guess? You can try with a small number, and increase it little by little (anyway the algorithm just expects a multiple of 10%).
Daniel, CloudCompare admin
Re: Point cloud ICP inaccurate alignment
I've tried a numerous combinations with different overlap percentage: from 5 up to 100%, different Random Sampling Limit, number of iterations and RMS and still the scans are not properly aligned. Also, since each scan has 360M points, I've subsampled the number of points, but no changes in the result.
Re: Point cloud ICP inaccurate alignment
Yes, you don't really need to reduce the number of points before applying ICP, since it's already using a random sampling strategy at each iteration (by default with 50.000 points, but you may on the contrary increase this value if you have large scans).
The overlap should be the main explanation. Unless the overlapping parts have very different sampling density and pattern?
Would you be able to share an example with me maybe? (e.g. 2 scans that don't converge properly). You can send me a link to admin[at]cloudcompare.org
The overlap should be the main explanation. Unless the overlapping parts have very different sampling density and pattern?
Would you be able to share an example with me maybe? (e.g. 2 scans that don't converge properly). You can send me a link to admin[at]cloudcompare.org
Daniel, CloudCompare admin
Re: Point cloud ICP inaccurate alignment
I've adjusted the overlap and it worked, thanks :).
Now I've compared two different point clouds to the reference (TLS) using M3C2 and when I export the results for the Significant Change, the percentages (Class start and Class end) are always the same, just the Value varies. For example:
Class Value Class start Class end
1 4693685 0.000000000000 0.003906250000
2 0 0.003906250000 0.007812500000
3 etc all zeros for Value, and in the last one
.
.
256 7081824 0.996093750000 1.000.000.000.000
Not sure how to interpret this. For the M3C2 calculation I've used the registration error.
Now I've compared two different point clouds to the reference (TLS) using M3C2 and when I export the results for the Significant Change, the percentages (Class start and Class end) are always the same, just the Value varies. For example:
Class Value Class start Class end
1 4693685 0.000000000000 0.003906250000
2 0 0.003906250000 0.007812500000
3 etc all zeros for Value, and in the last one
.
.
256 7081824 0.996093750000 1.000.000.000.000
Not sure how to interpret this. For the M3C2 calculation I've used the registration error.
Re: Point cloud ICP inaccurate alignment
Hum, I'm not an M3C2 expert myself... maybe you'll have to contact the authors?
Daniel, CloudCompare admin
Re: Point cloud ICP inaccurate alignment
Is it possible to adjust the M3C2 cylinder length in CC?
Re: Point cloud ICP inaccurate alignment
That's the 'max depth' projection parameter.
Daniel, CloudCompare admin