Length Normalization for Rigid Body Movement

Article. Length Normalization for Rigid Body Movement

The segment constraint algorithm corrects the motion data such that the length of each segment is nearly equal to the segments mean length over the original motion data.

3D conference

Published on Thursday, July 1, 1993 by Gideon Ariel


Congress of the International Society of Biomechanics

July 1st – 4th, 1993 Parc du Futuroscope, Poitiers, FRANCE

ANENT SECRETARIAT AOud. PhD, P. End. S7mpooam m Aaalym of Hmmor Mammas 4t nela *


cue Su~Ca6moo

PQ H3T ICS. CANADA 1014) 345-4740.343-7934 1(314) 345.4401



Slivers K A. , Ariel G. B. , Voroblev A. G. Wise J. , Probe J. D.

International Center for Biomechanical Research, P.O.Box 1169 La Jolla, CA., USA


A Segment Length Normalization algorithm exists for the motion data of a linkage system of line segments. (Ariel et al., 1993). Given each segment’s endpoint coordinates with respect to a common reference coordinate system, the segment constraint algorithm corrects the motion data such that the length of each segment is nearly equal to the segments mean length over the original motion data. The algorithm also ensures that each position of the corrected linkage system is as close as possible to the original linkage position in the least squares sense. This algorithm was demonstrated to improve measurement accuracy for a video based measurement system.

For some biomechanical studies the investigator does not wish to assume that each body segment is a line segment and that adjacent segments have relative motion which is spherical. If these assumptions are not made, the segment length constraint algorithm does not apply. If the position history of a triangle which moves with a rigid body is known, the rigid body’s six degree of freedom motion is completely described without assumption. The purpose of this paper is to present a length constraint algorithm for the motion history of triangles. This length constraint algorithm will correct measured motion data for triangles such that the length of each side of the triangle is nearly equal to the side’s mean length over the original motion data.

The algorithm will also ensure that the triangle’s vertices are as close as possible to their original location in the least squares sense. The ability of the algorithm to correct for

measurement errors is also investigated.


In the following, vectors are displayed with an overbar

symbol. Let (-0,v’,v2) be the coordinate vectors of the vertices of

the triangle provided by a measurement system at some instant in time. Let (1�’, 1�’, 1’t) be the mean lengths of the triangle’s sides

over all measured positions. Let (U-0, w 1, w 2) be the desired new

triangle which satisfies length constraint Length constraint for triangles may be posed as a constrained optimization problem.


2 2



g01(w’)= 0 _(101)2_l

– w h I2

g02(w1)= 0 <102)2- u-0=”” -=”” 1212=”” 9,2(w’)=”0′(11)2-1-1″ _w2=””>

The Kuhn-Tucker conditions must necessarily be satisfied at the desired w’ .Thus, the three equality constraints given above must be equal to zero and


These Kuhn-Tucker conditions yield a system of 12 quadratic equations and 12 unknowns in (w’ ,Ao,,Z02,x’12). Analytic solution of this system is difficult. Restating the length constraint problem for triangles in terms of rigid body kinematics greatly simplifies the analytical solution procedure. Summarizing the necessary steps:

� Construct a triangle (-o,J’,J2) which has the desired side lengths (1�’, 102, N’}. Define the construction such that the P triangle is close to the original 71 triangle.

� Perform a rigid body displacement which positions V as close as possible to v i in the least squares sense. Since construction step I places s’ close to v’ , the equation for infinitesimal rigid body displacements will provide a close approximate solution which is linear.

Consider triangle (b) with vertices (V-0�;V1,;72,) with

respect to (wit) reference system r as illustrate in Figure 1. V7 is the location vector of vertex j wit system r. The set of v” vectors is the data given by the measurement system which is to be corrected for length constraint.


Figure 1. Triangle coordinate system definition

Subject to:

[b] is the homogeneous position matrix of the triangle wit r.

{b} =I (0-,b), 1 (lb 0 ), (P), (k 0b)r

where {(o ).; (t b ).; Vb ).: (k b ). } are column vectors as defined in equation set 1.


(Jo)r -(or-vlr)/INV’r-vlr4

(kb)r=(v r-V”)0(v2r-vl’)/~(V ‘-v’)�(Y2′-V”)I(1)

(ib), =(?)r �(kb)r

The coordinates of each vertex wrt system b is obtained from equation 2.

1 1 1 ~-1I 1 1 1

1 vlb V 2bl = (b1 ~-0r Vlr V2r The inverse of [b] is given in equation 3.

U’ denotes matrix transpose.

Application of equation 2 yields vertex vectors of the following form.

v b _( 0 ;v6 ;O)

vlb =( 0 ;?;O) (4)

j2b =(vib;2b;0)

Thus, much of the following analysis can be planar.

The triangle must first be reconstructed such that each side is equal to the sides mean length (I-‘, I-‘, I”). Let 1-0 be the reconstructed position of the triangle.

The measured and reconstructed triangles are illustrated in Figure 2.

The equations for each reconstructed triangle vertex is given in 5.

Sib =ylb

b = V lb +(01�’,O) (5) +26 =(xr,0)


Y= {(112)2_(io2)2_+,(S?)2_(40)2}/(2��(4` -4A,)}

X = -(112)2-(y – sn2

The sign of x is always negative due to the definition of b given in equation set l.

Since the reconstructed triangle is very close to the original triangle, a small displacement of the reconstructed triangle should place this triangle as close as possible to the original triangle in the least squares sense.

The small displacement equation is given in equation 6.

ajb = S� sib +,i +nib Q = 0, 1 and 2) (6)

where 6 is the small rotation vector and s is the translation vector. a ands must be found to position a as close as possible to the original triangle. a b is the desired triangle wrt b which satisfies length constraint

Equation 7 I.-yn.sents the deviation of the reconstruction triangle from the original triangle.

2 ~ ~2

E=ZAO�JJb +r+dP-VJbII (7)


Minimization of equation 7 provides the desired s and s . Since equation 7 represents the deviation firom an exact solution to a system of 9 independent linear equations with 6 unknowns, the minimization will provide a unique 6 and r .

The minimum is found by setting the gradient of E equal

to 0.

VE(S,i) = 0 (8)

Intuitively, the displacement should take place in system b’s k plane. Application of equation 8 yields the following system of linear equations.

[bV’ _

1 0 0


-(a)r'(Jb)r ((P)r)’

-(06)r �(P)r ((P),)’

(2) (3)

2 2 2

0.- S, + jr, F, (�*2

J-0 J.o j-o

2 ~~2”++

0!S,Z(3X~-52`(s, ) 2+T3

po 1-0 /.o (e)+r3.3.

/.o /-0

2 2 2 2

(s; V*> 53~,((4b)2+(sb)2}-r,~(�s’)+T2~,(sm)

pa p0 J-o !a0 2 2

1: (vp – e)- -83 1: sm + Tt � 3.

po po

2 2

1: (vv – s3 S3 `e + r2 �3.

J-0 po

The first three equations arc independent of the second set of three linear equations. (6 ;82; r3) are the variables of the first set. The first set is homogeneous with associated determinate equal to

det – -(s’)2�(v2 – v2′)


J12e # 0″V16 * V”

the first set of equations has only the trivial solution (S,; 52; r3) – 0;

thus, the displacement is in system b’s k plane. The solution to the second set of linear equations is given in equation 9

S3- [s’ �(2�v2′-v2 v2o’)+v;’�(4’+’-2�sy)yd 2

d-2 [~( “}~(s?’):_~o8, a _~oe,~2e _si�.JZ2�]



T, – [vi’ – 4s +.63. 7′ )/3



r2 – [Z MA – 4′) – S3. s;’1/3


Thus, a and s is determined by equation 9. Equation 6 is used to obtain the final triangle iii wrt system b. The coordinates of the triangle wit the original reference coordinate system is given in equation 10.



The ability of the algorithm to correct for measurement error is investigated by introducing error of random magnitude and

direction at each triangle vertex The triangle considered is an equilateral triangle with side length equal to 100. For this study, n=360 different triangle position were generated. An i subscript is the position index (i=1,…,360). The pseudo random number

generator used for this study is that implemented in Borland’s C++.

Let v; be the i-th location of the triangle. G=0,1, and 2).

Let (v,J’)- be the i-triangle position with random error.


v’* + srV where a; – random error magnitude

OS a; 5s.

a. – specified maximum error magnitude

m; – unit vector in a random direction.

The mean error R’ introduced before triangle correction

is given by following equations (e


R”‘=(~E(e/)_)/(n x 3)

i-i J=O

The error at triangle vertex after triangle constraint is given in 12. _ rjb _ v-4l

where ij* is (v-;’)* after triangle side length normalization. The residual error is given in equation 13.

R 2

iR’ =((j:ei y(n x 3) (13) -I 1-0

If the triangle constraint algorithm was successful in reducing error, R’ will be less than R”. The triangle constraint results for error of both random magnitude and direction is summarized in Table 1.

Table 1.

e max R'” R’ Percent

[%1 1%1 [%1 Improvement

1. .509 .484 4.9

2. 1.02 .924 9.4

3. 1.52 1.36 10.5

4. 1.90 1.69 11.0

5. 2.47 2.13 13.7

7. 3.53 3.02 14.4

10. 5.12 4.46 12.8

15. 7.29 6.10 16.3

Thus, from Table 1, the triangle constraint algorithm statistically reduces measurement error in all cars.





A length normalization algorithm for the motion history of triangles is presented. This length normalization algorithm corrects the motion data for triangles such that the length of each side of the triangle is equal to the sides mean length over the original motion data. The algorithm also ensures that the triangle’s vertices are as close as possible to their original location in the least squares sense. Through simulation techniques, the triangle normalization algorithm was shown to statistically reduce measurement error. The triangle normalization algorithm is suited for motion studies which make no assumption upon the relative motion between rigid bodies.


Ariel, GB. et al. (1993) Error reduction in lonematic data through segment length normalization Biemodmaics,.XIV-th LS.B.

Cappa�o, A., Leo, T. and Pedotti, A (1975) A general computing method for the analysis of human locomotion& JBkznechanrics 8, 307-320.

Jennings, L.S. and Wood, GA (1987) Co-joint data smoothing using splines. European Biomachanics (6th Meeting of due Europe= Society of Bianeclrmacs) A.E. Goodship and LE. Lanyon (ed.), Univ. of Bristol, Butter wrths, London

Walton, J. (1981) Close-Range tine-photogrammetry. a generalized technique for quantifying gross human motion. Ph.D. thesis, College of Health, Physical Education, and Recreation, Pennsylvania State University.

Winter, DA (1990) Biorneduarics and � rotor con&vi of the hwnm move meats A Willey-Interscience Puplication, John Willey & Sacs, Inc.

Wood, GA (1982) Data smoothing and differentiation procedure in biemechanics. Exercise and Sport Science Rewiewo, 10, R.LTurjung (e&), American College of Span Medicine, 308-362.