Skip to content

Latest commit

 

History

History
146 lines (109 loc) · 7.75 KB

README_cn.md

File metadata and controls

146 lines (109 loc) · 7.75 KB

简体中文 | English

YOLOv6-Face

基于 YOLOv6 v3.0 分支 代码实现人脸检测任务。

新特性

  • 人脸关键点定位
  • Repulsion 损失函数
  • 相同通道解耦头

WIDERFACE 模型指标

Model Size Easy Medium Hard SpeedT4
trt fp16 b1
(fps)
SpeedT4
trt fp16 b32
(fps)
Params
(M)
FLOPs
(G)
YOLOv6-N 640 95.0 92.4 80.4 797 1313 4.63 11.35
YOLOv6-S 640 96.2 94.7 85.1 339 484 12.41 32.45
YOLOv6-M 640 97.0 95.3 86.3 188 240 24.85 70.59
YOLOv6-L 640 97.2 95.9 87.5 102 121 56.77 159.24
YOLOv6Lite-S 416 89.6 84.6 58.8 / / 0.53 0.90
YOLOv6Lite-M 416 90.6 86.1 60.6 / / 0.76 1.07
YOLOv6Lite-L 416 91.8 87.6 64.2 / / 1.06 1.40

表格备注

  • 以上模型均在COCO预训练模型上微调300轮之后的结果.
  • mAP 和速度指标是在 WIDER FACE 数据集上评估的,模型输入分辨率为 640×640.
  • 速度是在 T4 上测试的,TensorRT 版本为 8.2.
  • 复现 YOLOv6 的速度指标,请查看速度测试 教程.
  • YOLOv6 的参数和计算量是在推理模式下计算的.

快速开始

安装
git clone https://github.com/meituan/YOLOv6
cd YOLOv6
git checkout yolov6-face
pip install -r requirements.txt
训练

单卡

python tools/train.py --batch 8 --conf configs/yolov6s_finetune.py --data data/WIDER_FACE.yaml --fuse_ab --device 0

多卡 (推荐使用 DDP 模式)

python -m torch.distributed.launch --nproc_per_node 8 tools/train.py --batch 64 --conf configs/yolov6s_finetune.py --data data/WIDER_FACE.yaml --fuse_ab --device 0,1,2,3,4,5,6,7
  • fuse_ab: 使用联合锚点训练模式
  • conf: 配置文件路径,里面包含网络结构、优化器配置、超参数信息。如果您是在自己的数据集训练,我们推荐您使用yolov6n/s/m/l_finetune.py配置文件
  • data: 数据集配置文件,以 WIDERFACE 数据集为例,您可以在 WIDERFACE 下载数据, 在这里下载YOLO 格式标签
  • 确保您的数据集按照下面这种格式来组织;
├── widerface
│   ├── images
│   │   ├── train
│   │   └── val
│   ├── labels
│   │   ├── train
│   │   ├── val

推理

首先,从release 页面 下载一个训练好的模型权重文件,或选择您自己训练的模型;

然后,通过 tools/infer.py 文件进行推理。

python tools/infer.py --weights yolov6s_face.pt --source ../widerface/images/val/ --yaml data/WIDER_FACE.yaml --conf 0.02 --not-save-img --save-txt-widerface --name widerface_yolov6s
WIDERFACE 评估
cd widerface_evaluate
python evaluation.py --pred ../runs/inference/widerface_yolov6s/labels/
部署
教程
第三方资源

如果您有任何问题,欢迎加入我们的微信群一起讨论交流!