基于改进的Faster R-CNN目标检测算法 下载: 1322次
ing at the problem of the low accuracy of the Faster R-CNN algorithm in object detection, the data is enhanced first. Then, the extracted feature map is trimmed, and bilinear interpolation is used to replace the region of interest pooling operation. Soft-non-maximum suppression (Soft-NMS) algorithm is used for classification. Experimental results show that the accuracy of the algorithm is 76.40% and 81.20% in PASCAL VOC2007 and PASCAL VOC07+12 datasets, which is 6.50 percentage points and 8.00 percentage points higher than that of the Fast R-CNN algorithm, respectively. Without data enhancement, the accuracy on the COCO 2014 dataset is improved by 2.40 percentage points compared with that of the Faster R-CNN algorithm.
1 引言
目标检测在自动驾驶、视频、图像索引等方面有广泛应用[1],随着深度学习的快速发展,区域卷积神经网络(R-CNN)[2]系列算法将传统手工提取特征的方式转变为特征学习的方式,在目标检测领域中有重要地位。
R-CNN算法采用选择性搜索[3](SS)对图像提取1000~2000个建议框,每个候选框周围加16 pixel作为建议框像素平均值的边框,用所有候选框像素减去该建议框像素平均值后,将结果输入AlexNet[4]网络进行特征提取;再使用支持向量机(SVM)分类确定候选框的类别,用非极大值抑制(NMS)算法减少冗余的候选框数量,最后将剩余的候选框通过检测框回归模型,修正最终的位置。R-CNN的训练阶段局限于候选框的选择,存在的问题:1)由于R-CNN读取图像信息时需要固定图像尺寸,但对图像进行裁剪会导致图像信息的缺失;2) CNN需要对每个区域的候选框进行计算,其中重复的特征提取会带来巨大的计算浪费。相比于R-CNN算法,Fast R-CNN[5]算法对每张图像只进行一次特征提取,将提取的特征在计算中共享,以提升训练和测试速度。针对Fast R-CNN不能达到实时性检测和端到端训练测试的问题,Ren等[6]提出了Faster R-CNN算法,利用区域建议网络(RPN)代替SS算法,可有效提取出原始图像中的候选区域。
Faster R-CNN算法中的感兴趣区域(ROI)池化只能进行整数的计算,因此必须将产生的浮点数转换为整数进行池化,从而导致原图和特征图中的感兴趣区域位置不匹配,可通过crop_and_resize[7]操作解决该问题。此外,Faster R-CNN在分类时采用NMS[8]算法删除了所有交并比(IOU)大于阈值的候选框,导致置信度降低,可通过软非极大值抑制(Soft-NMS)[9]算法解决该问题。为进一步提高算法的精度和鲁棒性,本文在数据预处理阶段,采用多种数据增强方式,实验结果表明,该方法可有效提升目标的检测精度。
2 数据增强
目标检测技术在实际中,经常会出现数据集不够导致检测精度不高的问题。传统的数据增强技术只是简单对图像进行缩放、颜色变换、色彩抖动等,本方法结合了三种数据增强[10]技术,提升了模型的泛化能力和鲁棒性。图像尺寸可缩放为256 pixel×256 pixel,448 pixel×448 pixel,512 pixel×512 pixel等,可随机改变图像亮度、饱和度、对比度。实验主要针对RASCAL VOC数据进行增强,同时生成了对应的XML文件。
3 Faster R-CNN框架分析
3.1 整体框架
Faster R-CNN的算法结构如
3.2 区域建议网络
RPN是通过一个全卷积网络来实现的,具体结构如
3.3 感兴趣区域池化的改进
ROI的具体操作:将输入图像的感兴趣区域映射到特征图对应的位置,将其固定成7 pixel×7 pixel的大小,对该区域进行最大池化操作。ROI存在很多问题,如
crop_and_resize的操作方式:在ROI层前添加一层warping layer,对每一个感兴趣区域都进行crop和warp的操作,将感兴趣区域转换成尺寸为14 pixel×14 pixel的特征图,可表示为
式中,W,H分别为感兴趣区域宽和高,Fi为经ROI后的第i个特征图,(u,v)为ROI在原始图像中的坐标,(u',v')为进行crop和resize操作后的ROI坐标,函数G为双线性插值函数,目的是对宽和高进行相乘,Fi(u,v)为原始的ROI,Bi为第i个预测框。
3.4 非极大值抑制算法的改进
NMS算法广泛应用于边缘和目标检测中,可解决分类器分类时目标被大量候选框包围情况下,出现候选框大量重叠的问题,NMS算法的步骤:
1) 将全部的候选框按得分大小排序,选择出得分最高的候选框。
2) 将剩余的候选框依次与得分最高的候选框对比,如果两者重叠面积大于一定阈值时,就删除该框。
3) 在未处理的候选框(与得分最高框没有重叠的框)中继续选一个得分最高的,重复步骤2),只留下最优框中的目标。
NMS算法在目标检测中可理解为一个对边界框进行评分的过程,其线性加权函数可表示为
式中,
由上述步骤可知,检测同一类物体,且物体间重叠部分较多时,会将原本的预测框删除。如
1) 按照不同的种类对标签分组,预测出不同标签中的所有候选区域;
2) 将每一类的所有框记作E,筛选后的框集合记作D。a)先选择得分最高的框M,加入到D中;b)计算剩余框与M的重叠面积,若大于设定阈值Nt,则舍弃,反之保留;c)若步骤b)中得到的所有框为空,则返回到步骤2),反之继续执行步骤a);
3) 处理完成之后,将所有类别保留在有效框的集合内。
Soft-NMS中的线性加权函数可表示为
式中,
4 实验结果与分析
所有实验均在Ubuntu16.04系统下进行,其中深度学习框架为tensorflow,硬件环境:Intel Corei7-7800X 3.50 GHz CPU,GTX Titan X GPU,显存为12 GB。为验证本算法的有效性,采用PASCAL VOC2007[13]、PASCAL VOC2012和COCO2014 [14]数据集进行测试。
4.1 定量分析
Faster R-CNN区域建议包含三种尺度(1282、2562和5212)、三种宽高比(1∶1、1∶2和2∶1)。在宽高比不变的情况下,改变尺度的大小,从而选择出最优尺度。
表 1. PASCAL VOC2007测试结果
Table 1. Test results on the PASCAL VOC2007
|
表 2. 不同尺度下PASCAL VOC07++数据集的检测结果
Table 2. Detection results on PASCAL VOC07 ++ data set at different scales
|
将PASCAL VOC2012的训练集、验证集和PASCAL VOC2007的训练集、验证集、测试集作为实验的数据集(PASCAL VOC07+12),其中PASCAL VOC2012的训练集、验证集和PASCAL VOC2007的训练集、验证集作为实验的训练集(VOC07+12),PASCAL VOC2007作为实验的测试集(VOC2007),结果如
表 3. PASCAL VOC07+12测试集的检测结果
Table 3. Test results on PASCAL VOC07+12 test set
|
将PASCAL VOC2012中的训练集、验证集,PASCAL VOC2007中的训练集、验证集、测试集以及PASCAL VOC2007数据集增强一倍的图像作为本实验的数据集(PASCAL VOC07+++12),其中PASCAL VOC2012中的训练集、验证集,PASCAL VOC2007数据集中的训练集、验证集以及PASCAL VOC2007数据集增强一倍的图像作为实验的训练集(VOC07+++12),PASCAL VOC2007的测试集作为实验的测试集(VOC2007),结果如
表 4. 不同尺度下PASCAL VOC07+++12的检测结果
Table 4. Detection results on PASCAL VOC07+++12 at different scales
|
表 5. 不同算法在COCO2014的mAP
Table 5. mAP of different algorithms on COCO2014unit:%
|
表 6. 不同算法在COCO2014的mAR
Table 6. mAR of different algorithms on COCO2014unit:%
|
4.2 定性分析
为了更直观地展示本算法的实验效果,与其他三种相关算法在数据集PASCAL VOC07+12进行了对比实验,结果如
图 5. 正常条件下的检测结果。(a) Faster R-CNN;(b)添加Soft-NMS+crop_and_resize;(c)添加数据增强;(d)本算法
Fig. 5. Detection results with normal conditions. (a) Faster R-CNN; (b) add Soft-NMS+crop_and_resize; (c) add data enhancement; (d) our algorithm
图 6. 灰度图像下的检测结果。(a) Faster R-CNN;(b)添加Soft-NMS+crop_and_resize;(c)添加数据增强;(d)本算法
Fig. 6. Detection results with grayscale image. (a) Faster R-CNN; (b) add Soft-NMS+crop_and_resize; (c) add data enhancement; (d) our algorithm
图 7. 多目标重叠下的检测结果。(a) Faster R-CNN;(b)添加 Soft-NMS+crop_and_resize;(c)添加数据增强;(d)本算法
Fig. 7. Detection results with multiple targets overlapping. (a) Faster R-CNN; (b) add Soft-NMS+crop_and_resize; (c) add data enhancement; (d) our algorithm
5 结论
针对Faster R-CNN算法在目标检测中存在的问题,首先采用crop_and_resize操作解决了ROI因量化导致的位置不匹配问题;然后使用Soft-NMS算法提升了Faster R-CNN算法检测同一类物体时的精度;最后在数据预处理阶段结合了三种数据增强技术,解决了算法中原始数据不足的问题。实验结果表明,改进后的算法mAP值相较于Faster R-CNN有明显提升,且呈现的视觉效果更好。但该算法的检测速度并没有达到实时检测的要求,未来工作将针对该问题进行研究。
[1] Franke U, Gavrila D, Gorzig S, et al. Autonomous driving goes downtown[J]. IEEE Intelligent Systems, 1998, 13(6): 40-48.
[2] GirshickR, DonahueJ, DarrellT, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014. Columbus, OH, USA. New York: IEEE, 2014: 580- 587.
[3] Uijlings J R R, Gevers T, et al. Selective search for object recognition[J]. International Journal of Computer Vision, 2013, 104(2): 154-171.
[4] KrizhevskyA, SutskeverI, Hinton GE. Imagenet classification with deep convolutional neural networks[C]. Advances in Neural Information Processing Systems: Proceedings of the 25th International Conference on Neural Information Processing Systems-Volume 1, New York: Curran Associates Inc.5, 2012: 1097- 1105.
[5] GirshickR. Fast R-CNN[C]∥2015 IEEE International Conference on Computer Vision, December 7-13, 2015, Santiago, Chile. New York: IEEE, 2015: 1440- 1448.
[6] Ren S Q, He K M, Girshick R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.
[7] Chen XL, GuptaA. An implementation of faster RCNN with study for region sampling[EB/OL]. [2019-07-30].https:∥arxiv.org/abs/1702. 02138.
[8] NeubeckA, van GoolL. Efficient non-maximum suppression[C]∥18th International Conference on Pattern Recognition, August 20-24, 2006, Hong Kong, China. New York: IEEE, 2006, 3: 850- 855.
[9] BodlaN, SinghB, ChellappaR, et al. Improving object detection with one line of code[EB/OL]. [2019-08-01].https:∥arxiv.org/abs/1704. 04503.
[10] 乔婷, 苏寒松, 刘高华, 等. 基于改进的特征提取网络的目标检测算法[J]. 激光与光电子学进展, 2019, 56(23): 231008.
[11] 何志超, 赵龙章, 陈闯. 用于人脸表情识别的多分辨率特征融合卷积神经网络[J]. 激光与光电子学进展, 2018, 55(7): 071503.
[12] 周书仁, 谭凤, 曾道建. 多尺寸池化卷积神经网络的人体行为识别研究[J]. 小型微型计算机系统, 2017, 38(8): 1893-1898.
Zhou S R, Tan F, Zeng D J. Human action recognition based on multi-size pooling of convolutional neural network[J]. Journal of Chinese Computer Systems, 2017, 38(8): 1893-1898.
[13] Everingham M, van Gool L, Williams C K I, et al. The pascal visual object classes (VOC) challenge[J]. International Journal of Computer Vision, 2010, 88(2): 303-338.
[14] Lin TY, MaireM, BelongieS, et al. Microsoft COCO: common objects in context[M] ∥Fleet D, Pajdla T, Schiele B, et al. Computer vision-ECCV 2014. Lecture notes in computer science. Cham: Springer, 2014, 8693: 740- 755.
[15] SimonyanK, ZissermanA. Very deep convolutional networks for large-scale image recognition[EB/OL].[2019-08-14].https:∥arxiv.org/abs/1409. 1556.
[16] DengJ, DongW, SocherR, et al. ImageNet: a large-scale hierarchical image database[C]∥2009 IEEE Conference on Computer Vision and Pattern Recognition, June 20-25, 2009, Miami, FL. New York: IEEE, 2009: 248- 255.
[17] 陈立里, 张正道, 彭力. 基于改进SSD的实时检测方法[J]. 激光与光电子学进展, 2019, 56(1): 011002.
[18] BellS, Zitnick CL, BalaK, et al. Inside-outside net: detecting objects in context with skip pooling and recurrent neural networks[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition , June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016, 3: 850- 855.
[19] RedmonJ, FarhadiA. YOLO9000: better, faster, stronger.[EB/OL].[2019-02-10]. https:∥ arx iv.org/abs/1612. 08242.
Article Outline
周兵, 李润鑫, 尚振宏, 李晓武. 基于改进的Faster R-CNN目标检测算法[J]. 激光与光电子学进展, 2020, 57(10): 101009. Bing Zhou, Runxin Li, Zhenhong Shang, Xiaowu Li. Object Detection Algorithm Based on Improved Faster R-CNN[J]. Laser & Optoelectronics Progress, 2020, 57(10): 101009.