This file describes format for template-based analysis results.
==============================
DIRECTORY STRUCTURE
Each directory DIR contains analyzed dataset.
Brief content summary:
DIR/main.tmplt - describes all deformable templates
DIR/main.tmplt.txt - lists part names
DIR/matches/NAME.match - each file describes model-to-template fitting
DIR/coaligned/NAME.pnts - points aligned to canonical domain (to find corrs)
DIR/img_models/NAME.jpg - image gray-shaded model
DIR/img_matches/NAME.jpg - image points matched to a template
==============================
TEMPLATE FILE: DIR/main.tmplt
This file describes deformable templates for a given collection.
The file format is as follows:
---
ntemplates (int) - number of templates
FOR EACH TEMPLATE:
nparts (int) - number of parts in a template
FOR EACH PART:
partid (int) - unique part ID (consistent across all templates)
parttype (int) - 0 - excluded (ignore this part),
- 1 - box (includes data on scales / distributions)
- 3 - null part (no data, but some points can be assigned to it)
IF PART TYPE IS 1 (box):
mean_pos (3 x double) - mean box center
var_pos (3 x double) - variance in box centers
mean_scale (3 x double) - mean box anisotropic scales
var_scale (3 x double) - variance in box anisotropic scales
orient_A1 (3 x double) - box orientation (axis 1)
orient_A2 (3 x double) - box orientation (axis 2)
orient_A3 (3 x double) - box orientation (axis 3)
ndims (int) - number of local features measured per part
nsamp (int) - number of samples for the measurement
mean_feat (ndims x int) - mean values for local shape features
var_feat (ndims x int) - variance in local shape features
---
==============================
LOCAL SHAPE FEATURES:
Consider eigenvalues / eigenvectors of
point's local neighborhood (0.15 * MESH_RADIUS):
eigenvalues: e1, e2, e3
eigenvectors: v1, v2, v3
FEATURES: [e2/e1, e3/e1, acos(v1 * UP)/pi, acos(v1 * TOWARDS)/pi,
acos(v2 * UP) / pi, acos(v2 * TOWARDS)/pi]
==============================
MATCHING FILES: DIR/matches/NAME.match
This file describes matching of a template to the model NAME.
The file format is as follows:
---
template_id (int) - id of the matched template
(same order as in main.tmplt)
align_mtx (16 x double) - aligning 4x4 matrix (mesh 2 template)
nparts (int) - number of parts to follow
FOR EACH PART
part_id (int) - unique part id (same as template)
parttype (int) - part type (same as template)
IF PART TYPE IS 1 (box):
pos (3 x double) - box center
scale (3 x double) - box scale
orient_A1 (3 x double) - box orientation axis 1
orient_A2 (3 x double) - box orientation axis 2
orient_A3 (3 x double) - box orientation axis 3
npnts (int) - number of samples on the mesh
FOR EACH POINT
pos (3 x double) - point position
partID (int) - corresponding part (using local ordering)
---
==============================
CO-ALIGNED POINTS FILES: DIR/coaligned/NAME.pnts
This file aligns model to 'canonical' domain (i.e. undeformed template).
The file format is as follows:
---
npnts (int) - number of points (should be 1000)
FOR EACH POINT (ordered as in DIR/matches/NAME.match)
x y z (3 x double) - position of the point aligned to canonical domain
---
==============================