Cloud registration : Align with a specific rotating center

Feel free to ask any question here
Post Reply
N03T0P0
Posts: 2
Joined: Sat Sep 17, 2016 6:16 pm

Cloud registration : Align with a specific rotating center

Post by N03T0P0 »

Hello
First of all, as it is my first message on this forum, thank you very much for this excellent open source project.

I'm currently struggling with an alignment problem : I've got a few point clouds (under 10) of a linear structure (a road, acquired with a static TLS). Unfortunately I haven't got enough defined target to be able to align the clouds by targets, and the combination of a rough alignment followed by an ICP doesn't get me anywhere (I think the geometry of the project is too redundant). But I can find 1 tie point precisely defined in each consecutive pair of clouds, so, considering that the Z axis is correct, I thought that it may be possible to align the clouds by fixing that point and rotating the cloud to be aligned around the Z axis (using several points to define the best angle). The problem is I can't find a way to define the rotating center of the align command. Is there any way to do this?
Many thanks in advance for your answer
Attachments
RoadScan.gif
RoadScan.gif (245.46 KiB) Viewed 1866 times
daniel
Site Admin
Posts: 7710
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Cloud registration : Align with a specific rotating center

Post by daniel »

Well, it's clearly not meant to be used like this, but you could try the following:
- bring the two tie points at the same position (you can for instance pick them - with SHIFT + click or the point picking tool - then manually compute the corresponding translation, and eventually use this translation in the 'Edit > Apply Transformation' tool with the right cloud selected)
- start the Fine Registration (ICP) tool
- go to the 'Research' tab
- deselect all the 'Translation' checkboxes

This way CC shouldn't allow the clouds to translate. However all the ICP magic will seriously be compromised, therefore I don't guarantee any success ;). And it would be safer if both clouds were already roughly registered of course.
Daniel, CloudCompare admin
N03T0P0
Posts: 2
Joined: Sat Sep 17, 2016 6:16 pm

Re: Cloud registration : Align with a specific rotating center

Post by N03T0P0 »

Hello,

thanks for your prompt answer.
I'm quite aware that my solution is more of a backup one, but unfortunately I had to deal with the data I was given.

Your idea is quite good, I used some handmade technique in order to fix the rotation center. It's a bit of a "bricolage", but it's quite effective. I frst create a solid square box bigger than 1.5 times the point cloud. I resample it and extract the points at the 8 corners, and then create a new "BoxCloud". Then I translate the center of my boxcloud at the center of the invariant point of the pointcloud to be registered, and I merge them. This way, the center of the point cloud, and thus its rotating center, is exactly (10^-6) the point chosen to be invariant.

I can thereafter use the ICP deselecting the translation checkboxes...

It's clearly an alternative solution for a fine registration, but the use of a unique tie point as a rotation center in order to make the rough alignment is actually quite interesting, particularly when dealing with point clouds where you can consider that the Zaxis is originally correctly oriented.

Thanks again for your time
Post Reply