您的位置:首页 > 移动开发 > Objective-C

[目标检测] RON-Reverse Connection with Objectness Prior Networks for Object Detection

2018-01-20 16:11 686 查看
当前最好的基于深度网络的目标检测框架可以分为两个主要方法流派:基于区域的方法(region-based)和不基于区域(region-free)的方法。两种方法各有优势和劣势。

由清华大学计算机系智能技术与系统国家重点实验室、清华国家信息实验室、清华大学计算机科学与技术系、英特尔中国研究院、清华大学电子工程系的研究人员共同参与的关于高效视觉目标检测的研究已经被 CVPR 2017 接收。论文题目是《RON: Reverse Connection with Objectness Prior Networks for Object Detection》。作者是孔涛、孙富春、Anbang Yao、刘华平、Ming Lu 和陈玉荣。该研究结合了两个主要方法流派的优点,提出了一个有效、高效的通用对象检测框架 RON。

一、网络结构

RON主要关注于两个目标检测领域的基本问题:

多尺度目标定位:研究设计了反向连接(reverse connection),使网络能够检测多层 CNN 中的对象

负样本挖掘:提出了目标先验(objectness prior)来引导目标对象搜索;利用多任务损失函数优化整个网络,这样网络就能直接预测最终检测结果。

在测试中,RON 达到了先进的目标检测性能。采用VGG-16网络在MS COCO数据集上预训练模型,在PASCAL VOC数据集上fine-tune,输入图片resize到384×384时,在VOC 2007数据集上m-AP达到了81.3%,在VOC 2012数据集上m-AP达到了80.7%。在测试阶段使用1.5G GPU显存,图片处理速度为15FPS,相同条件下比Faster R-CNN快3倍。

1.1 网络准备

使用VGG-16网络在ImageNet数据集上预训练作为测试用例参考模型。VGG-16有13个卷积层和3个全连接层,RON将全连接层FC6(第14层)和FC7(第15层)换成卷积层,并且用步长为2的2×2卷积核来将FC7层的分辨率降为一半。

1.2 反向连接

将细粒度的信息和高度抽象的信息结合可以有助于多尺度目标检测。受剩余连接(residual connection)启发,在传统CNN结构上提出了反向连接(reverse connection),这使得前向特征能具有更多的语义信息。反向连接示意图如下:



首先,一个反卷积层被应用于反向融合图n+1(reverse fusion map),在上图中标注为rf-map n+1,并且一个卷积层与主干层n相连,以保证sum输入具有相同的维度。接着,两个相应的图逐元素相加得到rf-map n,以此类推。RON网络结构中,针对不同的规模,共有4个这样的反向连接结构。

由于反向连接是可学习的,前面层的语义信息能够明显增强,这一特性使得RON比SSD在多尺度目标检测上更加有效。

1.3 参考框



1.4 目标先验

对于上面介绍的参考框来说,只有一小部分的参考框真正包含物体,因此物体和非物体的数量极不平衡。基于区域的方法通过区域提取网络(region proposal networks)来克服这个问题,而RON添加了目标先验(objectness prior)来指导目标的搜索,没有生成新的区域。具体来说,在Softmax后添加一个3×3×2的卷积核来指示在每个参考框中是否存在物体。由于在每个位置有10个默认框(2个尺度和5个比例),故目标先验图的通道数为10。

下图展示了从一幅具体的图中生成的多尺度目标先验图,为了可视化,将10个通道的目标先验图进行了平均。



对于上图,(a)和(b)图体现出了沙发的位置,(c)特征图突出了棕色的狗,(d)图显示出白色狗的位置。可以看出,目标先验图可以明确指示待检测目标的存在,因此搜索范围可以大大降低,不同尺度的目标会在对应的特征图中体现出来。

1.5 检测和边框回归

将inception module应用于反向连接过程生成的特征图:在特征图上添加两个inception blocks,并分类最终的inception outputs。

目标检测和边框回归模型如下图所示,上面为边框回归,下面为目标分类。



1.6 目标先验和检测结合

对于网络训练:首先给每个参考框一个二值标签,用于指示是否包含物体,若包含物体,则需要再分配一个具体类别标签。对每一个真实框(ground truth box),找到和它重叠面积最大的候选区域。对每个候选区域,找到和它重叠面积大于0.5的真实框。这种匹配策略保证了每一个真实框都至少有一个候选框和它对应。对于重叠面积小于0.3的,分配负样本label。

每一个参考框有两个label,一个是不是目标的label,另一个类别label。在训练的时候,网络会根据目标先验动态更新类别label。在前向传播时,网络首先产生目标先验,并进行类别检测。但是当反向传播时,网络首先会产生目标先验,然后对于检测,只会在objectness得分大于某个阈值的区域内进行目标检测。额外的计算仅仅在于为反向传播选择训练样本。当选择合适的阈值时,样本的数量减少了,这样反向传播的时间就缩短了。

下图所示为将目标先验和检测进行映射。



二、训练和测试

2.1 Loss Function



2.2 数据增强

使用如下策略:

- (1)水平翻转。

- (2)从原图中按照{0.4, 0.5, 0.6, 0.7, 0.8, 0.9}的比例从原图中扣局部图,保证每个局部图中包含目标的中心。这些方法对于大目标可以很好地增加数量,但是对于小目标效果不好。所以针对小目标,增加一个小尺度进行训练。某个尺度下的大目标在较小的尺度下,就会变成小目标。这个训练策略可以避免对特定目标的尺寸过拟合。

2.3 参数设置

训练部分



测试部分



三、实验部分

3.1 VOC实验



3.2 Ablation Study

作者做了两个实验来验证他们提出的两个方法的有效性。

第一个实验室验证多尺度特征是有效的,结果如下:



3.3 Objectness Prior vs. RPN



四、参考文献

[1] Kong T, Sun F, Yao A, et al. Ron: Reverse connection with objectness prior networks for object detection[C]//IEEE Conference on Computer Vision and Pattern Recognition. 2017, 1: 2.

[2] Liu W, Anguelov D, Erhan D, et al. Ssd: Single shot multibox detector[C]//European conference on computer vision. Springer, Cham, 2016: 21-37.

[3] Ren S, He K, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[C]//Advances in neural information processing systems. 2015: 91-99.

<个人网页blog已经上线,一大波干货即将来袭:https://faiculty.com/>

/* 版权声明:公开学习资源,只供线上学习,不可转载,如需转载请联系本人 .*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐