# Basel Face Model - Details

## Details of the Basel Face Model

The geometry of the BFM consists of 53,490 3D vertices connected by 160,470 triangles. Faces of different identities can be composed as linear combinations of 199 principal components. The model is given by:

- The average shape
- The principal shape components
- The shape variance
- The mesh topology
- The average texture
- The principal texture components
- The texture variance

### The mean and the first principal components (visualized: +/- 5 STD) of the shape and texture model are:

### Attributes

The training data was labelled with gender, height, weight, and age. By varying face coefficients along the directions of maximal variance for an attribute as observed in the training data, it is possible to systematically manipulate these attributes. We provide the directions of maximal variance in the file 04_attributes.mat

### Face Segments

To increase the flexibility of the model, we handle four segments of the face independently. The segments are defined in a mask (per vertex index) that is part of the BFM download.

The four segments defined on the model.

### Matlab Code

Matlab code is provided to generate and render various faces using the Morphable Model:

`script_gen_random_head.m`generates a random face. The 3D mesh is saved as a Stanford PLY file. PLY files can be viewed e.g. by the MeshLab open source viewer. The script also demonstrates the ability to compose a face by blending four segments: Four distinct sets of coefficients are generated for the nose, eyes, mouth, and cheek area and a single face is synthesized by blending the four facial parts.`script_load_scan.m`computes the coefficients of the 10 3D scans by projecting them into the PCA. The projection is done either for the full face or separately for the four segments of the mask.`script_render_fittings.m`demonstrates how to produce faces from the coefficients obtained by fitting public image data sets.`apply_attributes.m`demonstrates the usage of the attribute vectors.

Download the code from here.

### Feature Points

We provide two additional standard sets of landmarks defined with respect to our topology. Chosen are two subsets of the Farkas points and MPEG4 FDP points. (Farkas_face05.fp & MPEG4_FDP_face05.fp)

### Symmetry Index List

The parameterization of the BFM is symmetric and a list of the corresponding vertices is provided. This list can be used for the geometric analysis of faces, or to obtain corresponding landmarks. (face05_symlist.txt)