FaceBoxes —— CPU上实时的人脸检测
2017-09-07 15:11
148 查看
一篇速度还可以的多尺度人脸检测文章。
方法和SSD大同小异。
文章链接: 《FaceBoxes: A CPU Real-time Face Detector with High Accuracy》
如上图,输入单张图片,在三个网络分支检测人脸。
在网络前期,使用RDCL快速的缩小feature map的大小。 主要设计原则如下:
(1) Conv1, Pool1, Conv2 和 Pool2 的stride分别是4, 2, 2 和 2。这样整个RDCL的stride就是32,可以很快把feature map的尺寸变小。
(2)卷积(或pooling)核太大速度就慢,太小覆盖信息又不足。文章权衡之后,将Conv1, Pool1, Conv2 和 Pool2 的核大小分别设为7x7,3x3,5x5,3x3
(3)使用CReLU来保证输出维度不变的情况下,减少卷积核数量。
(2)Multiple Scale Convolutional Layers(MSCL)
在网络后期,使用MSCL更好地检测不同尺度的人脸。 主要设计原则有:
(1) 类似于SSD,在网络的不同层进行检测;
(2) 采用Inception模块。由于Inception包含多个不同的卷积分支,因此可以进一步使得感受野多样化。
(3)Anchor densification strategy
SSD和Faster R-CNN此类方法对小目标效果不好,一定程度上是因为小目标所能对应的anchor比较少,导致训练不足。
下图是本文网络三个分支默认anchor的大小,以及每个分支对应的spatial stride。
我们可以据此定义anchor密度为(anchor大小 / stride)。 显然,第一个分支的一些anchor密度不足。这也是为什么小目标检测效果不佳的重要原因。
为了anchor密度均衡,可以对密度不足的anchor以中心进行偏移加倍,如下图所示:
CPU速度测试:(这个CPU硬件性能有点好)
方法和SSD大同小异。
文章链接: 《FaceBoxes: A CPU Real-time Face Detector with High Accuracy》
1. 方法介绍
如上图,输入单张图片,在三个网络分支检测人脸。
2. 要点介绍
(1)Rapidly Digested Convolutional Layers(RDCL)在网络前期,使用RDCL快速的缩小feature map的大小。 主要设计原则如下:
(1) Conv1, Pool1, Conv2 和 Pool2 的stride分别是4, 2, 2 和 2。这样整个RDCL的stride就是32,可以很快把feature map的尺寸变小。
(2)卷积(或pooling)核太大速度就慢,太小覆盖信息又不足。文章权衡之后,将Conv1, Pool1, Conv2 和 Pool2 的核大小分别设为7x7,3x3,5x5,3x3
(3)使用CReLU来保证输出维度不变的情况下,减少卷积核数量。
(2)Multiple Scale Convolutional Layers(MSCL)
在网络后期,使用MSCL更好地检测不同尺度的人脸。 主要设计原则有:
(1) 类似于SSD,在网络的不同层进行检测;
(2) 采用Inception模块。由于Inception包含多个不同的卷积分支,因此可以进一步使得感受野多样化。
(3)Anchor densification strategy
SSD和Faster R-CNN此类方法对小目标效果不好,一定程度上是因为小目标所能对应的anchor比较少,导致训练不足。
下图是本文网络三个分支默认anchor的大小,以及每个分支对应的spatial stride。
我们可以据此定义anchor密度为(anchor大小 / stride)。 显然,第一个分支的一些anchor密度不足。这也是为什么小目标检测效果不佳的重要原因。
为了anchor密度均衡,可以对密度不足的anchor以中心进行偏移加倍,如下图所示:
3. 实验结果
FDDB上的测试结果:CPU速度测试:(这个CPU硬件性能有点好)
相关文章推荐
- 【人脸检测】学界 | 中科院自动化研究所提出 FaceBoxes:实时、高准确率的 CPU 面部检测器
- 人脸检测--FaceBoxes: A CPU Real-time Face Detector with High Accuracy
- 人脸检测之FaceBoxes
- 玩转Android Camera开发(五):基于Google自带算法实时检测人脸并绘制人脸框(网络首发,附完整demo)
- python版opencv摄像头人脸实时检测方法
- OpenCV与Compressive Tracking实现人脸的实时检测与跟踪
- Realsense(五)多人脸实时检测及跟踪代码
- opencv-摄像头人脸人眼实时检测
- 实时人脸检测 (Real-Time Face Detection)
- C# + emgucv显示实时视频并检测人脸
- vs2010+opencv249人脸正侧脸摄像头实时检测并调用对应不同小视频
- TensorFlow实现人脸识别(5)-------利用训练好的模型实时进行人脸检测
- opencv从摄像头读取视频并实时进行人脸检测代码
- 基于Opencv/TensorFlow/mtcnn/Facenet的实时人脸检测/人脸识别
- PAUL VIOLA 鲁棒的实时人脸检测:Robust Real-Time Face Detection
- 用摄像头进行人脸和人眼实时检测的优化 算法
- 使用OpenCV Android SDK从摄像头帧实时检测人脸
- 【Android】开启前后相机用OpenCV进行实时人脸检测
- 基于Google自带算法实时检测人脸并绘制人脸框(网络首发,附完整demo)
- VLC for Android 基于 Opencv 对 RTSP视频 实时人脸检测