FaceBoxes —— 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硬件性能有点好)

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NineDays66

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值