Statistics Menu

This menu has a number of options for performing statistical and related operations, which are described here.

Average construction

Display N
Displays the number of faces in this average on the status line (at the bottom of the window).
Add to average
Prompts for a .obj file to add to the currently displayed (average) surface. Files should have the same mesh structure before calling this method, use Edit->Warp3D.
Average list
Average a set of .obj files together. The list is read from a text file with the name of each (aligned) .obj file on each line.
Iterate average
Tick this option when averaging lists of faces for improved accuracy of the average. The shape of the average is affected by the (rigid+scale) alignment of the faces, for best results faces to be averaged should be aligned to the average. As the average is initially unknown this iterates by aligning to the current estimate of the average each iteration.
Auto procrustes normalise
Procrustes normalisation is rigid body plus scaling to minimise the differences between surfaces. This option should be turned on unless the surface position/orientation/scale are pre-normalised some how.

Groupwise align list

Prompts for a file with a list of .obj files to align. It attempts to match all files to a common average that is generated. Results can be variable and the method takes a while to converge. One of the slowest steps is the original pairwise alignment of the first in the list to all the others based on shape only using non-rigid iterative closest point. If (for some reason) the algorithm fails after performing the initial alignment on a number of files it is possible to skip the initial alignment for those already processed by entering the number pre-processed in the dialog box when prompted. Otherwise this value should remain zero. When the alignment is completed the aligned files are stored in finalX.obj where X is the number of the order in the original list.

Using averages

For all the following operations all files must have the same mesh structure (ie. number of vertices). It is best to warp a standard shape into all the files you want to use using the Batch Warp method before constructing the averages, comparing and transforming.

Compare individual
Compare a single subject to an average. You should have the subject loaded and you are prompted for the average. The results show the Manhalobis distance of each point from the average as a coloGroupwise align list

Prompts for a file with a list of .obj files to align. ur i.e. the distance scaled by the shape of the distribution.

Compare averages
Compare two averages using Hotelling's T2 test at each vertex (related to the Student's t-test for 1D distributions). Shows the facial areas where the samples are significantly different.
Transform
Adds the differences between two surfaces (usually averages) to alter a facial surface. You are prompted for the two (average) surfaces and the amount to scale the differences by. e.g. to change a female face to their male equivalent load the subject's (standard) mesh, select Transform, load the female then the male average when prompted, then set the change to 1 (100% of the difference between the two).

Super Batch Transform This option applies a custom transform to each 3d model in a list according to rules specified in a text file. Each line can contain the following options, which should be specified in the first line of the file:

 image
 input
 source
 target
 shape
 colour
 angle_x
 angle_y
 angle_z
 start_angle_x
 start_angle_y
 start_angle_z
 end_angle_x
 end_angle_y
 end_angle_z
 angle_fraction
 image_width
 image_height

Not all options are needed, but there are some interdependencies.

View Morph: Loads a sequence of (aligned) faces over time. The text file should have the name of the file to use and the time point of each on each line. The times should be ordered in increasing value starting at 0 e.g.

face0.obj 0
face1.obj 10
face2.obj 40
face3.obj 45
face4.obj 60

A dialog will be displayed allowing the morph frame to be selected or the sequence animated (using the play button).

Shape PCA

Operations for building shape principal component analysis (PCA) data, analysing and synthesising faces based on the PCA.

Shape PCA …
Performs PCA by attempting to load all files into memory. Can be faster than the file version but can run out of memory. You are prompted for the file to save to, best to save in a new folder each time to avoid files being overwritten.

Shape PCA (Files)
Performs PCA by loading the data from file each time. Slower than not using the files but has lower memory requirements.
Shape PCA (Templates)
Performs PCA on just the 3D template files.
PCA Analyse shape
Analyses the shape of all (aligned) files listed in a text file, writes the results to a CSV file. You are prompted for the list, the 3D PCA file (.pc3) and the .csv files to use.
PCA Reconstruct
Reconstruct face shapes from 3D PCA data. Prompts for the CSV file containing the PCA weights and file name, the number of components to use, the output directory (will create a new folder if it doesn't exist). Be careful not to overwrite your original files! Use a different directory to output and change the names in the CSV file for extra security.

Build CAM

Builds a combined shape and appearance model using the PCA shape analysis above and an image PCA as created in Psychomorph.

Procrustes Analysis

Do some measurements on 3D templates after best fit alignment. (Not sure why these options are here ...)

Procrustes absolute distances
Find the distance between corresponding points after using procrustes alignment.
Procrustes XYZ distances
Find the distance between corresponding points in X, Y and Z after using procrustes alignment.