Skip to content

3D Head reconstruction from a single image using BFM

Notifications You must be signed in to change notification settings

diddone/face-recon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Face Reconstruction

Our face reconstruction C++ pipeline aims to obtain parameters for a morphable face model that matches a given RGB/RGB-D image. It utilizes a PCA-based Basel Face Model encompassing shape, expression, albedo, illumination, and pose parameters.

The reconstruction process follows an analysis-by-synthesis approach, updating parameters to minimize an overall energy function using Ceres. The energy function includes dense and sparse terms, incorporating geometry and color comparisons between the rendered face and the actual image.

Main Dependencies

  • OpenCV
  • Eigen3
  • Glog
  • GLFW
  • PCL
  • Boost
  • Ceres

Expression Transfer

image

Transfer expression example. We find parameters independently using source (top left) and target (bottom left) actors. Then, we transfer expression coefficients from the source into the target. Finally, we project the source image into the mesh and visualize the mask above the source image.

Results

rgb_only_table

Results of the optimization pipeline using RGB only. In the center column, we apply a BFM model texture. The last column obtains texture from the projection mesh into the image.

Building

mkdir build && cd build
cmake ..
make

Method

You can read the final report where explained our method here.

Team Members

  • Gökçe Şengün
  • Dmitrii Pozdev
  • Biray Sütçüoğlu
  • David Gichev

About

3D Head reconstruction from a single image using BFM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages