Software for the Analysis and Display of Human Locomotion

PC DOS Version, January 1994 (Slightly updated January 1998, 2004)
by Dwight Meglan

(NOTE: This software has been in a dormant state for the past 4 years, but
there still seems to be interest in it. The original ftp site at Ohio State
no longer exists so new copies are being posted to the BIOMCH-L site.)

The Anz/Telio/Show3d package is a set of computer programs for use in the
research as well as the clinical evaluation of human locomotion. Together,
these allow the analysis, plotting, and graphical display in 3 dimensions
of body segment kinematics and kinetics. The software, originally developed
for VAX/VMS in FORTRAN at The Ohio State University Gait Analysis Lab and
now running under DOS on IBM PC 386 and higher compatible computers, is
being made available in source code and executable form to facilitate
researchers and  clinicians in the development of their own locomotion
analysis software. The previous release of this software in the Fall of
1991, though only for VAX computers at that time, is being used by a number
of groups.

ANZ
Anz uses measured marker trajectories to produce estimates of spatial limb
kinematics, absolute and relative, including translational and rotational
velocities and accelerations. These can be combined with force plate data
to evaluate net joint resultant loads and joint power transfers. The
majority of the analysis methods are based upon segmental local coordinate
systems that are marker system independent. Several marker sets are currently
supported including clinical full body marker sets (Helen Hayes, Ohio State,
and Cleveland Clinic), a research full body marker set developed at Mayo
Clinic, an upper extremity marker set, and a detailed foot kinematics marker
set . Many general kinematics and kinetics procedures are included as
well as a number of gait specific evaluations. In a number of evaluations,
several methods are provided to do the same calculation to provide checking
of algorithm validity. Muscle EMG data may also be processed with digital
filtering. The program is command line based and can be operated interactively
for exploratory analysis can be used repeatedly via command or batch files
to yield a production environment for clinical gait evaluation. The results
of an analysis are stored in a single binary format file constructed to be
transportable between different computers. The contents of this file can be
examined with Telio to produce graphs, Show3d to produce 3D figures, or
exported from Anz in text format for further processing. The commands used
to produce the analysis results are stored in the Anz binary file providing
a history of the calculation process.

TELIO
Telio is a command line driven program to graphically display the results
of ANZ analyses. It can also read several data file formats native to the
VICON marker tracking system. The program has a flexible display format so
that screen displays and/or printouts can be produced using either time
series or crossplotting of data. Data may be read from multiple files and a
number of graphs generated at one time. A macro facility has been included to
simplify generating complex displays. Combined with a command or batch file,
printouts of data can be produced without any user interaction. Thus, the
program functions as both an exploratory and a production display tool. A
number of gait specific features are included to produce clinically useful
gait displays. The VOGLE graphics subroutine library is used to provide
device independent graphics capabilities. On the PC the program can display
on a number of graphics adapters and produce print files in several formats
including postscript.

SHOW3D
Show3d generates 3D views of marker trajectories and body segments as
analyzed by Anz to allow visualization of motion from any direction. Body
segments are represented by parallelapipeds to emphasize nonsagittal plane
motions. Segments may be represented with hidden lines removed. A number of
customization options are available including the display of the images on
screen and/or via printed form. This program also uses the VOGLE graphics
package. The program produces nice animations when used on a fast 486 PC.

SOURCE CODE
The source code uses VAX extensions to FORTRAN but no system specific
routines, so it should be possible to use any FORTRAN compiler supporting
VAX extensions. The PC versions of ANZ/TELIO/SHOW3D have been developed with
the WATCOM 32bit FORTRAN compiler. In addition, the VOGLE graphics library
has been customized for use with the WATCOM 32bit C compiler. Use of other
compilers will surely require at least changes in the makefiles if not the
source code of the programs.

Presently, the software supports VICON and AMASS video and analog data files
as well as Motion Analysis Corporation video and analog data files.

The source code is rather large, totaling about 2.5 MBytes.  The software is
copyrighted and has been placed in the public domain as a research and
instructional tool only and as such is UNSUPPORTED. The source code may be
freely modified and redistributed for nonprofit purposes as long as the
changes are clearly marked and the origin of the software, Dwight Meglan and
The Ohio State University Gait Analysis Laboratory, is mentioned.

Further details regarding the distribution of ANZ/TELIO/SHOW3D can be found on
the ftp archives in the file legalise.txt

REQUIREMENTS
ANZ/TELIO/SHOW3D use a DOS extender so they must be run on 386 or better
PC compatible computers. They are very disk and memory intensive- a legacy of
their VAX origins. The executables are quite large- around 6 to 9 Megabytes
and when running require at least 16MBytes of free disk space for a virtual
memory swap file. They also require a math coprocessor. The graphics programs,
TELIO and SHOW3D, should work on EGA or better adapters though I recommend at
least a VGA (SVGA is supported).

The programs were developed on a 66MHz 486 with 16M RAM and run quite well
on it. They have not been tested on other configurations.

AVAILABILITY
Source code and DOS executables of these programs as well as sample data and
documentation are available in PKZIP archive files.
Copies of hand written notes of the derivations of the kinematics and kinetics
algorithms within ANZ (~50 pages) are available from the program author for
$10 US (to cover duplication and shipping).

All requests for derivation notes or copies of the software should be sent
prepaid in US currency to:
Dwight Meglan
Mitsubishi Electric ITA
201 Broadway
Cambridge, MA 02139

HISTORY

ANZ/TELIO/SHOW3D came about because the gait analysis lab at Ohio State
needed to replace their locomotion analysis software. That package was
originally written in Pascal under RSX on a PDP computer. It was brought
from Boston when Dr. Sheldon Simon moved the gait lab from Brigham and
Women's Hospital to Ohio State.

I sought to create a program that would allow the analysis of much more than
locomotion and would be transportable to other computers. At the time the
computer language I was most familiar with was FORTRAN and this was the only
compiler we had on the VAX which was the target platform. The graphics
display programs were created to allow exploration and automation of the
presentation of the results of gait analyses. SHOW3D was created because I
thought that 3D pictures with solid shapes for the segments were more
effective in conveying the data than the stick figures largely in use by
other labs at the time. The DI3000 graphics package was originally used
because we got it for free through a campus wide license. During this time,
I also put together a version of ANZ for the Macintosh using Language
Systems FORTRAN. This version, which was created for my convenience since I
was working at home a lot on my dissertation, no longer exists.

When the programs were released in the fall of 1991, I had numerous requests
for a PC version. At that time, I had finished my doctorate at Ohio State and
was at the Mayo Clinic Orthopaedic Biomechanics Lab doing a post-doc. We used
a VAX there which happen to have DI3000 on it, so I was not inclined to go
through the effort of converting the programs. I added a number of new
analyses to ANZ while at Mayo- some for studies in the lab, some for my own
exploration. These were not in the 1991 release.

After finishing at Mayo, I needed to do additional work to get my doctoral
work published, which required ANZ, TELIO, and SHOW3D. Since I do not have a
VAX at home and developing the Macintosh version left me with unpleasant
memories and I was continuing to get requests for a PC version, I opted to
port the software to DOS. The current release and all future releases (if
there are anymore) will be for DOS. The FORTRAN has been adapted to the
WATCOM 32bit FORTRAN compiler. The graphics were converted from DI3000 to
a nice 3D public domain graphics package called VOGLE. VOGLE is written in
C, so it was adapted to the 32bit WATCOM C compiler (mainly the screen
drivers were changed) and an interlanguage call interface added. So after
ten months of on again, off again work, there are PC versions of all three
programs.

They work well for me. Hopefully they will for others. If they don't, change
them so they do- everything is here so you can.

FINAL NOTE
This code is UNSUPPORTED. It has been used extensively in both clinical
and research contexts and I have tried to validate all the calculations,
but with something this large there are bound to be some latent problems.
I am interested in hearing about uses of the code by others, improvements,
or problems identified. I cannot help with debugging or teaching others
about what is in here. This is intended to be used as a teaching tool for
those interested in studying human locomotion kinematics and kinetics
primarily, not as a finished clinical product. In reality it is being used as
such and I am confident that it carries out this role well, but I do not
have the time or desire to support this set of programs as would be required
for a clinical product.

Comments can be sent to: Dwight Meglan, dwight@merl.com
I would prefer email contact because of the potential for people calling me
inspite of all the disclaimers above.This software package was developed to
meet the clinical and research needs of the gait analysis lab at Ohio State 
University, and later at the Mayo Orthopaedic Biomechancs Lab, and to be used
as part of the my doctoral research. The dissertation focuses upon several 
new techniques of human locomotion analysis and as such goes beyond the areas 
covered by the ANZ/TELIO/SHOW3D software. In most cases, the results of gait 
analyses done with ANZ were used as the starting point for these other analyses.
Details of these other methods can be found the dissertation:
Enhanced Analysis of Human Locomotion by Dwight A. Meglan, 1991
Department of Mechanical Engineering, The Ohio State University
It can be obtained from University Microfilms Inc. (phone # 800-521-0600)
in  book form for approximately $35 US and I believe that credit cards may
be used as payment. The identification number of the dissertation is 92-01716.
This work does not describe ANZ, TELIO, or SHOW3D in any depth. You will need
to look at the derivation notes for details of the algorithms in the software.
Hopefully, all the programs described in the dissertation will eventually be
made available in the same way that ANZ/TELIO/SHOW3D are being made available.
