已开源 | 极速CNN人脸检测,速度可达1000FPS

TensorFlow与机器学习 徐 自远 1167℃

近日,南方科技大学于仕琪教授团队开源了一种CNN人脸检测算法,名为libfacedetection,此次是团队第三次开源,这版模型新增加了五点人脸检测功能,人脸检测速度可以达到1000FPS,目前该开源项目在GitHub上已经获得了8000个星。

地址:https://github.com/ShiqiYu/libfacedetection

与之前的人脸检测版本相比,主要变化有:

  • 增加了五点人脸关键点检测,关键点检测和人脸检测同步进行。
  • 计算量未增加。

此开源人脸检测库libfacedetection,有如下特点:

卷积操作无浮点计算,算法基本全是8位整数操作。

采用AVX512/AVX2/NEON指令提速。

代码更加简短和简洁,只有一千多行代码。

代码不依赖任何其他第三方库,只要平台能编译C++则可使用。

项目License采用3-Clause BSD License,可以商业应用!

算法运行速度如下:

另外,团队在训练V3这个新模型时,没有继续使用Caffe进行训练,而改用了PyTorch。因为训练时会涉及频繁的模型修改,PyTorch在自定义模型方面比Caffe更加方便。

新的PyTorch训练程序参考了中科院自动化所张士峰的GitHub项目FaceBoxes.PyTorch以及Max deGroot的GitHub项目ssd.pytorch,并把代码整理的更简洁。

之所以能够人脸检测和关键点检测同时做,是采用了下面策略:

  • 前100个Epoch仅训练人脸检测;
  • 后400个Epoch人脸检测和关键点检测交替训练。

本项目的亮点是将训练好的模型进行8位定点化,并自动生成libfacedetection库所需的CPP文件;还可以自动将卷积层conv和批归一化层bn进行融合,使之成为一个新的卷积层,这样不需要再进行bn操作,以提升速度。定点化和层融合详见Readme文档和代码。

地址: https://github.com/ShiqiYu/libfacedetection.train

 

 

已开源 | 极速CNN人脸检测,速度可达1000FPShttps://m.toutiaocdn.com/group/6800994869599797772/?app=news_article&timestamp=1583704823&req_id=2020030906002301001404115803BDFF47&group_id=6800994869599797772&tt_from=android_share&utm_medium=toutiao_android&utm_campaign=client_share

转载请注明:徐自远的乱七八糟小站 » 已开源 | 极速CNN人脸检测,速度可达1000FPS

喜欢 (1)

苏ICP备18041234号-1 bei_an 苏公网安备 32021402001397号