/yolo-face

YOLO Face ๐Ÿš€ in PyTorch

Primary LanguagePythonGNU General Public License v3.0GPL-3.0


Ultralytics CI YOLOv8 Citation Docker Pulls
Run on Gradient Open In Colab Open In Kaggle

Ultralytics YOLOv8, developed by Ultralytics, is a cutting-edge, state-of-the-art (SOTA) model that builds upon the success of previous YOLO versions and introduces new features and improvements to further boost performance and flexibility. YOLOv8 is designed to be fast, accurate, and easy to use, making it an excellent choice for a wide range of object detection, image segmentation and image classification tasks.

๐Ÿ”ฅUpdate

  • โœ… YOLOv11-n (face) trained on WIDERFace [08.10]
  • โœ… YOLOv11-s (face) trained on WIDERFace [08.10]
  • โœ… YOLOv11-m (face) trained on WIDERFace [09.10]
  • โœ… YOLOv10-n (face) trained on WIDERFace [10.10]
  • โœ… YOLOv10-s (face) trained on WIDERFace [10.10]
  • โœ… YOLOv10-m (face) trained on WIDERFace [11.10]

Installation

# clone repo
git clone https://github.com/akanametov/yolo-face

# pip install required packages
pip install ultralytics

# go to code folder
cd yolo-face

Models

yolov11n-face.pt yolov11s-face.pt yolov11m-face.pt

yolov10n-face.pt yolov10s-face.pt yolov10m-face.pt

yolov8n-face.pt yolov8m-face.pt yolov8l-face.pt

yolov8n-person.pt

yolov8n-football.pt yolov8m-football.pt

yolov8n-parking.pt yolov8m-parking.pt

yolov8n-drone.pt yolov8m-drone.pt

ONNX models

yolov11n-face.onnx yolov10n-face.onnx yolov8n-face.onnx

To convert models to .onnx format:

# Install ultralytics
pip install ultralytics
# Convert with command
yolo export model=yolov10n-face.pt format=onnx

YOLOv11-face

Inference

On image:

yolo task=detect mode=predict model=yolov11n-face.pt conf=0.25 imgsz=1280 line_thickness=1 max_det=1000 source=examples/face.jpg

Results

PR curve:

Losses and mAP:

Confusion matrix:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolo11n.pt \
data=datasets/data.yaml \
epochs=100 \
batch=32 \
imgsz=640

YOLOv8-face

Inference

On image:

yolo task=detect mode=predict model=yolov8n-face.pt conf=0.25 imgsz=1280 line_thickness=1 max_det=1000 source=examples/face.jpg

Results

PR curve:

Losses and mAP:

Confusion matrix:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolov8n.pt \
data=datasets/data.yaml \
epochs=100 \
imgsz=640

YOLOv8-person

Inference

On image:

yolo task=detect mode=predict model=yolov8n-face.pt conf=0.25 imgsz=1280 line_thickness=1 max_det=1000 source=examples/person.jpg

Results

PR curve:

Losses and mAP:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolov8n.pt \
data=datasets/data.yaml \
epochs=100 \
imgsz=640

YOLOv8-football

Inference

On image:

yolo task=detect mode=predict model=yolov8m-football.pt conf=0.25 imgsz=1280 line_thickness=1 source=examples/football.jpg

Results

PR curve:

Losses and mAP:

Confusion matrix:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolov8m.pt \
data=datasets/data.yaml \
epochs=120 \
imgsz=960

YOLOv8-parking

Inference

On image:

yolo task=detect mode=predict model=yolov8m-parking.pt conf=0.25 imgsz=1280 line_thickness=1 source=examples/parking.jpg

Results

PR curve:

Losses and mAP:

Confusion matrix:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolov8m.pt \
data=datasets/data.yaml \
epochs=10 \
batch=32 \
imgsz=640

YOLOv8-drone

Inference

On image:

yolo task=detect mode=predict model=yolov8m-drone.pt conf=0.25 imgsz=1280 line_thickness=1 source=examples/drone.jpg

Results

PR curve:

Losses and mAP:

Confusion matrix:

Training

Data preparation

Single GPU training

# train model
yolo task=detect \
mode=train \
model=yolov8m.pt \
data=datasets/data.yaml \
epochs=100 \
imgsz=640

Transfer learning

yolov8n.pt

yolov8m.pt

License

YOLOv8 is available under two different licenses:

  • GPL-3.0 License: See LICENSE file for details.
  • Enterprise License: Provides greater flexibility for commercial product development without the open-source requirements of GPL-3.0. Typical use cases are embedding Ultralytics software and AI models in commercial products and applications. Request an Enterprise License at Ultralytics Licensing.

Contact

For YOLOv8 bugs and feature requests please visit GitHub Issues. For professional support please Contact Us.