# yfeng95/face3d

Python tools for 3D face: 3DMM, Mesh processing(transform, camera, light, render), 3D face representations.

Repository: https://github.com/yfeng95/face3d
Canonical: https://ross.abutalabs.com/products/face3d
Language: Python
License Family: other
Last push: 2019-10-04T08:41:17+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 2973, "days_push": 2525, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2779, forks 608 (observed 2026-08-28T04:07:21.564159+00:00)

## What it is
A lightweight Python library implementing core 3D face processing functions: 3D morphable model (3DMM) generation and fitting, mesh I/O, transforms, camera projection, lighting, and rasterization rendering. Performance-critical parts (e.g., rasterization) are compiled from C++ via Cython, while slower numpy versions are kept for readability and learning, with formulas and references included in the code.

## Use cases
- reconstruct a 3D face from a single image with key points
- generate random 3D faces from a morphable model
- fit a 3DMM to 68 facial landmarks
- render a face mesh with different lighting and cameras
- transform and rotate 3D face meshes
- read and write OBJ mesh files for faces
- learn 3D face reconstruction algorithms with readable numpy code

## When to choose
- you are learning or researching 3D face reconstruction and want clean, formula-annotated implementations
- you need a lightweight mesh processing and rendering toolkit without heavy dependencies like OpenCV or Eigen
- you want to prototype 3DMM fitting or face generation experiments in Python
- you need fast rasterization for face meshes via the compiled Cython modules

## When to avoid
- you need production software - the project has no license file and its last release was in 2019
- you need a general-purpose 3D graphics or mesh tool (consider Open3D, trimesh, or pyrender)
- you want state-of-the-art deep-learning-based 3D face reconstruction rather than classic 3DMM methods
- you need maintained support, bug fixes, or compatibility with recent Python versions

## Facets
- artifact type: library
- maturity: maintenance
- function: image-processing, computer-vision, graphics
- domain: computer-vision, graphics, machine-learning
- platform: python, cpp, cross-platform
- tags: 3dmm, 3d-face-reconstruction, mesh-processing, cython, morphable-model, face-rendering, rasterization, obj-mesh, facial-landmarks

## Member repositories
- yfeng95/face3d (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:21.564159+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T08:16:09.366187+00:00, confidence not recorded.
  - readme: https://github.com/yfeng95/face3d (fetched 2026-08-28T04:07:21.564159+00:00, sha 3d913a4a7d71)
- Data as of 2026-08-30T08:39:29.467469+00:00.
