Graphics Reference
In-Depth Information
using n vertices from M 1 . Closest point pairs ( p , p ) for which p belongs to the boundary of
the face scan, are not used in the distance measure.
The morphable face model has n
972 vertices. These vertices cover the face, neck and
ear regions and its resolution in the upward direction is three times higher than in its sideways
direction. Because the running time of our measure is dependent on the number of vertices,
we use for the model fitting only those vertices that cover the face (data within 110 mm from
the tip of the nose) and not the neck and ears. To obtain a more uniform resolution for the
model, we reduced the upward resolution to one third of the original model. The number of
vertices used in the fitting process is now reduced to n
=
75
,
=
12
,
964 vertices, a sample every
2.6 mm 2 of the face area. Note that we do not change or recompute the PCA model, we
simply select a set of vertex indices.
4.3.2 Iterative Face Fitting
With the defined distance measure for an instance of our compressed morphable face model,
the m -dimensional space can be searched for the optimal instance. The fitting is done by
choosing a set of m weights w i , adjusting the position of the instance's vertices according to
S inst =
+ i = 1 w i σ i s i , measuring the RMS-distance of the new instance to the scan data,
selecting new weights and continue until the optimal instance is found. Knowing that each
instance is evaluated using a large number of vertices, an exhaustive search for the optimal set
of m weights is too computationally expensive.
A common method to solve large combinatorial optimization problems is simulated anneal-
ing (SA) (Kirkpatrick et al., 1983). In our case, random m -dimensional vectors could be
generated which represent different morphs for a current face instance. A morph that brings
the current instance closer to the scan data is accepted (downhill), and otherwise it is either
accepted (uphill to avoid local minima) or rejected with a certain probability. In each iter-
ation, the length of the m -dimensional morph vector can be reduced as implementation of
the “temperature” scheme. The problem with such a naıve SA approach is that most ran-
dom m -dimensional morph vectors are uphill. In particular, close to the optimal solution, a
morph vector is often rejected, which makes it hard to produce an accurate fit. Besides this
inefficiency, it doesn't take the eigensystem of the morphable face model into account.
Instead, we use an iterative downhill walk along the consecutive eigenvectors from a current
instance toward the optimal solution. Starting from the mean face S (
S
m
0), try new
values for w 1 and keep the best fit, then try new values for w 2 and keep the best fit, and continue
until the face is morphed downhill along all m eigenvectors. Then iterate this process with a
smaller search space for w i . The advantage in computation costs of this method is twofold.
First, the discrete number of morphs in the selected search space directly defines the number of
rejected morphs per iteration. Second, optimizing one w i at a time means only a one (instead
of m ) dimensional modification of the current face instance S new =
i = 1 w i =
σ i s i .
Because the first eigenvectors induce the fitting of global face properties (e.g., face height
and width) and the last eigenvectors change local face properties (e.g., nose length and width),
each iteration follows a global-to-local fitting scheme (see Fig. 4.2). To avoid local minima,
two strategies are applied. (1) The selected w i in one iteration is not evaluated in the next
iteration, forcing a new (similar) path through the m -dimensional space. (2) The vertices of the
morphable face model are uniformly divided over three sets and in each iteration a different set
S prev +
( w new
w prev )
Search WWH ::




Custom Search