软硬件环境
- windows 10 64bit
- DBFace
- pytorch 1.6
- opencv 4.4.0
简介
DBFace是一个开源的轻量级(模型只有7兆)的实时人脸检测方法,检测的速度与精度都非常不错。下图展示了多种人脸检测方法在WiderFace数据集上的测试效果,可以看到不仅DBFace模型的大小最小,而且在Easy、medium、Hard三个测试任务中均取得了最高的检测精度。

下图展示了不同人脸检测方法在WiderFace数据集上的P-R曲线,可以看出,DBFace包围的面积在三个任务中均相对较大。

安装测试
首先创建python虚拟环境
conda create -n dbface python=3.7
conda activate dbface
接下来克隆DBFace的源码并安装必要的依赖库
git clone https://github.com/dlunion/DBFace.git
cd DBFace
# 安装opencv
pip install opencv-python
# 安装pytorch1.6和cuda10.1
pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
修改main.py文件第54行,由
ys = list((indices / hm_width).int().data.numpy())
改为
ys = list((torch.true_divide(indices, hm_width)).int().data.numpy())
然后执行测试脚本
python main.py
程序读取datas下的图片文件进行人脸检测,然后将检测结果保存在detect_result文件夹下


可以看到在这张全世界最大的自拍图片中,DBFace表现的非常棒,很多人脸,就算是人的肉眼,也很难分辨出。
除了检测图片中的人脸,测试代码中还提供了对usb camera的支持
