#100100th of 105 in ML frameworks and libraries

face-alignment

Python library that detects 2D and 3D facial landmarks with the FAN network

Stars
7.5k
License
BSD-3-Clause
Last commit
Apr 2026
Last release
Apr 2026
Language
Python
Stars, last 29 weeks+71
1 Apr 2026: 7,475 stars8 Apr 2026: 7,477 stars15 Apr 2026: 7,481 stars22 Apr 2026: 7,487 stars29 Apr 2026: 7,491 stars6 May 2026: 7,492 stars13 May 2026: 7,493 stars20 May 2026: 7,496 stars27 May 2026: 7,498 stars3 Jun 2026: 7,500 stars10 Jun 2026: 7,502 stars17 Jun 2026: 7,504 stars24 Jun 2026: 7,506 stars1 Jul 2026: 7,507 stars8 Jul 2026: 7,513 stars15 Jul 2026: 7,513 stars22 Jul 2026: 7,516 stars29 Jul 2026: 7,523 stars5 Aug 2026: 7,524 stars12 Aug 2026: 7,526 stars19 Aug 2026: 7,528 stars26 Aug 2026: 7,529 stars2 Sept 2026: 7,529 stars9 Sept 2026: 7,531 stars16 Sept 2026: 7,532 stars23 Sept 2026: 7,535 stars30 Sept 2026: 7,539 stars7 Oct 2026: 7,540 stars14 Oct 2026: 7,544 stars21 Oct 2026: 7,546 stars

7,475 on 1 Apr 20267,546 on 21 Oct 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

PyTorch-based Python package that returns 2D or 3D facial landmarks for images or whole directories, using the FAN face alignment network. Face detection is pluggable: SFD by default, with BlazeFace, YuNet, RetinaFace, SCRFD or precomputed boxes as alternatives. It runs on CPU, CUDA or Apple MPS and compiles the landmark network with torch.compile by default.

Who it is for: Python developers needing facial landmark detection in computer vision pipelines

Strengths

  • Installs with pip; same API for 2D and 3D landmarks
  • Six detector options, with per-detector CPU/MPS timings in the README
  • Runs on CPU, CUDA or Apple MPS; bfloat16 and batch size configurable
  • Can load precomputed bounding boxes, useful for evaluation

Weaknesses

  • README recommends the Lua version for numerical evaluation, since it matches the paper's models
  • Default SFD detector is slow on CPU (138.8 ms on Apple M2)
  • First run with torch.compile takes about 25 seconds
  • dlib detector is deprecated; SCRFD needs the extra onnxruntime package

What it needs

  • GPU optional
  • Docker
  • Needs PyTorch >=2.0, Python 3.9+, onnxruntime (optional, for SCRFD)
  • Models: FAN 2D landmarks, FAN 3D landmarks, SFD, BlazeFace, YuNet

Also in ML frameworks and libraries

See all 105
Also in ML frameworks and libraries
RankProjectScore
1transformersPython library defining open models for text, vision, audio and multimodal tasks168k starsApache-2.094 out of 100
2pytorchPython tensor library with GPU support and tape-based autograd for deep learning105k starscustom license94 out of 100
3ultralyticsPython library and CLI for training and running YOLO vision models62.7k starsAGPL-3.093 out of 100
#4pytorch-image-modelsPyTorch library of image models, pretrained weights and reference training scripts37.2k starsApache-2.092 out of 100
#5supervisionPython toolkit for loading, annotating and counting computer vision detections Live demo ↗ (opens in a new tab)51.3k starsMIT91 out of 100