PDA

View Full Version : 2-D filming question

unknown user
08-24-1992, 07:06 AM
Dear Biomch-l subscribers:

I am passing on a question from one of my graduate students (Phil Cheetham),
who is not yet a subscriber to this list (but soon will be). I would
appreciate any feedback be sent to me (or to the list) and I will pass it on to
Phil.

--Rick Hinrichs
Arizona State Univ. USA

--------------------------------

Peter Brueggemann and I filmed high bar (gymnastics) during the
Olympics. We did 3D filming but we also did some 2D filming. For the
2D we could not get the camera perpendicular to the "plane of swing"
(sagittal plane), at the height of the bar. We had to move the camera
higher. We were probably looking down on the bar at about an angle of
20 degrees. We filmed Peter's calibration frame which is a series of 1
meter cubes set up in this case to be 4 x 3 meters. The frame was in
the middle of the mat, perpendicular to the bar (i.e. in the "plane of
swing"). We have many known points in the sagittal plane that we can
use for reference.

Does anyone have an algorithm that will transform this back to a
simple 2D digitizing problem? Is there an affine transformation
that will do it? Or do I have to use the 2D version of the DLT
algorithm as explained by Jim Walton in "Science in Biomechanics
Cinematography"?

Thanks,

Phil Cheetham,
Dept. of Exercise Science
Arizona State Univ. USA

unknown user
08-24-1992, 03:24 PM

filming setup. I am not familiar with Jim Walton's 2D DLT
algorithm, but it seems to be exactly what is needed. I once
used a 2D DLT to solve a similar problem (analyzing a photograph
of a horse's hoof on a force plate). The DLT can deal with
an arbitrary camera position and orientation, and is therefore a
general and very elegant solution.

If you substitute Z=0 (defining the sagittal plane) into the
classical 3D DLT equations, three out of eleven DLT coefficients
are eliminated. The remaining eight can be determined using four
(or more) calibration points in the Z=0 plane. I have developed
two simple Fortran subroutines to do the calibration, and
(subsequently) to calculate XY coordinates from raw camera data.
One limitation of my software is, that the calibration routine
uses exactly four calibration points. It may be possible to
increase the reliability by using more than four, and solving the
DLT parameters from an overdetermined system of equations.

So, my advice is to use a 2D DLT approach. If you do not want to
start from scratch, my Fortran code is available. One final
warning: any 2D analysis will depend on the assumption that all
landmarks remain in the sagittal plane. The results become more
sensitive to this assumption with a non-perpendicular camera
view, which increases the parallax errors. From Phil's
description of the actual situation, it would seem that this is
not a major problem here.

-- Ton van den Bogert
Human Performance Laboratory

unknown user
08-25-1992, 07:37 AM

After my posting regarding the 2-D DLT method, one subscriber suggested
that it might be useful to provide some background information about
the DLT procedure, for those who are not familiar with it. Biomch-L
is not the place for a complete course on kinematic analysis, but I
can provide a short explanation and a few references.

DLT stands for "Direct Linear Transform" and is a mathematical
transformation between raw 2D camera data (u,v) and the actual 3D
coordinates (X,Y,Z) of a point. The transformation depends on
the position and orientation of the camera, and is characterized
by eleven constants (camera parameters). The method is commonly
used to obtain 3D coordinates from two or more cameras. The
DLT equations are:

aX + bY + cZ + d
u = ----------------
iX + jY + kZ + 1

eX + fY + gZ + h
v = ----------------
iX + jY + kZ + 1

If you have six or more calibration points with known (X,Y,Z), and
corresponding raw camera coordinates (u,v), the camera parameters
a,b,c...k can be solved because you have twelve or more equations
(two for each calibration landmark) with eleven unknowns. This is
done for each camera. When the camera parameters are known, the
unknown (X,Y,Z) coordinates of other landmarks can be solved from
the (u,v) data of two or more cameras because there are four or more
equations for the three unknowns (X,Y,Z).

An overview of various 3D measuring techniques (DLT being one of them)
can be found in:
Woltring, H.J. and R. Huiskes (1990) "Stereophotogrammetry", in:
Biomechanics of Human Movement, edited by N. Berme and A. Capozzo,
pp. 108-127, Bertec Corporation, Worthington, Ohio.

The original publication about the DLT method is:
Abdel-Aziz, Y.I and H.M. Karara (1971) "Direct linear transformation
from comparator coordinates into object-space coordinates", in:
Proceedings ASP/UI Symposium on Close-Range Photogrammetry, pp.1-18,
American Society of Photogrammetry, Falls Church, VA.

There are many publications in which the DLT method is used, evaluated,
or improved. Example:
Wood, G.A. and R.N. Marshall (1986) "The accuracy of DLT extrapolation
in three-dimensional film analysis". J. Biomech. 19, pp. 781-785.

-- Ton van den Bogert
Human Performance Laboratory

H.j. Woltring, Fax/tel +31.40.413 744
08-25-1992, 11:54 AM

As a supplement to Ton van den Bogert's postings on the DLT, I might mention
once again the existence of two Biomch-L files which can be retrieved by
the membership with the following commands to ListServ@hearn.bitnet or to
ListServ@nic.surfnet.nl (*not* to the Biomch-L address, though, which is for
posting messages only):

SEND DLTDSP FORTRAN BIOMCH-L

with arbitrary contents of the Subject: line. BITNET users may retrieve
these files also interactively. Note that the second file is for "members