Professional Documents
Culture Documents
i (pi - Ra, - v)‘. Here trace (MrR) is equal to the sum of the components on
,=1 the main diagonal of the 3 * 3 matrix M’R.
where n (n 2 3) is the number of markers and v is the The Lagrangian multiplier theorem is used to determine
translation vector. Variables were the three components of v the matrix R and the vector v that minimize .f under the
and the three Eulerian angles in which R was expressed. constraint condition (1). To use this theorem a 3 * 3 matrix S
Selvik needed an initial approximation for these variables. of Lagrangian multipliers and a function F of v. R and :i are
Our method comes close to Selvik’s method. The ex- introduced :
F(v,R, S) = f(v, R) + trace (S(RrR - I)). (8)
*Received 26 June 1979. The above mentioned theorem now states that, if F = F(v, R.
391
392 Technical Note
S) is stationary for some v, R and S then f=f(v,R) is non-coplanar markers are used. Ifall markers are lying in one
stationary and (1) is satisfied for that v and R. Stationary plane then Do3 = 0, whereas D,, = I),, = 0 if all markers are
points of F(v, R, S) are found by requiring the first variation collinear.
6F of F(v, R, S) to be zero for each variation 6v, 6R and 6S of v, With (19) and (21) the eigenvalue problem (14) can be
R and S: written in a form that is more suitable for further analysis:
6F = 2(Ra + v - p)r (SRa + 6v) VD2VT = V,D:V,’ + M,TE + E’M, + ETE. (22)
- 2 trace (MrGR) + trace (GS(R’R - I)) From this it is clear that V = V,, D = D, give a solution of (14)
+ trace(S(GRrR + RrJR)). (9) if E = 0. In practice, E will be unequal 0 but very small
compared with M,. Then V, and D, will be realistic
Requiring 6F = 0 for each SS results in the constraint
approximations for Vand D. Using (22) and (20) it is possible
condition (1). Next, 6F = 0 for each 6v gives an equation for
to establish bounds for the differences between Vand V, and
v:
between D and D, if bounds for the error vectors a,, a,, .,6,
v = p - Ra. (10) are given. This will not be analyzed here.
Finally, using (10) and trace (SGR’R) = trace(S’RrdR) the The rotation matrix R can be determined reliably from (16)
requirement 6F = 0 for each SR leads to the matrix equation if and only if at least two of the eigenvalues D,, 2 Dz2 > D,,
differ significantly from zero. From the foregoing it is seen
M = +R(S + ST). (11) that this will be the case if three or more non-collinear points
It is easy to solve equation (11) for the symmetric matrix are used. From (16) follows:
&S + Sr). With RVD= MV= [m, m2 mJ, (23)
S = i(S + ST), (12) where mi (i = 1,2,3) represents column i of Ml! As D is a
and with M = RS and equation (1) it follows: diagonal matrix mi is equal to column i of RK multiplied by
D,,. So, if D,, and D,, differ significantly from zero (and this
S2 = SrRrRS = MTM. (13) will always be true in realistic situations) column 1 and
MTM is a symmetric matrix with eigenvalues D:i 2 D& column 2 of RVare equal to (l/D,,).m, and (l/D,,)‘m,
2 0:s 2 0 and a corresponding set of three orthonormal respectively. The third column of RV follows from the
eigenvectors. The eigenvalues are arranged on the principal observation that RV is orthogonal. Therefore the third
diagonal of a diagonal matrix D2 while the eigenvectors are column of RV is equal to the cross product
considered as the columns of a 3*3 matrix V From the (l/Dii ‘D,,)m, *m2 of the first two columns. So, the final
definition of eigenvalues and eigenvectors it is seen that result for R is given by:
MTM = S2 = VDZVT. ) VP = I. (14)
km,
A solution for the symmetric matrix S is therefore given by 22
S = VDVr’, (15) For the calculations of R and v are sufficient: (4) and (5) to
determine M, a subroutine for the eigenvalues and eigenvec-
where the signs of the principal diagonal components D, ,,
tors of MTM, the calculation of the columns m,, m2 and m3 of
I>,, and D,, of D are up to now indeterminate. Insertion of
MVand finally (24) to determine R and (10) for v.
this solution into M = RS gives :
.
M = RVDVT.
The signs of D,,, Dzz and D,, follow
thatf(v, R) must be minimal. With (7), DETERMINATION OF THE HELICAL AXIS
f=fo - 2 trace(VDVr) =fO - 2(Dii + D,, + D,,), (17) In the foregoing the movement of the body was characte-
and in order to make f minimal D,,, D,, and D,, must be rized by the rotation matrix R and the translation vector v.
chosen non-negative. Such a movement can also be considered the result of a
To elucidate the geometrical significance of D, Ir Dzz and rotation through an angle 4 about the helical axis and a
D,, the measured vector pi (i = 1,2,. . ., n) is related to the translation r along this axis. Let n denote a unit vector along
exact vector qi = Rat + v by writing: the helical axis and let s be the radius vector of a point on this
axis, such that II and s are orthogonal:
p,=Ra,+v+h, fori=1,2 ,..., n. (18)
nTn = 1; n’s = 0. (25)
The error vector ai is due to measuring errors and to the fact
that the body is not perfectly rigid. Insertion of (18) in (4) and The sense of rotation and the direction of n will correspond
(5) leads to : with the right-hand screw rule and 4 will always be non-
negative and less than or equal rr rad.
M = R(M, + E), (19) The connection between both descriptions of the move-
where M, depends only on the radius vectors aI, a2,. .,a. ment of the body is given by the requirement that
before the movement while E depends on R, a1, a2,. .,a. and
6,, 62, . . ..a.: Rw+v=w+tn+(l-cosd~)n*(n*(w-s))
+ sin 4n * (w - s) (26)
M. = i ji ((ai - a)(% - a)? ;
must hold for every vector w. Consequently:
v=tn+(l-cos4)s-singh*s. (27)
E = kitI{RTbi(a,- a)‘}. (20j
Rw = cos dw + (1 - cos 4) nnTw + sin &I * w for every w,
(28)
M. is a symmetric, (semi) positive definite matrix. Therefore,
M. can be written as where the last equation is seen to be equivalent with :
M. = V,D,V;; V,V,‘= I, (21) $(R - RT)w = sin qh * w for every w (29)
where V, is the matrix of eigenvectors of M, and D, is a f(R + R’) = cos 4I + (1 - cos q%)nnT. (30)
diagonal matrix with the non-negative eigenvalues D,,
2 D,, z DOS 2 0 of Me It can easily be proved that all The matrix $(R - RT) is skew-symmetric and it can easily
eigenvalues are unequal zero if and only if more than three be shown that sin #n is given by :
Technical Note 393
1
R 32 - R,, REFERENCES
Chao, E. Y. and Morrey, B. F. (1978) Three-dimensional
sin&r = i R,, -R,, (31)
rotation of the elbow. J. Biomechanics 11, 57-73.
[ R1, - R,, Kerschot, M. and Soudan, K. (1978) Objective recording of
human gait. A quantitative evaluation of two techniques:
With n’n = 1 and sin(b 2 0 this equation can be solved for
elcctrogoniometry and interrupted light photography.
sin 4, which results in :
Meeting of the European Society of Biomechanics.
sin4 = :J(R,: -R,,)’ + (RI3 - R31j2+ (R2, - R,$-. Brussels.
(32) Kinzel, G. L., Hall, A. S. Jr. and Hillberry. B. M. (1972)
Measurement of the total motion between two body
Apart from this cos 4 can be calculated from (30) by adding
segments - I. Analytical development. J. Binmechanics 5,
up the components on the principal diagonal of the matrices.
93- 105.
Then :
Rodrigues, 0. (1840) Des lois giometriques qui rigissent les
?cos$ + (1 - cosC#I)
trace(nnr) = trace&R + R’)), deplacements d’un systeme solide dans I’espace, et de la
(33) variation des coordonnees provenant de ces deplacements
and because of trace (nnr) = n’n = 1 it follows: consider& indipendamment des causes qui peuvent les
produire. J. Math. pures appl. 5, 380-440.
cosd = i(R,, + R22 + R,, - 1). (34) Selvik, G. (1974) A roentgen stereophotogrammetric method
Both equations (32) and (34) can be used to calculate 4. For for the study of the kinematics of the skeletal system.
numerical reasons it is preferred to use (32) if sin #J 2 $ ,,/2 Thesis. Dept. of Anatomy, Univ. of Lund, Lund, Sweden,
and (34) if sin r#~> f J2.
As soon as sin 4 is known n can be determined from (31) if NOMENCLATURE
sin4 f 0. From a numerical point of view this is not a average of ai. al,. .,a,
recommendable if 4 approaches K. With known cos+ it is a, (i = 1,2,. .,n): radius vector of marker i before the
preferred to use (30) if 4 > :z. While: movement
(1 - cos4)nnr = $lR + R’) - cos@ = [b, b2 b3], hi column i of r(R + RT) - cos 41
(35) D diagonal matrix of square roots of eigenvalues of
MTM
it is seen that each of the columns b,, b, and 6s of the matrix
DO diagonal matrix of eigenvalues of M,
&(R + R7) - cos 41 is a vector in the same direction as n. So.
Dll,D,,,D,,: square roots of eigenvalues of MTM
apart from a factor, n is equal to b,, b, and bS. Let bi (i = 1,2
D,,, D,,. D,, : eigenvalues of M,
or 3) be the column with the greatest length ,/bT bp Then n is
error matrix, see (20)
determined by :
f” to be minimized sum of squares
F likel; but with Lagrangian multipliers
b[bi = max(b:b,, bib:. bib,); n = + __-bi. (36) I unit matrix of order 3 * 3
Jb: b;
M matrix of order 3 * 3, see (5)
The sign of n must be chosen such that sin 4 in (31) is positive. M0 matrix of order 3 * 3, see (20)
The translation t along the helical axis and the radius ml column i of M V
vector s of a point on this axis follow from (25) and (27): n number of markers
t = n’v (37) n unit vector along helical axis
sin 4 P average of Pi, p2,. ., p.
s = - in * (n * v) + n * v. (38) pi (i = 1.2,. ., n) : measured radius vector of marker i after the
2(1 - cos.4) movement
The relations (36), (37) and (38) hold if 4 # 0. If 4 = 0 there qt (i = 1,2,. .,n): exact radius vector of marker i after the
is no rotation at all. In that case the helical axis is not defined movement
and therefore n, s and 1are not unique. If+ = Oand v # 0 then R rotation matrix
one can put : S radius vector of a point on the helical axis
s matrix of Lagrangian multipliers
1 s symmetric part of S
t=JyTy; n=-v; s=O. (39)
t t translation along helical axis
v translation vector
If (p = 0 and v = 0 there is no movement at all. This case is of V orthogonal matrix of eigenvectors of MTM
no interest, matrix of eigenvectors of M,
v, orthogonal
Sufficient for the computation of n, 4, s and r are (32) and w arbitrary vector
(34) for 4, (31) and (35) until (38) for n, t and sif 4 # 0 and (39) angle of rotation about the helical axis, 0 2 4 2 n
9
if f$ = 0.
Si (i = 1,2,. .,n): error vector, equal to pi - qi
DISCU!SSlON
Superscript T denotes transposition