APP下载

基于改进的Faster Rcnn遥感图像目标检测

2022-07-07赵加坤

计算机应用与软件 2022年5期
关键词:卷积样本框架

赵加坤 孙 俊 韩 睿 陈 思

(西安交通大学软件学院 西安 陕西 710049)

0 引 言

随着科技的不断发展,人们对于图像处理技术的需求越来越大,应用方面也更加广泛。而作为其中重要的组成部分,目标检测的发展也是突飞猛进。在深度学习浪潮到来之前,目标检测精度的进步十分缓慢,靠传统依靠手工特征的方法来提高精度相当困难。

目标检测的主要任务是从图像中定位感兴趣的目标,需要准确判断每个目标的具体类别,并给出每个目标的边界框。这些年来目标检测领域经历了令人印象深刻的进展。除了这些改进,在小目标检测与大目标检测领域还是有不小的差距。

在过去的几年中,已经提出了一些基于机器学习的方法来进行遥感图像的检测[1-3]。Zhu等[4]使用诸如对比盒算法或半监督分层分类之类的算法来获取候选区域。Bi等[5]使用自下而上的视觉注意力机制来选择整个检测场景中的突出候选区域。Corbane等[6]提出了一种基于统计方法、数学形态学和其他信号处理技术(例如小波分析和Radon变换)的完整的船舶检测处理链。

尽管以上这些基于机器学习的检测算法显示出令人鼓舞的性能,但它们在复杂场景中的实用性较差。随着深度卷积神经网络在目标检测中的应用,基于深度学习的检测算法也广泛应用于遥感检测中。Kang等[7]采用Faster R-CNN[8]生成区域建议框,然后识别小对象,从而重新评估检测网络中分类得分相对较低的边界框。Zhang等[9]提出了一种基于卷积神经网络的新的船舶检测模型,称为SCNN,结合了从船舶模型中提取特征的特殊设计的建议,并改进了显著性检测方法。Kang等[10]用多层融合构建了一个基于上下文区域的CNN,这是一个精心设计的深度分层网络,由具有高分辨率的RPN和具有上下文特征的对象检测网络组成。

近几年的目标检测算法层出不穷,基于Faster Rcnn的改进也多种多样,双阶段的目标检测算法基本围绕着Faster Rcnn。Dai等[11]针对于Faster Rcnn速度具有缺陷的问题提出一种R-FCN算法,这是一种无全连接,分类和回归边界层变为全卷积网络的算法,保证了分类的位置不变性和回归的位置可变性,可以大大加快运算速度。Cai等[12]针对于Faster Rcnn的IOU优化阈值取值问题提出了Cascade Rcnn算法,Cascade R-CNN使用不同的IOU阈值,训练了多个级联的检测器Rcnn,通过逐层增大的IOU阈值,提高正样本的质量,达到提高检测准确率的目的。

现在前沿的目标检测算法(如Faster R-CNN,Yolo[13-15]系列、SSD[16]、R-FCN等)基本都是在这些常规数据集上实验的,但是因为航空遥感图像有其特殊性(尺度多样性,视角特殊性,小目标众多),基于常规数据集训练的分类器在航空遥感图像上的检测效果并不好。

对于图像中小目标众多的问题,检测效果不好的原因主要集中在小目标具有几十个甚至几个像素,这就导致目标信息量不大,然而结合多层特征进行预测,通过不同特征的结合使得在最终进行预测的特征具有更强的语义信息,检测结果也更加准确。Lin等[17]提出了FPN算法,该算法有两条支路,一条是自上而下反馈网络,另一条是自下而上的前馈网络,然后通过横向连接将二者结合,从而实现多尺度的目标检测。

为了解决上述问题,我们引入了一种新的、基于端到端、基于区域推荐的目标检测框架,用于高分辨率卫星图像中的船舶检测,它可以处理不同的复杂场景,检测密集对象。本文使用以ResNet[18]为骨干网络的Faster Rcnn的算法检测遥感图像,利用特征金字塔的特征融合来提高小目标和狭长物体的准确率。

1 方 法

目标检测算法大致分为两类:单阶段和双阶段的检测算法。单目标的检测算法的特点是检测准确率偏低,检测速度快;双目标的检测算法和单阶段相反,检测速度慢,但是准确率却很高。Faster Rcnn是双阶段目标检测算法中的代表算法,为了解决遥感图像准确率不高的问题,我们选取Faster Rcnn 作为主干检测网络框架,然后利用特征融合的思想,提高位置信息和分类信息的识别准确率。

1.1 Faster Rcnn介绍

用Faster Rcnn 网络基于深度学习中卷积网络,特征,主要分为三个模块:特征提取网络,区域选择网络,Faster Rcnn。目标检测器提取出目标框后采取非极大值抑制算法选取最终的目标预测框。

1) 特征提取网络:特征提取网络主要采用深层的卷积神经网络提取图像中的特征信息,用于目标检测中的位置回归和分类。本文选取残差网络ResNet作为特征提取网络。

2) 区域选择网络(RPN):区域选择网络是针对于Fast Rcnn的改进,RPN可以理解为一种全卷积网络,该网络可以进行端到端的训练,最终目的是为了推荐候选区域。区域选择网络利用滑动锚框策略,在每一个特征点预测出K个候选框(三种尺度分别为1282、2562、5122,三种宽高比分别为1 ∶2、1 ∶1、2 ∶1)。

3) 区域池化网络:特征图在经过区域选择网络后会得到大小相同的候选框,为了使网络能够适应不同大小的候选框,保证全连接层的正常运行,选用分块池化的方式将候选框统一为固定尺寸。我们使用的是最大池化的方式输出固定尺寸的特征图。Faster Rcnn的检测网络结构如图1所示。

图1 Faster Rcnn检测框架图

1.2 改进的特征融合

在复杂背景的图像检测中,小目标一般只有几十甚至几个像素,网络从这些仅有的少量像素中能提取出的语义信息非常有限。在特征提取过程中,浅层特征具有较高分辨率,有更强的位置信息;深层特征具有较强的语义信息,但位置信息比较粗糙。

本文中采用了特征融合机制,一种由下往上的结构,深层的特征进行上采样,浅层的特征通过一个的卷积层,然后和上采样过后的结果直接相加。这种直接相加的方式会增强浅层的分类信息。具体自下而上的结构和自下而上的结构如图2[19]所示。

图2 特征融合结构图

(1) 自下而上的支路。为了检测网络能够得到很好的特征图,在特征融合的时候,我们定义ResNet的每一个残差块输出为{C2,C3,C4,C5},其对应的特征步长为{4,8,16,32}。

(2) 自顶向下的支路和横向连接。自顶向下的支路通过上采样较高金字塔等级的特征将之映射为更高分辨率的特征,这些特征随后经由横向连接和自下而上支路上的特征进行结合[20]。横向连接就是在特征图{ C2,C3,C4}中分别于{C3,C4,C5}的上采样进行特征图融合生成新的特征图{P2,P3,P4}。自上而下的分支是{C3,C4,C5}上采样生成的特征图。各个层之间的关系如下:

(1)

除此之外本文提出针对C5进行下采样,步长为64,则共有步长为{4,8,16,32,64},此层特征图定义为P6。具体关系如下:

P6=downsample(C5)

(2)

P5=Conv1×1(C5)

(3)

引入特征融合在多尺度训练的问题上提供了很好的实现效果,它是一种特征融合方法,可以结合其他最先进的检测框架使用。特征能够很好地处理小目标的原因在于:特征融合可以利用经过自上而下模型后的那些上下文信息(高层语义信息)。

特征融合的目的是把从图像中提取的特征,合并成一个比输入特征更具有判别能力的特征。对于小目标而言,特征融合增加了特征映射的分辨率(即在更大的特征图上面进行操作,这样可以获得更多关于小目标的有用信息)。

1.3 网络训练

Faster Rcnn是基于anchor框的预选择算法,Faster Rcnn 选取的是经验值anchor框,它是在最后一个卷积层的特征图上,每个像素点称为一个锚。

上述特征融合中,共有P2、P3、P4、P5、P6等五层,针对每一层我们根据步长大小设定了每一层的基准anchor大小为32、64、128、256、512,每一层定义基于基准anchor的缩放的尺度大小,本文设置为1.0倍,即322、642、1282、2562、5122。同时我们针对每一层也设计了3种宽高比:1 ∶2、1 ∶1、2 ∶1。

图3 anchor示意图

Faster Rcnn 的损失函数如下:

Losstotal=Losscls+Lossreg

(4)

损失分为两部分,分类损失Losscls和回归Lossreg,用于分类锚选框为正样本和负样本的网络训练。Lossreg使用的是Smooth L1损失,用于回归框网络训练。

分类损失和回归损失具体公式如下:

(5)

(6)

式中:i表示锚选框的索引;p表示正样本的物体的概率;p*代表对应的真实框的概率(当第i个锚选框与真实框间IoU>0.7,认为该锚选框是正样本;反之IoU<0.3时,认为该锚选框是负样本;至于那些0.3

(7)

在上文中提到的IOU是计算两个框之间的重叠程度的衡量指标,从而选择相应的正负样本,具体计算如下:

(8)

式中:Area(P∩T)是指预测框与真实框之间的重叠面积;Area(P∪T)是指预测框与真实框之间的并集区域面积。

2 实 验

2.1 数据集

NWPU VHR-10[20]是航天遥感目标检测数据集,共有800幅图像,其中包含目标的650幅,目标包括:飞机、舰船、油罐、棒球场、网球场、篮球场、田径场、港口、桥梁、车辆10个类别。

RSOD 数据集是遥感图像中物体检测的开放数据集,包含飞机、操场、立交桥、油桶四类目标,数目分别为:4 993架飞机,191 个操场,180 座立交桥,1 586个油桶。

本文实验前将实验数据集按照 Pascal VOC数据集格式进行整理,按比例8 ∶2将数据分为训练集和测试集。除此之外,我们对数据也会进行处理,数据尺寸处理和图片像素归一化处理。对图像样本的每个像素减去RGB三通道的数据平均值,使数据可以更好地拟合网络。

本文选取NWPU VHR-10+RSOD数据集的组合,共选取NWPU VHR-10的650幅图片,RSOD数据集550幅,选取其中1 000幅作为训练集,200幅作为测试集,具体分布如图4所示。我们将目标分为10类:飞机、舰船、油罐、棒球场、网球场、篮球场、田径场、港口、桥梁、车辆,选取其中飞机、油罐、田径场、港口,具体的数据集图片如图5所示。

图4 数据集类别分布图

图5 数据集部分展示图

2.2 实验环境与参数

实验主要在PC端进行。PC主要配置为i7处理器,GPU(GTX-1080TI),内存为32 GB。深度学习框架采用的是Tensorflow。

为增强对比性,在整个训练过程中初始值设置均为Faster Rcnn论文中的参数,最大迭代25 000次,初始化学习率为0.001,批处理大小设置为 1,decay为0.000 1,动量系数为 0.9,根据损失下降的趋势,可以适当调节学习率和批处理大小的值,直至训练数据集输出的损失函数值小于等于阈值或达到设置的最大迭代次数时停止训练,得到训练好的检测网络。使用的是随机梯度下降。

2.3 实验结果与分析

本文采取了ResNet的两种主干网络来测试我们的数据集,分别为ResNet-50和ResNet-101。

我们选取两种检测框架作为对比,分别使ResNet-50和ResNet-101作为主干网络检测,得到相应的查准率、查全率,结果如表1所示。

表1 不同骨干网络下检测框架结果

可以看出增加了特征融合的Faster Rcnn相对于原先的检测框架提高了查准率和查全率。在ResNet-101的主干网络下,增加了特征融合的Faster Rcnn相对于原先的检测框架提高了2.6百分点,在ResNet-101的主干网络下,增加了特征融合的Faster Rcnn相对于原先的检测框架提高了2.7百分点。

为了证明本文算法比其他改进的Faster Rcnn算法更加优秀,我们对比了比较具有代表性的Faster Rcnn衍生系列算法R-FCN和Cascade Rcnn,结果如表2所示。

表2 不同改进Faster Rcnn检测框架实验结果

可以看出,本文的算法比其他基于Faster Rcnn改进的算法效果更加好。本文算法的mAP相较于R-FCN提升了1.4百分点,相较于Cascade Rcnn算法提升了0.3百分点,提升幅度并不大,因为Cascade Rcnn的算法级联了检测器,故精度差距不大。

当然我们也对比了目前几个流行的算法框架:Faster Rcnn, SSD,Yolo v3, RetinaNet[22]。对比结果如表3所示。

表3 不同检测框架实验结果

可以看出,Faster Rcnn比SSD和Yolo v3的mAP显著要高一些,这是由于双阶段目标检测框架比单阶段目标检测框架查准率高。RetinaNet的mAP比Faster Rcnn要高的原因在于RetinaNet平衡了负样本和正样本的损失,而改进的Faster Rcnn明显高于其他几个框架。

图6为Yolo v3、Faster Rcnn和本文算法的P-R曲线,可以看出在复杂训练集相同的情况下,增加了特征融合的Faster Rcnn比另两种当前先进算法的代表要更加准确。检测结果如图7所示。

图6 算法P-R图

图7 实验结果展示图

综上所述,算法增加了特征融合后提取的特征具有更好的预测性,因为特征强化了特征提取后的位置信息和分类信息的结合,解决深度卷积网络会存在信息丢失的问题。

3 结 语

本文采用Faster Rcnn作为主要检测框架,针对于遥感图像小目标多、目标密集的特点,结合了特征融合的思想,算法基本满足了遥感目标检测的需求,准确率相对有所提升,但对于长宽比大的物体的检测效果还有待进一步的提高。

猜你喜欢

卷积样本框架
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
框架
基于深度卷积网络与空洞卷积融合的人群计数
浅谈框架网页的学习
基于Jmeter对Node框架性能的测试研究
卷积神经网络概述
直击高考中的用样本估计总体
随机微分方程的样本Lyapunov二次型估计
基于支持向量机的测厚仪CS值电压漂移故障判定及处理