一种基于改进R-CNN的细粒度船舶目标识别方法研究*

2021-06-24 08:18饶从军欧阳泉
机电工程技术 2021年5期
关键词:细粒度特征提取分类器

向 东,饶从军,欧阳泉,彭 杨

(1.武汉兴图新科电子股份有限公司,武汉 430073;2.武汉理工大学理学院,武汉 430070)

0 引言

随着机器视觉、图像识别、卫星遥感等技术的日益成熟,遥感卫星图像的拍摄质量已经达到可以进行机器视觉学习的条件[1],将深度学习技术应用于对卫星遥感图像中目标的识别已经成为研究的热点,识别结果的好坏对于海域目标预警具有重大的现实意义。

在目标识别算法研究上,Ross Girshick等分别于2013和2015年发布了R-CNN和Fast R-CNN网络,该网络的核心主要是对识别目标进行区域推荐[2-3]。在此基础上,S.Branson等提出了Pose Normalized CNN,该网络通过DPM算法获取局部位置的预测点,然后再进行物体的准确识别和标识[4]。Krause等把图像分割引入到目标图像的分类中,该算法不需要使用局部区域的标注信息,只依赖目标的标注框就可以完成对目标的分割和对齐操作,具有一定的创新性[5-6]。

将人工智能技术应用于遥感图像中的舰船目标识别,Bousetouane和Morris等[7]通过卷积神经网络来对遥感图像中的舰船目标进行特征提取,然后与模型库里面的舰船模型进行匹配,最后进行舰船分类识别。Bentes等[8]通过深度卷积神经网络实现了高分辨率雷达卫星中的目标识别,所采用的方法能够准确地识别出卫星影像中的货物、油轮、风车、平台和港口等5类目标,但是不能很好地识别小目标船只。

在国内研究方面,张东晓[9]在论文中论述了从遥感图像中对分割出的目标进行灰度特征、纹理特征、边缘特征、不变矩特征等进行提取,并进行基于统计分析的特性整合。李毅[10]采用机器学习分类器结构的向量机(SVM),通过聚类分析等机器学习的方式来进行数据处理,根据样本库中的数据来判断目标船舶的类别,但是在复杂背景下识别的效果并不理想。魏娜[11]设计了BP神经网络的三层结构用于对船舶类型进行识别,但是无法对小目标船舶类型进行识别。赵亮等[12]提出一种使用7层卷积神经网络结构,实现船舶特征的自动提取,同时还结合HOG算法和HSV算法分别得到边缘特征和颜色特征,在SVM系统上进行分类识别,但是本方法并没有论述细粒度船舶分类方式。

通过国内外文献的分析可以发现,如何在遥感图像复杂背景下对小目标船舶进行细粒度精确的识别是该方向上面临的一个难点。为了解决以上的问题,本文基于改进R-CNN模型引入负样本增强训练策略,建立端到端的特征提取模型和船舶的分类器,实现了小目标、细粒度目标识别方法,可以提高在遥感图像复杂背景下船舶小目标识别与分类的精度,同时模型还具有适应性和鲁棒性。

1 模型总体架构

针对卫星图像中的船舶的识别,本文建立的小目标、细粒度目标识别网络从架构上主要包括多维数据集训练、目标典型特征提取、生成目标参考区域、目标细粒度识别4个部分,如图1所示。

图1 多目标细粒度识别架构

本文通过引入多维样本集和负样本增强学习策略,通过数据集训练对标注后的样本集空间进行训练,形成卷积特征图。目标的典型特征提取负责将各类船舶的特征进行归类化处理,形成各类船舶的特征库,为细粒度目标识别奠定基础。生成目标参考区域是将待识别遥感图像中的目标进行初步性识别并形成预测的位置框信息。目标细粒度识别是将预测的位置框和目标类型进行最终的修正和归类处理,得到正确的识别结果。

2 多维数据训练与特征提取

卷积神经网络的结构会直接影响船舶特征提取的性能。如果要实现小目标、多种类船舶的精确分类与识别,则需要多维度、多尺度提取各类别船舶的特征。本文在模型训练过程中,每次都随机采样一个尺度,通过金字塔式结构的图片库来给网络进行不同尺度的训练,采用迭代的方式最终以实现近似的尺度不变。并且,由于船舶遥感原始图像的拍摄角度会在一定程度上产生图像的拉伸、放大、缩小等变换。这些情况都会产生目标特征提取的损失和差错。为了应变这类的问题,文中设计了图像变形纠正模型,将图像按照旋转,拉伸,缩放,斜切的形式进行变换。其表达式为:

式中:x、y为原始遥感图像;u、v为转换后的遥感图像;a、b、m、c、d、n为图像的变换参数。

在对待训练的样本数据进行预处理后,本文结合Imaget等提出的ZF网络,通过卷积层和池化层的组合构成特征提取网络,将船舶的特征提取和船舶的分类同时放入一个端到端的网络中,网络根据输出值和标签值之间的误差,不断地迭代去优化修正网络参数。通过以上方式来让网络学习到更高精度的船舶特征值,在有效提取船舶特征的同时还降低了特征提取的时间,为细粒度目标识别奠定基础。

3 目标参考区域

本文采用RPN来进行目标边界框的定位和目标的初步判断。本文在模型中对正、负样本的标签进行如下规定:(1)IoU最大值和与任意标定区域的IoU交叉比例超过0.7的候选区域设置为正样本;(2)与所有标定区域的IoU交叉比例小于0.3的候选区域设置为负样本;(3)其他的标签样本不参与训练。采用多任务损失函数进行模型训练,由边界框损失函数和分类损失函数两部分构成,如下:

式中:i为目标区域在一个子集中的下标;Mrek和Mcls为归一化参数,分别设置为130和1 400;λ为平衡因子,设置为9;xi为候选框i是目标置信度;hi为预测区域4个坐标向量;h*i为真实目标的4个坐标向量。

式中:L1(a)为平滑范数;hi为预测区的坐标;h*i为标定区的坐标。

基于以上算法对预测区域和标定区域进行判定,得到比较准确的目标区域定位。但是由于本文方法设置的正样本IoU大于0.7及负样本IoU小于0.3,其余有干扰情况均不被学习。在以上参数的设置下,当有海岸和港口等干扰时,会将部分岸口近似于船的背景识别为目标船舶,产生了误检。

因此本文还加入了瀑布式负样本增强学习策略,将大量具备干扰项的图像加入学习网络,增加负样本集,提高模型对正确目标的识别率。瀑布式负样本增强学习算法:设负样本图像集F(1,2,3,…,n),设置初始分类器层数l=1、负样本集Hi(i=1),负样本统计数值t′,每次需自举出的负样本总数t。

步骤1:开始扫描负样本集F的第一幅图像的第一个像素,将产生的预测窗口输入到分类器Cm中进行训练,同时将误检窗口加入到负样本集Hi+1中。统计所有误检样本个数t′,当负样本数量达到t时停止图像扫描。

步骤2:判断已使用负样本图像是否为负样本集F最后一张。如果是负样本集的最后一张则跳转步骤4。

步骤3:取l=l+1,i=i+1。将负样本集Hi和正样本一起来训练第Cm层分类器,判断该层是否为强分类器。如果是强分类器时,则跳转到步骤4;当不是强分类器时,则跳转到步骤1。

步骤4:结束学习过程,将各分类器级联后组成瀑布式分类器。

4 交替式模型训练策略

瀑布式分类层实现了船舶和非船舶的辨别。将提取到的目标特征通过多个全连接层的组合从高维数据转化到一个四维数据组中。将该四维数据组作为细粒度分类器的输入,输出值为目标类型的概率值,概率值越高表明目标为该类别的可能性越大,从而实现对船舶目标的细粒度识别。

为了解决传统识别算法中多阶段训练数据缓存问题,本文算法使用端到端的网络进行船舶细粒度识别,该方法不仅提升了识别精度,还提高了识别的速度。具体采用阶段性交替式训练方式,将RPN网络训练的结果输入到改进R-CNN中进行训练,又将改进R-CNN训练的结果作为下一阶段RPN网络训练的初始值,这样将两个网络构成了一个有机的整体,达到了对船舶细粒度分类的目的,如图2所示。

图2 交替式训练方式

在训练过程中主要有5个步骤:(1)将待学习的遥感卫星图像进行多维预处理;(2)引入负样本增强学习策略,加入多维度训练提取船舶特征向量,形成瀑布式分类器;(3)将特征图送入到预测区域网络生成船只目标预测区域;(4)利用一个多目标分类器对船只目标候选区域进行目标位置回归和分类;(5)输出图像中船舶所处位置以及船舶的具体类型。

5 实验分析

5.1 实验数据集

本次实验中的数据集由28 015张图片构成(货船标记数量为18 795,邮轮为9 542,游艇为11 230,渔船为4 560),还特别补充了5 000张含港口背景的图片作为负样本增强学习样本。

本文采用精确度Precision和召回率Recall两个参数来评价模型性能如下:

式中:Precision和Recall的取值范围均在[0,1];TP为正确样本数;FP为错误样本数;FN为漏检样本数。

以下实验将从小目标细粒度识别、复杂背景下目标识别、模型鲁棒性、适应性等维度进行比较分析。

5.2 网络测试对比

(1)小目标细粒度测试对比

该类实验将MRCNN模型与本文中模型就小目标识别的效果进行比较,图3所示为典型的识别效果对比。由图可知,MRCNN针对以上图片右上角小目标船只的识别率比较差,相比较本文的模型在识别小目标能完全检出,并进行了正确的目标分类。

图3 小目标细粒度效果对比

(2)复杂背景下目标识别

本类实验通过负样本增强学习的方法,所训练的模型相比没有加入负样本增强学习的模型降低了漏检和误检,准确的识别出了岸基干扰下的船舶目标,船舶目标的置信度也有所提升。如图4~5所示。

图4 负样本增加学习效果对比1

图5 负样本增加学习效果对比2

从图4和图5可以看出:图4(a)中错误地将港口的房屋识别为船只,并且没有识别到港口位置停靠的船只;图5(a)中没有识别到港口内停靠的维修的船只。相比较,采用负样本增强学习后的模型,在图4(b)和图5(b)中能正确地排除干扰,识别到正确位置的船只。通过试验对比,增加负样本增强学习机制可以提高目标在干扰情况下的识别率。

5.3 识别效果对比

为验证训练后模型的鲁棒性和适应性,试验中选择了1 000多张多个不同类型船体目标进行识别,其中还包括了复杂背景下的图像,比较典型的识别结果如图6所示。

图6 适应性识别效果

结果表明,模型可以准确地识别图片中的货船、邮轮及游艇等目标。实验结果表明本文提出的算法模型适用于复杂海情条件下的船舶细粒度识别,精确度达到了一定的效果,并且具有较强的鲁棒性。另外,为验证本文学习训练策略的有效性,将本文模型与MRCNN模型进行实验对比,两种算法的Precision、Recall值如表1所示。

表1 检测效率对比

通过以上实验的对比发现,本文模型相比MRCNN模型,从Precision和Recall两个评价指标上都得到了一定程度的提升,尤其针对小目标细粒度的识别具有显著优势。

6 结束语

本文通过分析细粒度目标识别的研究热点,基于R-CNN模型引入负样本增强学习策略,加大网络提取小目标、复杂背景目标船舶的特征,构建了一种海上船舶识别与分类的深度学习网络,提升了船舶目标识别率。构建的网络采用交替式训练方式,成功实现了端到端的网络训练及识别模式。最后还通过实验说明了模型的有效性、鲁棒性和适应性。但是本文所提出的方法还存在一些问题需要改进:(1)虽然采用交替式训练策略去构造一体化识别网络,但是却带来了网络复杂度的提高和网络体积的增大,如何将网络轻量化处理将会是一个研究重点;(2)本文实验中标注的船舶类型仅限于货船、邮轮、游艇、渔船4类,下一步将扩大船舶细粒度识别类型。

猜你喜欢
细粒度特征提取分类器
融合判别性与细粒度特征的抗遮挡红外目标跟踪算法
基于SVM多分类的超分辨图像细粒度分类方法
基于Daubechies(dbN)的飞行器音频特征提取
基于web粒度可配的编辑锁设计
Bagging RCSP脑电特征提取算法
支持细粒度权限控制且可搜索的PHR云服务系统
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
基于MED和循环域解调的多故障特征提取
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别