上面的gif图展示的是LFFD人脸检测算法,在Nvidia GPU上对1080P的图像可以跑到16ms左右。
该算法出自论文:
LFFD: A Light and Fast Face Detector for Edge Devices
https://arxiv.org/abs/1904.10633
代码开源地址:
https://github.com/YonghaoHe/A-Light-and-Fast-Face-Detector-for-Edge-Devices
LFFD在人脸检测领域并不是精度最高的,但作为近来轻量级人脸检测模型的代表,却是极具实用价值的。
请看LFFD与其他state-of-the-art算法的精度比较。
在WIDER FACE 验证集上的精度比较:
在WIDER FACE 测试集上的精度比较:
在FDDB 数据集上的精度比较:
虽然精度并不是最高水平的,但其模型大小仅9M,推断速度更是其亮点。
在NVIDIA GTX TITAN Xp (MXNet CUDA 9.0 CUDNN7.1)配置下的推断速度:
在NVIDIA TX2 (MXNet CUDA 9.0 CUDNN7.1)配置下的推断速度:
在树莓派 3 Model B (ncnn) 配置下的推断速度:
正如其论文名所说面向边缘设备的轻量且快速的人脸检测器。值得一提的是,上述评测是在Python下做的,转成C 代码应该能获得更高的速度。
不止是快,作者指出,LFFD不仅仅适用于人脸检测,实则是通用的一类目标检测器,也同样可扩展到行人检测、人头检测、车辆检测等。
作者计划后期将上述任务的预训练模型开源。
另外,LFFD还有如下优势:
- 通过添加更多CNN层,可以覆盖更大尺度的目标(比如典型的自拍场景人脸),而增加的延迟有限;
- 检测小目标能力突出,在极高分辨率(比如8K或更大)画面,可以检测其间10个像素大小的目标;
- 使用的网络操作是常见的,可以轻松部署到任何设备。
简单概括:通吃大小目标,支持各种设备^_^
感谢作者的开源~
https://github.com/YonghaoHe/A-Light-and-Fast-Face-Detector-for-Edge-Devices