A Statistical Model for Synthesis of Detailed Facial Geometry
ACM Transactions on Graphics (Proc. SIGGRAPH), July 2006
Abstract
Detailed surface geometry contributes greatly to the visual realism
of 3D face models. However, acquiring high-resolution face geometry
is often tedious and expensive. Consequently, most face models
used in games, virtual reality, or computer vision look unrealistically
smooth. In this paper, we introduce a new statistical technique
for the analysis and synthesis of small three-dimensional facial features,
such as wrinkles and pores. We acquire high-resolution face
geometry for people across a wide range of ages, genders, and
races. For each scan, we separate the skin surface details from a
smooth base mesh using displaced subdivision surfaces. Then, we
analyze the resulting displacement maps using the texture analysis/
synthesis framework of Heeger and Bergen, adapted to capture
statistics that vary spatially across a face. Finally, we use the extracted
statistics to synthesize plausible detail on face meshes of
arbitrary subjects. We demonstrate the effectiveness of this method
in several applications, including analysis of facial texture in subjects
with different ages and genders, interpolation between highresolution
face scans, adding detail to low-resolution face scans,
and adjusting the apparent age of faces. In all cases, we are able to
re-produce fine geometric details consistent with those observed in
high resolution scans.
Paper
Talk
- SIGGRAPH 2006 talk: PPT
Data
Citation
Aleksey Golovinskiy, Wojciech Matusik, Hanspeter Pfister, Szymon Rusinkiewicz, and Thomas Funkhouser.
"A Statistical Model for Synthesis of Detailed Facial Geometry."
ACM Transactions on Graphics (Proc. SIGGRAPH) 25(3), July 2006.
BibTeX
@article{Golovinskiy:2006:ASM, author = "Aleksey Golovinskiy and Wojciech Matusik and Hanspeter Pfister and Szymon Rusinkiewicz and Thomas Funkhouser", title = "A Statistical Model for Synthesis of Detailed Facial Geometry", journal = "ACM Transactions on Graphics (Proc. SIGGRAPH)", year = "2006", month = jul, volume = "25", number = "3" }