I'm search for some assistance in my application of Arun's algorithm for registration (fitting) of two 3D point sets using the Singular Value Decomposition: http://uploads.tombertalan.com/13spring2013/520apc520/materials/Closest%20Orthogonal%20Transformation%20using%20SVD/arun.pdf
The major point of this algorithm is that rotation (3 DOF) and translation (3 DOF) can be separated and the rotation solved for first by subtracting the centroid from each point set.
Using the SVD, the ideal rotation is determined as:
UEV'=svd(H) and H=covariance matrix.
The covariance matrix is a 3x3 matrix created from multiplying point set 1 by the transpose of set 2.
My issue is how can I reduce the number of rotations determined by this method? If I only want to allow best fitting through the rotation of two axis I imagine I must create my covariance matrix differently. Perhaps someone here can shed some light on this.
I have matlab code of my implementation but I'm not sure if it will be helpful.