Compute the affine transform that best register two 3D point sets.
TRANS = fitAffineTransform3d(REF, SRC)
Returns the affine transform matrix that minimizes the distance between
the reference point set REF and the point set SRC after transformation.
Both REF and SRC must by N-by-3 arrays with the same number of rows,
and the points must be in correspondence.
The function minimizes the sum of the squared distances:
CRIT = sum(distancePoints3d(REF, transformPoint3d(PTS, TRANSFO)).^2);
Example
N = 50;
pts = rand(N, 3)*10;
trans = createRotationOx([5 4 3], pi/4);
pts2 = transformPoint3d(pts, trans);
pts3 = pts2 + randn(N, 3)*2;
fitted = fitAffineTransform3d(pts, pts2);
See also
transforms3d, transformPoint3d, transformVector3d,
fitAffineTransform2d, registerPoints3dAffine
Package: matgeom