Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
MTCNN face detection implementation for TensorFlow, as a PIP package.
| Date | Stars |
|---|---|
| 2026-07-24 | 2480 |
| 2026-07-25 | 2480 |
| 2026-07-28 | 2480 |
| 2026-07-30 | 2480 |
| 2026-08-06 | 2480 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# MTCNN - Multitask Cascaded Convolutional Networks for Face Detection and Alignment
[](https://badge.fury.io/py/mtcnn)
[](https://mtcnn.readthedocs.io/en/latest/?badge=latest)



[](https://doi.org/10.5281/zenodo.13901378)
## Overview

MTCNN is a robust face detection and alignment library implemented for Python >= 3.10 and TensorFlow >= 2.12, designed to detect faces and their landmarks using a multitask cascaded convolutional network. This library improves on the original implementation by offering a complete refactor, simplifying usage, improving performance, and providing support for batch processing.
This library is ideal for applications requiring face detection and alignment, with support for both bounding box and landmark prediction.
## Installation
MTCNN can be installed via pip:
```bash
pip install mtcnn
```
MTCNN requires Tensorflow >= 2.12. This external dependency can be installed manually or automatically along with MTCNN via:
```bash
pip install mtcnn[tensorflow]
```
## Usage Example
```python
from mtcnn import MTCNN
from mtcnn.utils.images import load_image
# Create a detector instance
detector = MTCNN(device="CPU:0")
# Load an image
image = load_image("ivan.jpg")
# Detect faces in the image
result = detector.detect_faces(image)
# Display the result
print(result)
```
Output example:
```json
[
{
"box": [277, 90, 48, 63],
"keypoints": {
"nose": [303, 131],
"mouth_right": [313, 141],
"right_eye": [314, 114],
"left_eye": [291, 117],
"mouth_left": [296, 143]
},
"confidence": 0.9985
}
]
```
## Models Overview
MTCNN uses a cascade of three networks to detect faces and facial landmarks:
- **PNet (Proposal Network)**: Scans the image and proposes candidate face regions.
- **RNet (Refine Network)**: Refines the face proposals from PNet.
- **ONet (Output Network)**: Detects facial landmarks (eyes, nose, mouth) and provides a final refinement of the bounding boxes.
All networks are implemented using TensorFlow’s functional API and optimized to avoid unnecessary operations, such as transpositions, ensuring faster and more efficient execution.
# Documentation
The full documentation for this project is available at [Read the Docs](http://mtcnn.readthedocs.io/).
## Citation
If you use this library implementation for your research or projects, please consider using this cite:
```
@software{ivan_de_paz_centeno_2024_13901378,
author = {Iván de Paz Centeno},
title = {ipazc/mtcnn: v1.0.0},
month = oct,
year = 2024,
publisher = {Zenodo},
version = {v1.0.0},
doi = {10.5281/zenodo.13901378},
url = {https://doi.org/10.5281/zenodo.13901378}
}
```
And the original research work from Kaipeng Zhang:
```
@article{7553523,
author={K. Zhang and Z. Zhang and Z. Li and Y. Qiao},
journal={IEEE Signal Processing Letters},
title={Joint Face Detection and Alignment Using Multitask Cascaded Convolutional Networks},
year={2016},
volume={23},
number={10},
pages={1499-1503},
keywords={Benchmark testing;Computer architecture;Convolution;Detectors;Face;Face detection;Training;Cascaded convolutional neural network (CNN);face alignment;face detection},
doi={10.1109/LSP.2016.2603342},
ISSN={1070-9908},
month={Oct}
}
```
You may also reference the original GitHub repository that this project was based on (including the networks weights):
[Original MTCNN Excerpt of 5,451 characters
Read on GitHub22
2
Alexis Kofman · @kompile-io · France
2
1
1
1
1
1
Justin Shenk · Germany
1
1
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:74acb4e10a9bb157, topic:tensorflow