I guess it's about time that someone besides Herman and Ed commented on
the method of describing the 3D orientation of the body segments relative
to one another.

In the recent complete rewrite of the analysis and display
software for the gait lab here at Ohio State University, I included both
the Grood & Suntay description, which I refer to as the Joint Coordinate
System (JCS), of the joint rotations as well as the standard Pitch-Roll-Yaw
(PRY) euler angles plus calculation of the finite screw across the joint
(the position and orientation of the segments is known in 3D using the marker
position data) using several different algorithms. In addition, the rotation
about the screw axis can be described using Herman's concept of attitude angles
(basically multiply the direction vector of the screw axis by the magnitude of
the rotation about the axis to form a scaled vector) in terms of the proximal
segment local coordinate system (LCS), distal segment LCS, or the JCS. All
these different methods are included because I wanted to compare them on
actual experimentally acquired data plus since there is no standardization at
the moment I decided to use the shotgun approach and try to cover the majority
of the possible orientation description methods.

I did a poster on some of the results for the recent Orthopaedic Research
Society meeting in New Orleans. Interestingly, Murali Kadaba had a poster
right across the aisle which dealt with finite screws also. Basically, the
results using multiple trials of normal subject gait data (we use a marker set
consisting of 21 markers total for the upper and lower body with 3 markers on
most segments) show that for sagittal plane joint angles there really is no
statistically siginificant difference between any of the two rotation angle or
three attitude 1angle schemes used. This was true for all the joints of the
lower body as well as the pelvis, whose angle is not a relative angle but
instead is calculated relative to the global lab coordinate system (GCS). In
the out of plane angles (ab/adduction, in/external, pro/supination, in/eversion)
there were significant differences primarily for the ab/aduction and in/eversion
angles. These differences increase with the magnitude of the flexion angle
which not surprising. The interesting point however is that the attitude
angles are significantly different so the coordinate system in which they are
expressed is critical. Also, the attitude angles expressed in terms of the
JCS were different from the angles calculated with the JCS rotation angle
method.

Based upon these results, plus various other experiments which I have tried
out, it would seem that while the calculation method, i.e. rotation angles or
attitude angles, is important, the coordinate system used to express the
attitude angles is just as important. Which leads to the obvious point that
the positioning of these segment LCS's will have a critical effect upon the
calculated joint angles. I did some perturbation experiments to look at the
sensitivity of the calculated joint angles to slight changes in the orientation
of either or both of the segment LCS's used as input data for the angle
calculation. Each perturbation had some effect upon one or more of the
calculated angles- not surprising. The effects are widely varying however and
it is a relevant concern to identify those effects which are going to most
readily occur with a given marker set and motion system configuration. Even
rigid bodies with more than 3 markers attached to the body segment are
sensitive to this problem since it is difficult to control the position/
orientation of the marker carrier relative to the underlying bones with
accuracy and consistency. This is getting a little of track of the discussion
focusing on rotation angles and finite screw attitude angles... Oh well, I
guess we all have our soap box on one issue or another :-)

At this point, I am inclined to go with the finite screw attitude angle
technique expressed relative to the JCS axes except for the shoulder whose
angles I feel are more properly represented by a spherical angle system. This
was used by Andy An from the Mayo Clinic in a paper at the ORS. I personally
think that the singularity issue ('gimbal lock' if you insist) for the JCS is
theoretically relevant but not really in practice. True, as Herman pointed out,
as the joint approaches this orientation the angles can become inconsistant due
to the fact that both the numerator and denominator of the inverse tangent
approach zero and thus noise in the input data will have a more significant
effect.
But this situation can be detected and corrected numerically (I did just such a
thing until I decided to switch to the spherical system- basically you just
monitor the magnitudes of both numerator and denominator of the inverse tangent
and when they both go below a predetermined threshold, you skip the angle
calculations for that frame of data and then go back later and interpolate the
missing angle back in. It's a kludge but it worked nicely for our situation...)
The finite screw is more proper representation of the actual motion process
occuring in the joint. I.e., the joint is actually rotating about some line in
space not some arbitrarily selected coordinate axes. Unfortunately, this line
of reasoning falls apart when you try to express the screw in more clincally
oriented terms since it must be expressed relative to just such a set of axes
as in the case of the attitude angles concept. I don't think that using either
the proximal or distal LCS as the base for expressing the attitude angles is a
good idea because even though the system axes will orthogonal and hence will
never be singular, the angles are physically meaningful to the clinician. They
are valid descriptors of the joint orientation but since eventually the data is
to be used by a phsycian to make a clinical decision, at least here that is the
case, the data should be in a form with which they are familiar. The JCS axes
pretty much align with the way that the orthopaedist describes/visualizes joint
orientation. There is the singularity problem but that cannot physically occur
in any major extremity joint except the shoulder unless there is a very severe
pathology present.

Even though the screw does represent full 6 DOF motion, if only the attitude
angle representation is desired then the rotation matrix relating the segment
orientations is all that is required since this calculation is a subpart of the
full finite screw calculation. This calculation, I might add, is no more
computational difficult than the standard technique of extracting rotaion
angles from the rotation matrix.

As an aside, the numerical method by which the screw is calculated is
significant as to its sensitivity to noise in the input data. The input data
consists of the position and orientation of one rigid body relative to another
in 3D. This data has noise within it as result of the resolution of the system
used to measure the position/orientation and its method of measuring. We have
used both VICON based marker measuring as well as a 6DOF spatial linkage
designed and built here to collect this information. I have done some
experiments using data from these using the algorithm given in Herman's papers,
which I believe is more or less the same as that of Spoor-Veldpaus (sp?), as
well as using one based upon derivations done by Ken Waldron, who is a
prominent kinematics/robotics researcher at the Mechanical Engineering
Department here at Ohio State. I found that Waldron's method was less
sensitive to noise. In addition, there was a paper recently given at the ASME
conference on Advances in Design Automation-1989 (Univ. of California, Davis)
intitled 'Comparison of Methods for Determining Screw Parameters of Finite
Rigid Body Motion from Initial and Final Position Data' by R.G. Fenton and X.
Shi. This compared 5 different methods, including Spoor-Veldpaus, and
concluded that the best, based upon sensitivity to noise, is one by Bottema
and Roth (of the textbook Theoretical Kinematics fame) while Spoor-Veldpaus
was noise sensitive. I know that there are other versions of the Spoor-
Veldpaus method for use with more than 3 markers to decrease the noise
sensitivity, but based upon its use with straight position/orientation
information of the rigid bodies as input (as I use it) it does not appear to
be the best choice. I will be doing some more work with this area in the
near future, say the next month or two, and if anyone is interested I can post
a follow up.

In summary, I'm trying to stay out of the 'one is better than the other
because...' argument but instead am trying to look at the several methods as
they are used in practice. The only place where a firm decision as to a
single calculation method is critical is for exchange of data between
institutions. That is how all of this got started here at Ohio State. We have
been involved in a Multi-Institutional study of cerebral palsy child gait for a
number of years now that has used sagittal joint angles exclusively. We would
like to expand our focus but before this can happen this matter of joint angle
calculation methods and coordinate system positioning/orienting must be
resolved, at least between the sites involved in the study. For an individual
research group this is not such a critical issue just so long as they establish
a method and stick to it. This issue is more of academic interest in this case.
It is also possible to convert back and forth between the various angle systems
with relative ease as demonstrated by Herman's program, but the matter of the
definition of the coordinate systems is a definite problem...

By the way, that paper on body segment mass/inerita parameters that mentioned
in the fall from Wright-Patterson Air Force Medical Research Laboratory had an
interesting approach to the coordinate system definition problem. The CS's
were defined relative to several easily identifiable bony landmarks for each
body segment. The down side of this method is the need to measure the 3D
location of a lot of points.

Enough said for now. I hope some others might join in on this discussion...

Dwight Meglan
Research Engineer and Phd-in-training (finished product coming to a journal
near you sometime in 1990/91 ;-)
meglan%gait1@eng.ohio-state.edu

In the current spirit of disclaimers, the above text was not written by anyone,
to anyone, about anyone, or for anyone no matter what the text actually says:-)