Procrustes analysis
d = procrustes(X,Y)
[d,Z] = procrustes(X,Y)
[d,Z,transform] = procrustes(X,Y)
[...] = procrustes(...,'scaling',flag
)
[...] = procrustes(...,'reflection',flag
)
d = procrustes(X,Y)
determines
a linear transformation (translation, reflection, orthogonal rotation,
and scaling) of the points in matrix Y
to best
conform them to the points in matrix X
. The goodness-of-fit
criterion is the sum of squared errors. procrustes
returns
the minimized value of this dissimilarity measure in d
. d
is
standardized by a measure of the scale of X
, given
by:
sum(sum((X-repmat(mean(X,1),size(X,1),1)).^2,1))
That is, the sum of squared elements of a centered version of X
.
However, if X
comprises repetitions of the same
point, the sum of squared errors is not standardized.
X
and Y
must have the
same number of points (rows), and procrustes
matches Y(i)
to X(i)
.
Points in Y
can have smaller dimension (number
of columns) than those in X
. In this case, procrustes
adds
columns of zeros to Y
as necessary.
[d,Z] = procrustes(X,Y)
also
returns the transformed Y
values.
[d,Z,transform] = procrustes(X,Y)
also
returns the transformation that maps Y
to Z
. transform
is
a structure array with fields:
c
— Translation component
T
— Orthogonal rotation
and reflection component
b
— Scale component
That is:
c = transform.c; T = transform.T; b = transform.b; Z = b*Y*T + c;
[...] = procrustes(...,'scaling',
,
when flag
)flag
is false
,
allows you to compute the transformation without a scale component
(that is, with b
equal to 1
).
The default flag
is true
.
[...] = procrustes(...,'reflection',
,
when flag
)flag
is false
,
allows you to compute the transformation without a reflection component
(that is, with det(T)
equal to 1
).
The default flag
is 'best'
,
which computes the best-fitting transformation, whether or not it
includes a reflection component. A flag
of true
forces
the transformation to be computed with a reflection component (that
is, with det(T)
equal to -1
)
[1] Kendall, David G. “A Survey of the Statistical Theory of Shape.” Statistical Science. Vol. 4, No. 2, 1989, pp. 87–99.
[2] Bookstein, Fred L. Morphometric Tools for Landmark Data. Cambridge, UK: Cambridge University Press, 1991.
[3] Seber, G. A. F. Multivariate Observations. Hoboken, NJ: John Wiley & Sons, Inc., 1984.