“取长补短”的RefineDet物体检测算法

2019 年 5 月 30 日 深度学习大讲堂

编者按:基于深度学习的物体检测算法可大致分为“一阶段”和“两阶段”两类。一般而言,以Faster RCNN为代表的两阶段检测器在准确度上有优势;而以SSD为代表的单阶段检测器在速度上有优势。正所谓“他山之石,可以攻玉”,本文作者提出了融合一二步法思想的RefineDet物体检测算法,在保持一步法速度的前提下,获得了二步法的精度。


1.引言

物体检测是视觉感知的第一步,也是计算机视觉的一个重要分支。物体检测的目标是用框去标出物体的位置,并给出物体的类别。目前,基于深度学习的物体检测算法大致分为两类:一步法检测器和二步法检测器。


一步法检测器在原图上铺设一系列锚点框,利用一个全卷积网络,对这些锚点框进行一次分类和一次回归,得到检测结果。而二步法检测器在原图上铺设一系列锚点框,先利用一个全卷积网络对这些锚点框进行第一次分类和第一次回归,得到候选区域,抠出每一个候选区域的特征后,再利用一个网络对候选区域进行第二次分类和第二次回归,得到最终的检测结果。


相对于一步法检测器,二步法检测器多了额外的第二步,若在相同的条件下,如输入、锚点框、机器等,一步法一般胜在高效率,而二步法有更高的精度,现在各个检测库上排名靠前的算法,基本都是二步法。代表性的二步法检测器有Faster R-CNN[1]、R-FCN[2]、FPN[3]、Cascade R-CNN[4],其中Faster R-CNN是奠基性工作,基本所有的二步法检测算法,都是在它的基础上改进的。一步法检测器则有YOLO[5]、SSD[6]、RetinaNet[7]、CornerNet[8],其中SSD是一步法检测器的集大成者,后续大部分的一步法工作都是基于它的。


图1  一步法和二步法检测流程的对比


二步法相对于一步法,多了后面的进一步分类和回归,这一步一般比较耗时但能显著提升精度,原因是它让二步法相对于一步法有了以下三个优势:


  • 二阶段的分类:二步法中的第一步分类时,正负样本是极不平衡的,导致分类器训练困难,这也是一步法效果不如二步法的原因之一。而第二步分类时,第一步会帮第二步滤掉很多简单负样本,使得第二步分类中时正负样本比例比较平衡,即二步法可以很大程度地缓和正负样本极不平衡的问题。

  • 二阶段的回归:二步法中的第一步对锚点框进行校正,然后把校正后得到的候选框送给第二步做进一步的校正。

  • 二阶段的特征:在二步法中,第一步和第二步法除了共享的特征外,都有自己独有的特征,专注于自身不同难度的任务,如第一步的特征专注于二分类和初步回归,第二步的特征处理多分类和精确回归。


为了能让一步法也具备二步法的这些优势以提升检测精度,同时能够保持原有的检测速度,作者提出了RefineDet这一通用物体检测算法。能够让一步法具备二阶段特征、二阶段分类、二阶段回归,从而在保持一步法速度前提下,获得二步法的精度。


2.方法

图2 RefineDet算法的网络架构示意图


上图是RefineDet的检测框架示意图,由ARM(Anchor Refinement Module)和ODM(Object Detection Module) 模块组成,它俩由TCB(Transfer Connection Block)连接。ARM专注于二分类,为后续ODM滤掉大量的简单负样本,同时进行初级的边框校正,为后续ODM提供更好的回归起点。ODM把ARM优化过的锚点框作为输入,专注于多分类和精准的边框校正。其中ODM没有使用耗时的逐区域操作,而是直接通过TCB转换ARM特征、融合高层特征,以得到感受野丰富、细节充足、内容抽象的特征,用于进一步的分类和回归,使得一步法检测器RefineDet具备了二步法的二阶段分类、二阶段回归、二阶段特征这3个优势。


3.实验

表1 检测精度 vs. 检测速度


表1总结了著名检测算法的速度以及精度。RefineDet在保持一步法速度的同时,能够达到甚至超过二步法的精度。跟SSD相比,RefineDet算法框架多了下面一部分卷积层和反卷积层,速度还比SSD快一些原因是:


  1. 使用较少的anchor,如512尺度下,RefineDet共有1.6W个框,而SSD有2.5W个框。RefineDet使用较少anchor也能达到高精度的原因是二阶段回归,虽然总共预设了4个尺度(32,64,128,256)和3个比例(0.5,1,2),但是经过第一阶段的回归后,预设的anchor被极大丰富,因此用于第二阶段回归的anchor,具备丰富的尺度和比例。

  2. 使用较少的检测层:RefineDet在基础网络上新加了很少的卷积层,并只选了4个卷积层作为检测层。


表2 RefineDet在各个数据库上的检测精度


表2是RefineDet算法在VOC2007,VOC2012,COCO上详细的结果。由于显存的限制,只训了输入为320和512的两个模型。从这些结果中,有以下几点结论:


  1. 输入尺度与精度高度正相关:训练和测试的输入越大,小物体越少,精度就会越高。

  2. BN的问题:显存的限制会导致每张GPU显卡上图片数量不足,使得BN信息统计不稳定,从而影响检测精度,可以使用同步BN或GN来解决,以训更大尺度的模型。

  3. 多尺度测试很重要:由于RefineDet最大输入只有512x512,而二步法检测器有着较大的输入如1000x600或800x800。为了公平比较而使用了多尺度测试方法,以降低尺度不同的影响。


4.扩展

提出RefineDet算法后,作者在更加贴近实际应用的人脸检测任务上对其进行了扩展验证。目前人脸检测领域难度最大数据集是WIDER FACE,它总共有32203张图像,393703个人脸标注,包含尺度,姿态,遮挡,表情,化妆,光照等难点。WIDER FACE每张图像的人脸数据偏多,平均每张图12.2人脸,密集小人脸非常多,同时根据EdgeBox的检测率情况划分为三个难度等级:Easy, Medium, Hard。


图3 人脸检测算法SRN


RefineDet在处理人脸检测这一特殊任务时,并不是在所有的检测层上做二阶段分类和二阶段回归都有提升。二阶段分类用于较浅的3个检测层上有效果,原因是98.5%的锚点框关联于较浅的3个层,这些层存在正负样本不平衡的问题,二阶段分类得以发挥作用。此外,二阶段回归用于较深的3个检测层上有效果,原因是强行让较浅层利用二阶段回归去得到更准的小人脸位置,会影响更重要的分类任务,而较深的3个层则不存在这种问题,适合做二阶段回归来提升大中尺度的人脸位置。


图4 人脸检测算法ISRN


此外,目前的检测器都需要加载预训练模型,这大大限制了网络的灵活性,使得不能够对网络进行任何微小的改动。作者成功地验证了不需要预训练模型也能够成功地训出检测器后,对网络进行了改进以提升小物体的检测性能。常用的ResNet网络对小物体不大友好,因为它第一个卷积层就有一个下采样操作,紧接着的第二个池化层也有一个下采样操作,这会导致小物体的信息基本丢失。为了解决这一问题,作者对ResNet网络进行了相应的改进,以对小物体更友好,并基于RefineDet成功地从零训了一个人脸检测器,在WIDER FACE数据集上达到了较高的检测精度。


参考文献下载链接

https://pan.baidu.com/s/1-Y-V-y5ArfJT8_JJZLsjyA 

提取码:

mzsn 



编辑:杨茹茵


--end--



该文章属于“深度学习大讲堂”原创,如需要转载,请联系 ruyin712。


作者简介:

张士峰,中科院自动化所2015级直博生,导师李子青研究员,研究方向为基于深度学习的物体检测,包括通用物体检测、人脸检测、行人检测。目前已发表论文16篇,其中第一作者论文11篇,包括3篇CVPR、IJCV、ICCV、ECCV、IJCAI、AAAI等。在投论文7篇,在申专利4项,担任TPAMI、TNNLS、TMM、CVPR、ICCV、ECCV等国际期刊和会议的审稿人,获CCF-CV学术新锐奖、百度奖学金、国家奖学金、唐立新奖学金、必和必拓奖学金、攀登一等奖学金、三好学生、国际人脸检测竞赛季军、最佳学生论文等荣誉。



往期精彩回顾

动量迭代式对抗噪声生成方法 | VALSE2018年度杰出学生论文奖

何晖光:多模态情绪识别及跨被试迁移学习

Deep Unrolling:深度网络与传统模型之间的桥梁

华科白翔教授团队ECCV2018 OCR论文:Mask TextSpotter

【CVPR2018】物体检测中的结构推理网络

还不知道GAN?小心落伍于这个AI时代

地平线杨铭:从无形视觉到有形芯片



欢迎关注我们!


深度学习大讲堂是由中科视拓运营的高质量原创内容平台,邀请学术界、工业界一线专家撰稿,致力于推送人工智能与深度学习最新技术、产品和活动信息!


中科视拓(SeetaTech)将秉持“开源开放共发展”的合作思路,为企业客户提供人脸识别、计算机视觉与机器学习领域“企业研究院式”的技术、人才和知识服务,帮助企业在人工智能时代获得可自主迭代和自我学习的人工智能研发和创新能力。


中科视拓目前正在招聘: 人脸识别算法研究员,深度学习算法工程师,GPU研发工程师, C++研发工程师,Python研发工程师,嵌入式视觉研发工程师,运营经理。有兴趣可以发邮件至:hr@seetatech.com,想了解更多可以访问,www.seetatech.com

中科视拓订阅号

深度学习大讲堂


点击阅读原文打开中科视拓官方网站

登录查看更多
5

相关内容

【CMU】基于图神经网络的联合检测与多目标跟踪
专知会员服务
54+阅读 · 2020年6月24日
【人大】图实现算法综述与评测分析
专知会员服务
37+阅读 · 2020年4月28日
3D目标检测进展综述
专知会员服务
186+阅读 · 2020年4月24日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
【CVPR2020-谷歌】多目标(车辆)跟踪与检测框架 RetinaTrack
专知会员服务
44+阅读 · 2020年4月10日
目标检测中边界框的回归策略
极市平台
17+阅读 · 2019年9月8日
FCOS: 最新的one-stage逐像素目标检测算法
极市平台
15+阅读 · 2019年4月14日
基于深度学习的通用物体检测算法对比探索【附PPT与视频资料】
人工智能前沿讲习班
5+阅读 · 2019年1月11日
ECCV 2018 | CornerNet:目标检测算法新思路
极市平台
13+阅读 · 2018年8月11日
CVPR 2018|Cascade R-CNN:向高精度目标检测器迈进
极市平台
10+阅读 · 2018年7月20日
Cascade R-CNN 论文笔记
统计学习与视觉计算组
8+阅读 · 2018年6月28日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Arxiv
6+阅读 · 2018年7月9日
Arxiv
4+阅读 · 2018年3月19日
Arxiv
8+阅读 · 2018年1月12日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关VIP内容
【CMU】基于图神经网络的联合检测与多目标跟踪
专知会员服务
54+阅读 · 2020年6月24日
【人大】图实现算法综述与评测分析
专知会员服务
37+阅读 · 2020年4月28日
3D目标检测进展综述
专知会员服务
186+阅读 · 2020年4月24日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
【CVPR2020-谷歌】多目标(车辆)跟踪与检测框架 RetinaTrack
专知会员服务
44+阅读 · 2020年4月10日
相关资讯
目标检测中边界框的回归策略
极市平台
17+阅读 · 2019年9月8日
FCOS: 最新的one-stage逐像素目标检测算法
极市平台
15+阅读 · 2019年4月14日
基于深度学习的通用物体检测算法对比探索【附PPT与视频资料】
人工智能前沿讲习班
5+阅读 · 2019年1月11日
ECCV 2018 | CornerNet:目标检测算法新思路
极市平台
13+阅读 · 2018年8月11日
CVPR 2018|Cascade R-CNN:向高精度目标检测器迈进
极市平台
10+阅读 · 2018年7月20日
Cascade R-CNN 论文笔记
统计学习与视觉计算组
8+阅读 · 2018年6月28日
相关论文
Top
微信扫码咨询专知VIP会员