基于聚类式区域生成的全卷积目标检测网络 下载: 813次
1 引言
近年来,随着深度学习的兴起,卷积神经网络在目标检测领域得到了广泛的应用。卷积神经网络通过卷积操作和激活函数将图像中的细节信息映射到高维空间,使得一些任务能够在高维空间简单实现。卷积神经网络通过对图像进行卷积操作,提取图像中的重要特征及细节信息,再让网络学习该特征并进行训练。目前,目标检测算法已被应用于多个领域,用于检测各种复杂环境及特殊要求下的目标类别,与传统方法相比,不仅提高了检测准确率和检测速度,也能够达到实时性。叶国林等[1]将卷积神经网络用于夜间行人检测研究,有效地检测出夜间的行人;陆永帅等[2]将深度残差网络应用于霾监测,提高了霾识别精度;王正林等[3]提出了一种并行深度残差网络,将其用于检测堆场烟雾,在提升了烟雾检测准确率的同时,还降低了类烟物体产生的误报率。
当前目标检测算法有很多,但主要分为两类:一类是二段探测器算法[4-6],该算法先生成一系列作为样本的候选框,再通过卷积神经网络进行样本分类,如快速区域卷积神经网络(Fast R-CNN) [7]、更快速区域卷积神经网络(Faster R-CNN)[8]、基于区域的全卷积网络(R-FCN)[9]、基于掩模的快速区域卷积神经网络(Mask R-CNN)[10]等;另一类则是一段探测器算法[11-12],该算法不产生候选框,直接将目标边框定位的问题转化为回归问题进行处理,如单段多框目标检测器(SSD)[13]、统一的实时目标检测方法(YOLO)[14]、反卷积单段检测器(DSSD)[15]等。二段探测器算法相较于一段探测器算法,检测准确率和定位精度更高,但算法速度略低,这是由于二段探测器算法先使用区域生成网络(RPN)生成建议区域,再对建议区域进行分类和定位。然而,RPN中的先验框是人为固定选取的(3种尺度和3种长宽比),存在一定的人为主观性,且生成的建议区域中存在很多不必要的重叠,增加了检测时间。
本文在R-FCN的基础上进行改进,在R-FCN的RPN中使用
2 R-FCN结构
R-FCN结构[9]主要分为3部分:
1) 卷积网络。图像归一化后经过卷积网络,提取得到图像共享特征映射图。
2) RPN。通过RPN在共享特征映射图上提取感兴趣区域(RoI)。
3)分类网络。R-FCN通过卷积操作为每类生成位置敏感分数图,经过位置敏感RoI池化层进行投票打分及分类定位。
R-FCN结构图如
2.1 卷积网络
将网络读取的任意尺寸的图像经预处理操作后归一化为1000×600,再将图像输入网络,经过一组卷积层、激活层和池化层得到共享特征映射图,最后送入后续的RPN和分类网络。
2.2 RPN
RPN将输入的共享特征映射图经过一个3×3的滑动窗口生成长度为512维的全连接特征,RPN结构图如
在滑动窗口位置预测多个建议区域,定义每个位置最大可能的建议区域数量为
2.3 分类网络
R-FCN分类网络通过卷积操作为每类生成
式中:
类似于位置敏感分数图,在最后一个共享卷积层上增加一个并行分数图用于回归
3 改进的R-FCN
在R-FCN现有的基础上,将RPN与
3.1 问题分析
R-FCN沿用了Faster R-CNN的RPN网络,仍使用3种比例(64,128,256)和3种长宽比(1:1,1:2,2:1)的9个人为固定先验框,这会导致生成的建议区域过多、计算损耗较大和定位不精准的问题,具体原因如下:
1) 从
2) 先验框的尺寸(长和宽)都是人为预先设定的,在一定程度上带有人为主观性,同时这种固定的选取策略可能会使生成的候选区域不适用于数据集,导致R-FCN的检测结果存在定位偏差及不准确。R-FCN检测结果如
图 3. R-FCN检测结果。 (a)定位不精确;(b)检测误差严重
Fig. 3. Detection results of R-FCN. (a) Inaccurate locating; (b) serious detection error
由上述分析可知,RPN网络若采用人为固定的先验框,对检测网络的定位精度和速度均会产生不利影响。因此,考虑通过统计方法将训练集中的目标框进行聚类分析,以获取大小合适、数量适宜的先验框代替原R-FCN中的固定先验框,不仅可以生成适合该数据集的建议区域,增加目标定位的准确度,还能减少建议区域的数量,减少检测时间,使得模型更容易学习,做出更好的预测。
3.2 改进网络的框架
改进后的网络框架如
1) 卷积网络。图像归一化后经过卷积网络,提取得到图像共享特征映射图。为达到与文献[ 9]相同的实验环境和条件,以深度残差网络[16]为基础网络(主要是ResNet-50,ResNet-101网络)。
2) RPN聚类网络。将训练样本图像归一化后提取出真实框,使用
3) 分类网络。R-FCN通过卷积操作为每类生成位置敏感分数图,经过位置敏感RoI池化层进行投票打分,完成分类定位。
3.3 RPN聚类网络
为了得到先验框的最适大小及最佳数量,通过将
RPN聚类网络基本结构如
在聚类过程中,使用欧氏距离会导致大框比小框产生更大的误差,而框与框的交集除以它们的并集(IOU)与框尺寸无关。为了减小误差和框尺寸之间的关系,更好地计算出合适的先验框,使得预测框与真实框的IOU值更高,在聚类分析时选用真实框与聚类中心框之间的IOU值作为距离指标:
式中:box代表训练样本的真实框;centroid代表聚类中心的框;
另一方面,RPN聚类网络在原始特征提取网络的基础上,额外添加一个3×3的卷积层(
网络训练损失函数为一个多任务损失函数,可分为两部分,对应RPN两条支路,即目标与否的分类误差和候选框的回归误差,定义为
式中:
3.4 困难样本挖掘
为了增强网络模型的泛化能力,采用困难样本挖掘(OHEM)方法[17]计算区域生成网络生成的各个RoI的损失值,通过对每个RoI损失值进行排序,选取损失值最高的前128个样本组成迭代训练中一个批次的训练网络。在网络训练过程中利用困难样本更新网络参数,使网络训练更充分,从而达到更好的检测效果。
4 实验结果及分析
为了验证所提方法的可行性,并将所提算法与现有算法Faster R-CNN[8]、R-FCN[9]进行分析对比,采用和文献[ 8-9]相同的数据集进行实验,训练集为Pascal VOC 07+12trainval,测试集为Pascal VOC 07 test,目标检测的精度以平均精确度(mAP)为标准。
4.1 实验设置
实验机器的图形处理器(GPU)为TITAN XP,深度学习的框架为Caffe,Ubuntu系统版本为14.04,Cudnn版本为8.0。所研究的R-FCN网络以深度残差网络ResNet-50、ResNet-101为网络基础。网络参数更新方法均为随机梯度下降法,基础学习率为0.001,步长为50000,冲量为0.9,权重衰减项为0.0005,训练的最大迭代次数为50万,分两种情况训练检测,一种是未采用困难样本挖掘方法,另一种是采用困难样本挖掘方法。
4.2 聚类参数分析
从
图 6. 聚类检测结果。(a)不同K值下的平均IOU;(b)不同K值下的检测精度;(c)不同K值下聚类耗费时间
Fig. 6. Clustering detection results. (a) Average IOU with different K values; (b) detection accuracy with different K values; (c) clustering consuming with different K values
4.3 结果对比分析
4.3.1 检测精度分析
数据集的数量总计约为27000张,测试样本的数量约为4950张。
从
表 1. ResNet-50下,不同方法的检测结果比较
Table 1. Detection results with different methods based on ResNet-50
|
表 2. ResNet-101下,不同方法的检测结果比较
Table 2. Detection results with different methods based on RseNet-101
|
从
表 3. ResNet-101下不同方法的各类检测结果
Table 3. All kinds of detection results with different methods based on RseNet-101
|
从
由
算法改进前后检测效果的对比如
图 7. 算法改进前后检测效果对比图。(a) R-FCN检测结果;(b)改进算法检测结果
Fig. 7. Comparison of detection results before and after algorithm improvement. (a) Detection results of R-FCN; (b) detection results of improved algorithm
4.3.2 检测速度分析
先验框的数量由原来的9个减少为现在的5个,通过先验框在滑动窗口处生成的建议区域数量也减少为12000,剔除太小和超出边界的建议区域,则建议区域数量变得更少,重叠部分也比原来少,后续操作根据建议区域进行非极大值抑制,进一步减少建议区域的重叠数量(进行非极大值抑制的IOU阈值设定为0.7)。从
实验结果表明,在不改变R-FCN分类网络的前提下,相较于人为选取先验框的大小和数量,使用
4.3.3
为验证
从
表 4. K值普适性实验结果
Table 4. Experimental results of generalization of K value
|
5 结论
随着深度学习在机器学习领域不断热门化,目标检测算法被应用到越来越多的识别领域。卷积神经网络作为一种高效的识别方法在目标检测领域得到广泛应用。采用基于区域的全卷积网络进行改进,通过对RPN网络中先验框生成方式及数量进行改进,得到合适的先验框大小及数量,将其应用到后续的R-FCN分类网络中,并在Pascal VOC 07+12数据集进行训练和测试。相较于R-FCN、Faster R-CNN的检测结果,所提方法不仅显著提升了检测精度,也缩短了网络检测时间,提升了检测速度。实验结果验证了加入聚类方法的有效性和可行性。
[1] 叶国林, 孙韶媛, 高凯珺, 等. 基于加速区域卷积神经网络的夜间行人检测研究[J]. 激光与光电子学进展, 2017, 54(8): 081003.
[2] 陆永帅, 李元祥, 刘波, 等. 基于深度残差网络的高光谱遥感数据霾监测[J]. 光学学报, 2017, 37(11): 1128001.
[3] 王正来, 黄敏, 朱启兵, 等. 基于并行深度残差网络的堆场烟雾检测方法[J]. 激光与光电子学进展, 2018, 55(5): 051008.
[6] Lin TY, DollárP, GirshickR, et al. Feature pyramid networks for object detection[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 17355379.
[7] GirshickR. Fast R-CNN[C]∥2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015, Santiago, Chile. New York: IEEE, 2015: 1440- 1448.
[9] Dai JF, LiY, He KM, et al. R-FCN: object detection via region-based fully convolutional networks[C]∥ 30th Conference on Neural Information Processing Systems (NIPS 2016), December 5-10, 2016, Barcelona, Spain. USA: Curran Associates Inc., 2016: 379- 387.
[10] He KM, GkioxariG, DollárP, et al. Mask R-CNN[C]∥2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, Italy. New York: IEEE, 2017: 2980- 2988.
[11] RedmonJ, FarhadiA. YOLO9000: better, faster, stronger[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 6517- 6525.
[12] RedmonJ, Farhadi A.Yolov3:an incrementalimprovement[J/OL].( 2018-04-08)[2018-11-16]. https:∥arxiv.org/abs/1804. 02767.
[13] LiuW, AnguelovD, ErhanD, et al. SSD: single shot MultiBox detector[M] ∥Leibe B, Matas J, Sebe N, et al. Computer vision-ECCV 2016. Lecture notes in computer science, Cham: Springer, 2016, 9905: 21- 37.
[14] RedmonJ, DivvalaS, GirshickR, et al. You only look once: unified, real-time object detection[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 779- 788.
[15] Fu CY, LiuW, RangaA, et al. DSSD: deconvolutional single shot detector[J/OL]. ( 2017-01-23)[2018-11-16]. https:∥arxiv.org/abs/1701. 06659.
[16] He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 770- 778.
[17] ShrivastavaA, GuptaA, GirshickR. Training region-based object detectors with online hard example mining[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 761- 769.
[18] ShrivastavaM, MatlaniP. A smoke detection algorithm based on K-means segmentation[C]∥2016 International Conference on Audio, Language and Image Processing (ICALIP), July 11-12, 2016, Shanghai, China. New York: IEEE, 2016: 301- 305.
Article Outline
潘志浩, 陈莹. 基于聚类式区域生成的全卷积目标检测网络[J]. 激光与光电子学进展, 2019, 56(15): 151001. Zhihao Pan, Ying Chen. Full-Convolution Object Detection Network Based on Clustering Region Generation[J]. Laser & Optoelectronics Progress, 2019, 56(15): 151001.