#221 · Primary category: Computer Vision

eos

3d-face 3d-face-reconstruction 3dmm c-plus-plus computer-vision cpp14 cpp17 cross-platform face-models image-processing machine-learning modern-cpp python

A lightweight 3D Morphable Face Model library in modern C++

Project last updated:05/01/25

GitHub Stars

2.0K

Forks

594

Contributors

14

License

Apache-2.0

Why we included this project

eos is a good pick for teams that need 3D face fitting embedded directly into a C++ codebase. It wraps the whole workflow, from loading a morphable face model to estimating camera pose, fitting shape and expression, and extracting pose-invariant texture, into one header-only library. Several well-known models work out of the box, including Surrey, Basel 2009 and 2017, and LYHM, and a low-resolution Surrey model ships with the repo so the fitting example runs end to end without hunting down external data. Python bindings installable via pip make the core approachable for prototyping, while the C++ side stays light on dependencies and cross-platform for production use. If you are comparing classical 3DMM fitting against newer learning-based methods, or adding face fitting to an existing vision or graphics stack, eos gives you a solid baseline to start from.

Articles for this project

No articles for this project yet.

To suggest a topic or contribute an article, contact us.

Related projects in this category