Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

杨茹茵编辑

「取长补短」的RefineDet物体检测算法

编者按:基于深度学习的物体检测算法可大致分为“一阶段”和“两阶段”两类。一般而言,以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快一些原因是:

使用较少的anchor,如512尺度下,RefineDet共有1.6W个框,而SSD有2.5W个框。RefineDet使用较少anchor也能达到高精度的原因是二阶段回归,虽然总共预设了4个尺度(32,64,128,256)和3个比例(0.5,1,2),但是经过第一阶段的回归后,预设的anchor被极大丰富,因此用于第二阶段回归的anchor,具备丰富的尺度和比例。
使用较少的检测层:RefineDet在基础网络上新加了很少的卷积层,并只选了4个卷积层作为检测层。
表2 RefineDet在各个数据库上的检测精度

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

输入尺度与精度高度正相关:训练和测试的输入越大,小物体越少,精度就会越高。
BN的问题:显存的限制会导致每张GPU显卡上图片数量不足,使得BN信息统计不稳定,从而影响检测精度,可以使用同步BN或GN来解决,以训更大尺度的模型。
多尺度测试很重要:由于RefineDet最大输入只有512x512,而二步法检测器有着较大的输入如1000x600或800x800。为了公平比较而使用了多尺度测试方法,以降低尺度不同的影响。

4.扩展

提出RefineDet算法后,作者在更加贴近实际应用的人脸检测任务上对其进行了扩展验证。目前人脸检测领域难度最大数据集是WIDER FACE,它总共有32203张图像,393703个人脸标注,包含尺度,姿态,遮挡,表情,化妆,光照等难点。WIDER FACE每张图像的人脸数据偏多,平均每张图12.2人脸,密集小人脸非常多,同时根据EdgeBox的检测率情况划分为三个难度等级:Easy, Medium, Hard。
图3 人脸检测算法SRNRefineDet在处理人脸检测这一特殊任务时,并不是在所有的检测层上做二阶段分类和二阶段回归都有提升。二阶段分类用于较浅的3个检测层上有效果,原因是98.5%的锚点框关联于较浅的3个层,这些层存在正负样本不平衡的问题,二阶段分类得以发挥作用。此外,二阶段回归用于较深的3个检测层上有效果,原因是强行让较浅层利用二阶段回归去得到更准的小人脸位置,会影响更重要的分类任务,而较深的3个层则不存在这种问题,适合做二阶段回归来提升大中尺度的人脸位置。


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

参考文献下载链接:
https://pan.baidu.com/s/1-Y-V-y5ArfJT8_JJZLsjyA
提取码:
mzsn

深度学习大讲堂
深度学习大讲堂

高质量原创内容平台,邀请学术界、工业界一线专家撰稿,致力于推送人工智能与深度学习最新技术、产品和活动信息。

理论RefineDet物体检测其他智能领域机器学习
5
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

全卷积网络技术

全卷积网络最开始在论文 Fully Convolutional Networks for Semantic Segmentation(2015)中提出,它将传统卷积神经网络最后几个全连接层替换为卷积层。引入全卷积的意义在于它能实现密集型的预测,即在二维卷积下对图像实现像素级的分类,在一维卷积下对序列实现元素级的预测。

池化技术

池化(Pooling)是卷积神经网络中的一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效的原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

SSD技术

一种计算机视觉模型。论文发表于 2015 年(Wei Liu et al.)

YOLO技术

YOLO 模型最早是由 Joseph Redmon 等人在 2015 年发布的,并在随后的两篇论文中进行了修订。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

感受野技术

一个感觉神经元的感受野是指这个位置里适当的刺激能够引起该神经元反应的区域。感受野一词主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质。

推荐文章
暂无评论
暂无评论~