Suppose you were making a computer animation of a scene filled with a crowd of people. Using traditional computer graphics techniques, it would be a monumental task to either model every individual's face by hand, or to ``scan'' a large number of existing individuals. Instead, we propose a method which uses data that describes the geometric variability seen in faces, to automate the process of generating face geometries.
We have developed a method capable of automatically generating distinct, plausible face geometries. This system constructs a face in two steps. The first step is the generation of a random set of measurements that characterize the face. The form and values of these measurements are computed according to face anthropometry.
Example measurements used in face anthropometry
|Anthropometry is the biological science of human body measurement. Data from face anthropometry studies, which is used in applications such as plastic surgery planning and human-factors analysis, takes the form of measurements performed on specific individuals' faces (as in the figure to the left). A suite of measurements (there are about 130 in total) attempts to characterize the range of variability seen in faces. Means and variances of measurements (as well as proportions between some of these measurements) have been published, for particular population groups.|
From this, a collection of random measurements of the face is generated according to anthropometric statistics for likely face measurements in a population.
In the second step, a face geometry is constructed which realizes these generated measurements. The anthropometric measurements are treated as constraints on a parameterized surface. We then use a technique known as variational modeling to find a smooth surface that satisfies these constraints while using a prototype shape as a reference. Variational modeling is a framework for building surfaces by constrained optimization; the output surface minimizes a measure of fairness, while satisfying a set of geometric constraints imposed on the surface.
This prototype face represents the average individual. It allows
for the specification of the information about facial
appearance that was not encoded in the anthropometric
measurements. To the left is the prototype face used by our
A face is generated by finding the minimum bending energy deformation which allows for all of the measurement constraints to be satisfied. This involves solving a large constrained optimization problem. Fortunately, much of the structure of this problem can be solved for in advance, since the configuration of the constraints is unchanging across faces.
Below are some face models that were automatically generated by our framework (in the first set, the hair style and skin color were manually specified).
Of course, it is not difficult to generate a large number of faces from a particular population group; each one requires about one minute of computation. This took one hour:
In the end, the measurements supplied by anthropometry data could have been more detailed in certain areas of the face (such as the chin). A lack of measurements results in certain features looking very much the same across individuals. (Actually, the results are better when viewed in profile due to the larger number of measurements on the facial mid-line.)
Furthermore, all of the individuals are ``average'' given that only mean and variance data was supplied; more detailed statistics (such as covariance information or exact distributions) would be beneficial. Finally, having a prototype shape with a more neutral appearance (instead of looking male) resulted in some of these features leaking through when not appropriate (such as in the females, which retain some male features).
These limitations underscore the importance for gathering and analyzing data of diverse human populations.
This work is described in the following publication: