Page 1 of 1

Known primitive to point cloud registration/alignment?

Posted: Wed Apr 14, 2021 5:13 pm
by Evan
Hello again,

I took a scan of a cylindrical barrel. I have measured the radius and height of the barrel precisely (in real life). From the primitive factory, I can generate a cylinder based on these specs. Is there a way to register the primitive to the point cloud without eyeballing?

RANSAC does a great job creating cylinders that are virtually the same radius and height as I have measured. However, for sparse scans far away, or scans taken with a more unreliable sensor such as the Microsoft Kinect, RANSAC can produce some cylinders that are not exactly what I know to be true.

Re: Known primitive to point cloud registration/alignment?

Posted: Thu Apr 15, 2021 6:25 am
by daniel
You can roughly register the primitve with the cloud (with the 'Edit > Translate/Rotate' tool). Then use the 'Fine Registration (ICP)' tool (with the primitive as the reference entity - it's always possible to invert the transformation later).

Re: Known primitive to point cloud registration/alignment?

Posted: Fri Apr 16, 2021 1:34 am
by Evan
Thanks, I thought I had tried that, but I guess the primitive was not the reference entity. Ideally, I'd want to keep the point cloud fixed, but this might also work.

Re: Known primitive to point cloud registration/alignment?

Posted: Fri Apr 16, 2021 10:50 pm
by WargodHernandez
If you want the point cloud fixed, just apply the inverse of the transform to the cloud and the primitive after alignment and they should move together back to the original cloud location.