Morphometrics Software:

IMP-Integrated Morphometrics Package

Last Updated 7/06/04


IMP is an integrated 2-D Landmark-based geometric morphometrics software package, with it's own file format system which loads easily into software such as SPSS and Excel. IMP can also read and write files in the TPS file format used by F.James Rohlf's TPS series software. Several programs for 3D data are also available, as are programs to use semi-landmarks along curves. I have a few pieces of 3D morphometrics software only.

IMP currently runs under Windows only. II have the Mac compiler to port these programs over to Mac, I need some help with Beta testing, and writing installation do get in touch if you are interested in Beta testing and are familiar with the Mac X11 system. Keep your fingers crossed...

If you are considering using IMP, Please read WhatisIMP.pdf Version as of 1/17/02.



Please note:


This software will be frozen in it’s current form to allow readers of our text book, Geometric Morphometrics for Biologists: A Primer by Miriam L. Zeldith, Donald L. Swiderski, H. David Sheets and William L. Fink, recently published by Academic Press/Elsevier to have access to software that matches the description in the text.


New additions or versions of the IMP software series (appearing after July 1, 2004) are located at moremorph.html


Also now available:  IMP 7Programs



 Using IMP 


To use IMP, you will need to download the self-extracting compressed mathematics and graphics libraries from Mathworks (makers of MATLAB), needed to support IMP. This set of libraries is large, just over 7 Meg, but it supports all of IMP.

Download: mglinstaller.exe Version as of 2/5/01

If you want to use IMP and want all of the basic IMP files in one bundle, you may want to download the combined, self-extracting Zip File IMPBasics, which contains CoordGen, Regress, PCAGen, CVAGen, TwoGroup and TradMorph, the core programs of IMP.

           Download IMPBasics.exe Version 6a

                                                                                                          As of 8/17/02


There are three categories of IMP software: General Release Software for which there are reasonably complete users manuals available, Undocumented Software which has little or no documentation currently available and Beta software, which is the 3D software which has not been used in a serious research project to date. The successful use of Undocumented Software or Beta Software most likely relies on your having had direct contact with one of my direct collaborators, or myself. I will eventually get all the users manuals written, but you are welcome to download the software at any time. The Undocumented Software is on this site primarily as a convenience for my direct collaborators and their students and collaborators.


Individual IMP files for Download:

General Release IMP Files for Download







Latest Update




Also see docs below

Coordinate Generating Utility, also file translator to/from X1Y1, TPS file formats





Also see docs below

Canonical Variates Analysis Program

Try using PCAGen6 before using CVAGen, the 2 programs use the same input files and operational format.





Also see docs below

Principal components analysis based on partial warp scores, outputs partial warps scores and principle axis scores





also see docs below

Thin Plate Spline and Regression Utility






-not included in the superpac file

Allows for the exploration of a variety of alternative superimposition criteria-different distance minimization criteria-Not recommended as a general purpose tool, but provided as an alternative.....written by Dave Liebner, Canisius ’03.





Comparison of statistically significant differences in shape between two groups





Generates a set of traditional morphometrics variables from a set of geometric morphometric measurements



Additional Documentation On Plotting Updates Additional manuals, commentary, etc.

        GridTrimming.pdf- A file on how to use the grid trimming feature added to most programs which display deformation grids.

ReferenceRotation.pdf- A file on how to use the reference orientation controls added 11/5/02 added to most programs which display deformation


Undocumented Software, IMP Files for Download

(Some of these actually have limited amounts of documentation, but the users manuals are not currently adequate for a general release. If you are familiar enough with IMP and patient enough, you should be able to get these to work satisfactorily.) These items are posted here primarily for use by my direct collaborators.






Latest Update




Averages landmarks across a baseline-special purpose preprocessing of data





Growth Profiles





Disparity Box, designed for calculation of Morpological Disparity




LMEdit6 is an editting tool for altering landmark configurations, allowing for averaging of measurements across an axis of symetry and eventually other tasks



3rd Beta Version

(Works reliably, limited manuals)


None Yet!

MakeFan, a tool for drawing alignment “fans” at equal angular spacing on an image prior to digitization-can be used with TPSDig, or as a really primitive stand-alone digitizer



Extra DLL needed for MakeFan-expand this into the

Bin\win32 directory where MakeFan is installed, if MakeFan doesn’t work properly initially


Version 6b


Partial-included in compressed file

Partial Least Squares tool for comparing patterns of covariance between blocks, using two data of 2 blocks each



(was listed as PLSBlock, same program)





Partial Least Squares Tool for studying patterns of covariance using shape data



6th Beta Version


Partial manual included in compressed files

A tool for processing semi-landmarks, prior to use in other programs. Now includes a zoom function





Computes range of vector correlations that can be generated by random shuffling of a vector




Limited manual

Compares the angle between the spaces defined by the PC axis of different groups




No manual, simple program

A tool to splice together ASCII files, either IMP or TPS





Standardization Utility-removes linear dependences of shape on some variable




No manual yet

Computes a t-test score, given the means, samples sizes and standard errors in the measurements. Note the use of the standard error, rather than standard deviation.





Displays thin plate spline vectors for comparison purposes





Computes a growth angle between two groups. Resampling statistics.





Displays landmark by landmark

differences between two groups




Substantially altered version, with documentation!


----includes manual-

Displays landmark by landmark

Differences in regress models between two groups




IMP 3D Beta Programs

Below are a set of the basic programs needed to work with 3D landmark based morphometric data. Simple3D does file conversion and pairwise tests of differences in shape between two groups (ala TwoGroup6). Regress3 and ThreeDPCA carry out regression analysis and PCA using partial warp scores for three dimensional data. The three dimensional display is rather limited at the moment, but all the mathematics is in place. Take a look at these programs if you are interested and let me know what additions/changes/improvements might prove helpful. Brief manuals and example files are included with each of these programs.




Latest Update




Regression analysis of 3D landmark data using partial warp scores.




File conversion, Procrustes Superimposition, Goodall’s F-test for differences in means, calculation of Procrustes distances between means for 3D landmark data. Also, 3D Bookstein Coordinates, matrices of all pairwise interspecimen distances.




PCA for 3D landmark data, based on partial warp scores



Update Information:

3/17/01- There are a number of updates as of 3/17/01. Most notable is the PCA program PCAGen6, which does Principal Components Analysis of data based on thin plate spline decompositions of shape. Groups are color coded for display, and the shape deformation implied by a pair of PCA scores can be illustrated. It may also be used purely to generate thin plate spline scores.

Most of the rest of the software got relatively minor graphics upgrades, including the ability to write .EPS files (encapsulated post script) that may be loaded into Adobe Illustrator and the like.

3/28/01- I loaded an updated manual for PCAGen6, and a mild update of PCGen6a, which now includes Scree plots of the eigenvalues for each PC, and a statistical test of which PC axes are significantly different from one another.

4/01/01- Loaded a new version of PCAGen6, called PCAGen6b. There was an error in the statistical test of PC axes significant in PCAGen6a, it reported 1 too many significant axes, sorry folks, load the new version.

6/06/01-Loaded a new version of Regress6, called Regress6c. This how has updates in the statistics (it calculates significance levels for you now) and it also allows you of plotting the reference form, the deformed shape (or target form), or both. TwoGroup6 also got some updates, specifically the calculation of alpha levels from the F-values. Also CoordGen6b now includes the ability to generate a RFTRA (Resistant Fit Theta-Rho Fitting) superimpositioning, if that’s what you need!

8/01/01-Added a user supplied reference option to PCAGen6.

10/9/01 Put CVAGen up for downloads.

1/17/02 Updated Manuals

5/28/02 Fixed a couple of problems in TwoGroup6c and Regress6. TwoGroup6c will now output a “dummy coded” file to be used in Regress6 to depict the differences between the mean form of two groups. The problem copying the Procrustes distances vs CS plots that occurred in Regress6 has now been fixed.

7/27/02 Added Updated versions of PCAGen6 and VecCompare6-More updates soon!

7/31/02 Added updates of PCAGen6F, Regress6F and CVAGen6D, so that these programs now round the reference form (to 5 decimal places) in exactly the same fashion, so that they generate the same values for PW scores when generating an reference form internally, or when loading a user reference. Earlier differences due to how references were rounded and superimpositions were handled should now be eliminated.

All these programs now have the grid plus vectors display option, PCAGen6F and CVAGen6D can now plot the mean PCA/CVA scores of each group on the PC/CVA axes plots, CVAGen6 can now assign “unknown” specimens to a known group based on CVA scores and has an assignment test for the validity of assignments. Regress6F has a permutation test based on a form of a Generalized Goodall’s F-test for the significance of the regression model. All of them also have the “Grid Trimming” feature as well, which will allow better user control of the size of the grid (which I still have to write the manual for! If you want to try it, let me know, I’ll try to write a quick explanation.)


8/15/02- Added updates of PCAGen6g,CVAGen6e and Regress6g which have a more stable calculation of the GLS Procrustes Mean form. The earlier versions had a subroutine which could be unstable under some conditions, producing a reference with a centroid sized that deviated from 1 (by several percent). This should not pose a severe problem for analyses done using earlier reference forms, so long as the linear approximation to the curved shape space is valid. If your data occupies enough of shape space to depart from linearity, you should recheck your results with the newer versions. Sorry about the problem, it was an error that appeared erratically. I have checked the PW scores and reference form produced against those from TPSRegress, and they are currently in agreement.

Also, I have added an update of DisparityBox6d that allows for automated loading of a sequence of files, and also has a variety of nearest-neighbor calculations available within it. The manual for DisparityBox needs updating though.

Added MakeFan (an alignment tool) and PLSBlock (a partial least square tool), and an updated version of IMPBasics.

8/19/02 Added updates of CVAGen, CoordGen, PCAGen, Regress, DisparityBox, Standard 6, which fixed an error in how these programs rotated specimens to align with the PC axis of variation of the reference. In some situations earlier versions of these programs could produced affine distortions of the data, particularly when the reference was rotated substantially during the procedure. DOWNLOAD THE NEW VERSIONS OF THESE PROGRAMS AND RECHECK YOUR RESULTS. The distortion was affine and applied evenly to all specimens, which makes it hard to pick out visually, and probably means that it won’t effect inferences, but do recheck your results. Thanks to Mark Webster at UC Riverside for locating this problem.

I have also posted a semi-landmark tool, SemiLand6, which will allow processing of semilandmarks placed along curve, and also PLSAngle for comparing PLS\SVD vectors between groups, or comparing SVD axes to PC axis.

8/21/02 Added the three dimensional programs in Beta form.

8/23/02 Updated Three Dimensional Programs-Added a permutation F-test and rudimentary plot controls.

8/27/02 Added better image controls to PLSMaker6. Added the pdf on grid trimming.

9/12/02 Posted the 2nd Beta versions of SemiLand 6 and MakeFan. There was a change in the algorithm used in SemiLand6 to estimate the local slope at the endpoints of open-ended curves, which seems to improve the accuracy of semi-landmark positioning when sliding semi-landmarks along curves. Additional image controls were also added to SemiLand6. Some additional features were added to MakeFan to improve it’s utility as a digitizer, allowing user control of landmark color and number, and the ability to erase fans.

11/11/02 Posted updated versions of PCAGen, CVAGen,Regress, PLSMaker, PLSAngle and VecDisplay. The plotting routines were updated, fixing an error in the routine that in some cases produced an affine error in the plots (but not in statistical inference). The new routine also allows for accurate user control of the orientation of the reference during display.

12/06/02 Posted an updated version of SemiLand6 which aligns semi-landmarks to minimize Procrustes distance between semi-landmarks on a curve and semi-landmarks on a reference form. The minimization based on bending energy is not currently operating in a stable manner, and so it has been disabled until such time as I can produce a stable, consistent version.

1/14/03 Added a “comb” alignment tool to MakeFan6, as an alternative to fans.

2/1/03 Minor alterations to the “comb” function in MakeFan6, to draw perpendicular lines at the end of the comb.

3/7/03 Added versions of PCAGEN, CVAGen and Regress with a default reference orientation setting, making the reference rotation optional, which sound increase the speed of use. I also put up the SuperPoser tool written by my student Dave Liebner which allows use of a variety of robust error functions to be used in superposition (as alternative approaches to resistant fit methods), for those who want to work with this type of mathematical approach.

3/10/03 Added versions of VecDisplay, PLSMaker and PLSAngle with the default reference orientation setting. Also added a version of CoordGen which orients the Procrustes reference form with the specified axis as close to horizontal or vertical as possible, given the need to align the GLS Procrustes Reference with the principal axis of the specimen.

3/14/03 Added the ability to display deformation grids and vectors depicting the differences between the means of two groups of specimens to the TwoGroup progam.

3/24/03 I have worked out an approach to the calculation of the uniform component that does not require that the reference form be in principal axis alignment. This approach is now implemented in PCAGEN and PLSMaker. Also, CoordGen now offers Procrustes Superimposition with or without principle axis (PA) alignment.

3/26/03. Added revised versions of Regress, PLSAngle, VecDisplay and CVAGen with the updated display routines, which do not require principle axis rotation. PCAGen was also updated to fix an error that crept into the last update that caused the software to fail to reload data properly. Also, I made minor adjustments in the size of the white space in the copy to clipboard and copy to eps file functions that should eliminate or reduce some copy problems.

6/18/03. I have added an “exaggeration” control into TwoGroup, and also have put up the lmedit6 tool which can “edit”, renumber and reflect landmark configurations, and can also “back-reflect” landmarks on one side of a bilaterally symmetric organism to form symmetric landmark configurations.

7/10/03 I noticed that PCAGen didn’t number specimens correctly when the axes are reversed (changing the axis polarity), so I fixed that and posted a new version of PCAGen. There is also a new MakeFan up since the last compile had errors in the line weight control and in digitizing, so get a new copy of that one. There are new copies of DisparityBox, TwoGroup and PLSAngle up which have the standard error estimates for all statistics displayed. There is also a new tool up called Tbox which calculates t-test scores given the means, standard errors and sample sizes of two measurements. This is a bit different from the standard t-test in that it takes the standard error as an input, rather than a standard deviation.

7/06/04 Final update to this page, creation of the new moremorph page