基于特征金字塔和距离约束FCN的遥感船舶检测方法与流程

文档序号:17589421发布日期:2019-05-03 21:38阅读:247来源:国知局
基于特征金字塔和距离约束FCN的遥感船舶检测方法与流程

本发明属于图像处理技术领域,涉及一种遥感船舶检测方法,可用于从光学传感器拍摄的遥感图像中提取船舶目标。



背景技术:

遥感图像中的船舶检测,旨在取代繁琐的人工作业,利用深度学习方法,得到相较于传统平行轮廓包围框更为精确的船舶检测结果图。目前的船舶提取方法大致可以分为三类。第一类是基于知识的船舶提取方法,例如:阈值法、模版匹配法;第二类是基于传统机器学习的方法,例如:聚类、支撑矢量机、贝叶斯分类等;这两大类方法船舶提取效果不够理想,总体精度较低。目前更多研究人员致力于基于深度学习学习的船舶检测方法,例如:fasterr-cnn、yolo等,这些方法利用一些有标记的训练样本,能够在平行轮廓包围框上取得很好的结果,但是对于密集场景,如对船舶的遥感图像来说,平行轮廓包围框的提取会造成较多区域覆盖、重叠,需要更精确的轮廓包围框进行遥感图像中的船舶目标。

特征金字塔结构,是利用卷积神经网络各卷积层特征信息的结构,因其包含有自上而下阶段和自下而上阶段两个部分,相较于一般卷积神经网络只对同一个尺寸的图片进行训练,特征金字塔结构对卷积神经网络各层级获得的特征图进行连接,在基本不增加原有模型计算量情况下,提升了小型目标的检测性能。

fcn(fullyconvolutionalnetworks)即全卷积神经网络,是一种用于语义分割的深度神经网络,相较于一般的卷积神经网络网络,全卷积神经网络用卷积层取代了全连接层,用特征金字塔结构,使得特征图恢复原始输入图片的分辨率大小,来满足逐像素标注的需求。这种网络的优势在于,输入图像经过一个训练好的全卷积神经网络,可以获取一个端对端的语义分割结果,且分割结果具有很高的准确率。

全卷积神经网络用于遥感图像的船舶目标提取,是一种基于深度学习的目标检测方法,相较于其他深度学习的目标检测方法,全卷积神经网络有其特有的良好特性。全卷积神经网络能够提取遥感图像中具有判别性的特征,并利用这些特征得到准确的目标检测结果。目前,已有学者将全卷积神经网络模型以及其针对损失函数的改进模型,用于遥感目标检测。

例如,zikunliu等人在其发表的论文“ahighresolutionopticalsatelliteimagedatasetforshiprecognitionandsomenewbaselines”(patternrecognitionapplicationandmethods,2017年)中提出了一种基于卷积神经网络的目标检测方法。该方法的步骤是:首先,建立一个用于目标提取的卷积神经网络;其次,对该网络设置损失函数;最后,将遥感图像划分为训练集和测试集,用训练集来训练卷积神经网络,并将训练好的网络,用于船舶检测。虽然这个方法利用了卷积神经网络的优良特性,能够提取判别性特征,并将这些特征船舶提取结果,但是,在用该模型进行船舶提取的时候,存在一定的不足之处:首先,该方法用于船舶提取时,没有考虑到遥感图像中船舶尺度的不平衡分布;其次,利用该卷积神经网络进行船舶提取的时候,不能考虑到密集场景下平行轮廓框的互相覆盖、重叠;以上两点在很大程度上影响了船舶检测的效果,船舶轮廓包围框提取效果差,船舶提取结果查全率低。

申请公布号为cn201610382461.9,名称为“一种多分辨层次化筛选的遥感图像港口船舶检测方法”的专利申请,提出了一种基于harris角点描述子的船舶目标检测方法。该方法的实现方案是:首先,将大尺寸图像抽样后的图像分别执行突异与多角度旋转突异检测,判断两种方法得到的疑似船舶面积,并将判断结果进行区域拓展,得到港口区域的疑似显著区;之后,取得原分辨率图像中的疑似显著区域,再对原分辨率下的疑似显著区分别进行突异和多角度旋转突异检测,使用harris角点描述子方法检测两种检测方法得到的疑似船舶的船头特征,将检测得到的船舶坐标返回到原高分辨率图像中进行标记,最终得到原高分辨率图像中的船舶标记。该方法虽说解决了针对遥感图像中船舶类别的检测识别问题,提高了船舶提取的精确率,但是由于其方法很大程度依赖于特征描述子的选取,而特征描述子属于粗糙分类方法,不能普适于多种类型的图片场景,准确率和鲁棒性较差,且对于密集船舶目标,会导致多个目标间的确定区域发生连通,影响检测效果。

申请公布号为cn201810128120.8,名称为“一种基于轻量级深度神经网络的船舶目标检测方法”的专利申请,提出了一种基于深度神经网络的船舶目标检测方法。该方法的实现方案:首先计算训练得到船舶目标检测的轻量级深度神经网络模型;其次,制作两个数据集分别用于分类网络和训练,第二数据集用于检测网络训练,对所有获取的船舶目标图像进行标注,获得相应船舶目标在图中的坐标位置信息以及分类信息;之后,根据第一数据集,利用深度卷积神经网络模型来进行船舶目标基础分类模型训练和剪枝,得到轻量化分类网络模型;最后,将上步中得到的船舶目标分类模型,移植到fasterr-cnn(一类主流的目标检测模型)的特征提取模块中,再次进行训练,得到用于船舶目标检测的深度神经网络模型。该方法使用目前主流目标检测模型及参数,通过使用船舶数据集对分类模块参数进行微调,获得船舶目标检测的神经网络模型。该方法由于其基于的主流目标检测模型的框架只能生成水平方向的轮廓包围框,且对于密集、重叠船舶目标,生成的水平轮廓包围框在进行非极大化抑制时会互相干扰,查全率和准确率较差。



技术实现要素:

本发明的目的在于针对上述现有技术的不足,提出一种基于特征金字塔结构的全卷积网络的遥感船舶检测方法,以通过获取带有角度信息的轮廓包围框,提高遥感船舶检测结果的查全率和定位的准确率,增强鲁棒性。

为实现上述目的,本发明采取的技术方案包括如下:

(1)从现有遥感数据库中获取图像及类标文件,并对其进行划分构建训练样本集和测试样本集;

(2)将用于特征提取的残差网络1至5级残差块的输出层,按照特征金字塔结构的连接方式,与包含有上采样层、特征拼接层、卷积层的四个全卷积模块分别连接,构成全卷积网络;

(3)设定全卷积神经网络的损失函数lloss:

(3a)定义船舶类别判断损失函数ls:

其中,y代表预测结果的集合,y代表真实结果的集合,ym、ym代表集合中单个像素预测结果和其对应的真实结果,n代表y中元素的个数,dmin为像素点距离上、下、左、右边框距离中的最小值,β为正负样本的平衡系数:

(3b)定义几何形状损失函数lg:

其中,r=(d3+d4)×(d1+d2)为预测面积,d1、d2、d3、d4分别为像素点距离上、下、左、右四边的预测距离;r=(d3+d4)×(d1+d2)为真实面积,d1、d2、d3、d4为像素点距离上、下、左、右四边的真实距离;w=min(d3,d3)+min(d4,d4)为r和r重叠部分的宽;h=min(d1,d1)+min(d2,d2)为r和r重叠部分的高;|r∩r|=w×h,|r∪r|=r+r-|r∩r|,λθ为实验选取的权重系数,θ为预测角度,θ为实际角度;

(3c)根据(2a)和(2b)得到全卷积神经网络的整体损失函数lloss:

lloss=ls+λglg

其中,λg代表多次实验后测得的权重系数;

(4)通过梯度下降法对损失函数lloss进行优化,得到训练好的全卷积神经网络参数;

(5)将测试样本集中的测试样本图片依次输入到训练好的全卷积神经网络中,得到对应的多通道特征矩阵:if=[s,aabb,∠],该特征矩阵分别包括单通道像素类别判断信息s,四通道像素距离边框四边的距离信息aabb以及单通道角度信息∠;

(6)设置像素类别判断信息的过滤阈值,对特征矩阵进行挑选,当特征点像素类别判断信息超过该阈值时,保留该点的特征矩阵,该特征矩阵含有距离信息和角度信息;当像素类别判断信息低于该阈值时,则舍弃;

(7)将通过(5)保留的像素类别判断信息s及每像素点的距离信息和角度信息,通过数值计算的方法,获得对应像素点的轮廓包围框,表示为:

w=[x1,y1,x2,y2,∠]

其中x1、y1为轮廓包围框左上点坐标,x2、y2为轮廓包围框右下点坐标,∠为角度信息。

(8)采用改进的添加合并权重的非极大值抑制方法,对(5)中保留的特征矩阵中像素获得的轮廓包围框进行两两合并,得到船舶检测目标。

本发明与现有技术相比,具有以下优点:

第一,本发明在做船舶提取的时候,运用全卷积神经网络对输入的遥感图像进行船舶检测,克服了传统目标检测方法对于遥感图像中密集、小目标检出效果差的问题,与现有技术相比,提高了船舶检测的查全率。

第二,本发明为了增强轮廓包围框的精确度,使用了带点距离边框距离的交叉熵损失函数进行学习,使得轮廓框中心的损失相对降低,轮廓框边缘的损失相对提高,提高了包围框边缘的精度。

第三,本发明针对现有船舶检测方法得到的水平轮廓包围框存在互相重叠,定位不准确的问题,提供了有角度信息的旋转轮廓包围框的解决方案,相比于现有方法,对简单或复杂场景的遥感图像,均具有良好的性能,船舶检测结果不受复杂训练样本的制约,提高了船舶检测的鲁棒性。

第四,本发明使用带有合并权重的非极大值抑制方案,相比现有方案直接取类别判断信息最高的轮廓包围框进行合并的方式,可以利用轮廓包围框的坐标信息,减少了位置误差。

附图说明

图1为本发明的实现流程图;

图2为本发明中使用的特征金字塔结构的全卷积网络示意图;

图3为用本发明对测试数据集裁剪后的一张测试样本图片;

图4为用本发明和现有技术在复杂场景下对图3进行船舶检测的仿真对比图。

具体实施方式

以下结合附图和具体实施例,对本发明作进一步详细说明。

参照图1、本实例的实现步骤如下:

步骤1,对输入的遥感图像进行划分,构建训练样本集和测试样本集。

获取数量为m、大小为n×n的光学遥感图像以及与光学遥感图像对应的类标文件,将这些光学遥感图像和类标文件作为样本集,其中n=1024,m≥200;

现有遥感图像数据库中,遥感图像图幅大多是n×n的正方形图像,全卷积神经网络在进行特征提取的时候,会多次对输入图像进行下采样,因此输入图像的大小有下限要求,通常的遥感图像大小在500×500至2000×2000之间,因此需要对现有数据集进行有重叠的裁剪满足需求。

在本实施例中,选取434张大小为8000×8000左右的遥感图像作为样本集,将图像样本集中326张作为训练原图,其余108张作为测试原图;裁剪后样本集中共有37028张样本图片,其中28068张训练样本,8960张测试样本。

步骤2,按照特征金字塔结构进行全卷积神经网络的构建.

如图2所示,利用现有残差网络resnet-50作为特征金字塔自底向上的特征提取部分,将其1-5级残差块的输出层,与自上向下的包含有上采样层、特征拼接层和卷积层的4个全卷积模块进行连接,其中第5级残差块的输出层直接与第一个全卷积模块的上采样层连接,其余残差块的输出层与对应全卷积模块的特征拼接层连接,得到特征金字塔结构的全卷积网络。

步骤3,设定全卷积神经网络的损失函数。

3.1)设船舶类别损失函数ls:

本实例船舶类别损失函数为带像素点到边框最小距离的交叉熵损失函数ls:

其中,y代表预测结果的集合,y代表真实结果的集合,ym、ym代表集合中单个像素预测结果和其对应的真实结果,n代表y中元素的个数,dmin为像素点距离上、下、左、右边框距离中的最小值,β为正负样本的平衡系数:

3.2)设几何形状损失函数lg:

本实例设几何形状损失函数由包含交并比损失函数iou(r,r)和角度损失1-cosθ(-θ)两部分组成的lg:

其中,r=(d3+d4)×(d1+d2)为预测面积,d1、d2、d3、d4分别为像素点距离上、下、左、右四边的预测距离;r=(d3+d4)×(d1+d2)为真实面积,d1、d2、d3、d4为像素点距离上、下、左、右四边的真实距离;w=min(d3,d3)+min(d4,d4)为r和r重叠部分的宽;h=min(d1,d1)+min(d2,d2)为r和r重叠部分的高;|r∩r|=w×h,|r∪r|=r+r-|r∩r|,λθ为实验选取的权重系数,θ为预测角度,θ为实际角度;

3.3)将包括船舶类别判断损失ls、实验测得的权重系数λg和几何形状损失lg的函数lloss设定为整体损失函数:

lloss=ls+λglg。

步骤4对全卷积神经网络进行训练。

采用梯度下降法,通过训练样本和全卷积神经网络的损失函数,对图2所示全卷积神经网络进行训练,得到训练好的全卷积神经网络。

本实例用于船舶提取的全卷积神经网络,是在现有的残差网络的基础上,通过输出其中四个残差块的池化层特征,残差网络后依次连接四个上采样部分,包含上采样层、特征拼接层和卷积层,之后将以上输出的结果,通过一个1×1卷积层,得到为原图大小1/4大小的输出结果;在网络的训练过程中,预先加载resnet-50的网络参数,在网络参数的基础上,进行微调,将学习率设置为10-14,批量大小设置为32,采用adam优化器,训练10000代后网络收敛,得到训练好的全卷积神经网络。

步骤5获取测试样本的特征矩阵并进行筛选。

将测试样本输入到步骤3训练好的全卷积网络中,通过网络前向运算,获得对应6通道的特征矩阵if=[s,aabb,∠],其中s为单通道像素类别判断信息,aabb为四通道像素到边框四边的距离信息,∠为单通道角度信息;

之后,设置过滤阈值k=0.9,将单通道像素类别判断信息s与k进行比较:

若s≥k,则保留该像素的特征矩阵;

若s<k,则舍弃该像素的特征矩阵。

步骤6使用科学计算库进行轮廓包围框坐标的计算。

因为步骤4中所得的是像素点到上、下、左、右轮廓包围框的距离和轮廓包围框的旋转角度信息,需要得到轮廓包围框的左上点及右下点的坐标信息。因此使用现有的numpy科学计算库,输入像素坐标、像素距离边框四边的距离信息以及轮廓包围框的角度信息,即可使用numpy库中已有的坐标变换函数,获得像素对应的左上点x1,y1与右下点坐标x2,y2。

步骤7使用带有合并权重的非极大值抑制算法进行轮廓包围框的合并。

与其他深度学习目标检测算法相似,经阈值化后的网络输出结果是大量轮廓包围框,需要经过非极大值抑制来得到最终的结果。由于本发明中逐像素获得的是大量轮廓包围框,使用标准非极大值抑制,其计算复杂度大,且没有利用到像素特征矩阵里的坐标信息。故在标准非极大值抑制的基础上使用包围轮廓框的面积r作为权重合并,其具体实现如下:

对所有类别判断信息s按降序排序,按序列从前到后对轮廓包围框进行两两遍历合并:每次遍历当前轮廓包围框与其他剩余轮廓包围框,两个待合并的轮廓包围框wa=[x1a,y1a,x2a,y2a,∠a]和wb=[x1b,y1b,x2b,y2b,∠b],对通过轮廓包围框坐标信息所得的包围轮廓框面积ra、rb及两包围轮廓框相交面积ri进行比较,获得合并指标h:

使用合并指标h和设定阈值γ进行比较,当合并指标h大于γ时,将wb所代表的轮廓包围框滤除。

步骤8,利用步骤4训练好的全卷积神经网络对测试样本进行船舶提取,获得带轮廓包围框的结果图和该图上所有包围框对应的坐标文件。

在本发明实施例中,将待进行船舶提取的测试样本,输入到训练好的全卷积神经网络中,通过全卷积神经网络进行一次前向运算;

利用步骤6获得所有输出框的左上点和右下点的坐标,使用这些坐标在测试图片上绘制封闭的、带有旋转角度的矩形轮廓包围框,得到1024×1024大小的船舶结果图,船舶结果图中的复数轮廓包围框之内为船舶目标,轮廓包围框之外为背景;

将船舶结果图中所有轮廓包围框的坐标保存,作为该测试图片的坐标文件。

以下结合仿真试验,对本发明的技术效果作进一步说明:

1.仿真条件

实验数据采用武汉大学公布的dota数据集的部分图片。该数据集包含训练集和验证集总共434幅大小为8000×8000、对包括谷歌地球、高分系列卫星的多种传感器平台船舶遥感图像,对数据集图片经过有重叠的裁剪后,获得37028张大小为1024×1024,其中每张样本图片中包含不同数量的船舶目标,如图3所示;

仿真平台为:cpu为主频3.30ghz的intelxeone3-1230v3,内存容量为64.0gb,gpu为gtx1080ti,ubuntu16.04操作系统,tensorflow深度学习平台,matlab2016a开发平台。

2.仿真内容

利用现有fasterr-cnn目标检测神经网络方法和本发明方法对图3进行船舶检测,结果如图4,其中图4(a)为现有技术仿真结果图,图4(b)为本发明仿真结果图。

从图4(a)可以看出,大量船舶样本未能检出,被检出的船舶轮廓包围框也有部分重叠。从图4(b)可以看出,本方法得到的轮廓包围框重叠、覆盖区域明显减少,船舶检出性能得到明显改善,即在轮廓包围框所示区域能检出更多的船舶样本。

仿真结果表明,本发明相较于现有技术,整体查全率有较大提升,网络模型具有较高的鲁棒性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1