What exactly do we do in non-rigid registration? I found many readings on Non rigid registration, also saw some videos but didn't find a clear explanation anywhere.

What I understood is the following

Rigid Registration: It is the alignment of two point clouds without changing the shape (ie only by rotation and translation). ICP algorithm is used. The closest point in the other point cloud is assumed to be the corresponding point.


Correspondence detection is not necessary for all the points.
All the points are applied the same transformation.
Iterative


Non-rigid registration: In this case, the shape of the point cloud might change. But what exactly are we doing? Are we finding the corresponding points using Spin Images, and then applying separate transformations (translations in this case) for every corresponding point?


Correspondence detection has to be done for all the points.
All the points are applied their separate transformations (might be same).
Not iterative: Just apply a translation


Piecewise rigid registration: We divide the non-rigid point cloud into many rigid parts and then apply separate rigid transformations per part. This lies between rigid and non-rigid registration.


Correspondence detection is done for only some of the points.
Same transformation is applied to those points in a particular rigid part, but different parts might have different transformations.
Iterative


Please correct me if I'm wrong somewhere.

Also, is there any role of SIFT in correspondence detection. I've seen some links for SIFT in 3D.
I have found this survey paper very useful:
http://ralph.cs.cf.ac.uk/papers/Geometry/Registration.pdf

It gives a categorized overview of the field. I think section 3 and 4 are the most relevant ones for you.