本发明属于船舶信息检测技术领域,尤其涉及一种基于深度神经网络的sar船舶检测系统及方法。
背景技术:
目前,业内常用的现有技术是这样的:
合成孔径雷达(sar,syntheticapertureradar)是一种全天时全天候的传感器,如gf-3、sentinel-1、terrasar-x等,可以产生高分辨率sar图像,sar图像具有穿透性强和宽覆盖面积等优点,是当前对地观测中不可或缺的数字资源,被广泛应用于船舶交通监测、军事和民用领域。sar图像中的船舶作为重要的军事和民用目标,是需要重点关注的对象,目前,针对sar图像船舶目标检测已有大量的研究。传统的sar图像船舶目标检测方法包括四个阶段:海陆分割、预处理、预筛和识别。海陆分割的目的是消除土地带来的不利影响,预处理旨在提高后续阶段的船舶检测精度,预筛试图寻找候选区域作为船舶建议框,恒虚警率(cfar)是最广泛的预筛方法,识别旨在消除虚假警报,获得真实目标区域。传统的方法依赖手工提取的特征,在复杂背景条件下识别能力和适应性有限。
深度神经网络方法能够对数据进行表征学习,所提取的特征比手工提取的特征具有更好的表达性能,已经被广泛应用于sar船舶目标检测。其中基于区域提案的faster-rcnn检测算法是最有代表性的。faster-rcnn主要由共享卷积层、区域提案网络和检测网络组成,共享卷积层主要用于提取特征,区域提案网络用于产生候选区域(候选窗口),它采用锚框机制,通过直接在最顶层的特征图上产生候选窗口,大大减小了计算量,区域提案网络产生的候选框经过roi池化层(roi池化层用于不同尺寸的特征图变成固定长度的向量)输入到检测网络。检测网络用于对候选框的分类和定位。但是由于sar图像中船舶目标尺寸普遍偏小,faster-rcnn算法很难检测到小尺寸船舶目标。
鉴于此现有技术1采用深度为5层的cnn作为卷积层,并通过迁移学习和负样本均衡等策略来改进faster-rcnn算法,以更好地适应sar小尺寸船舶目标检测,在公共的ssdd船舶数据集(该数据集包括大片海域和近海岸下的不同尺寸的船舶目标)上进行了对比实验。实验结果表明,他们提出的方法平均精度为78.8%,比faster-rcnn算法的平均精度70.1%高出了8.7%。虽然该方法使船舶检测精度得到了一定的提高,但检测准确度还并不是很高。这个工作只用5层cnn,层数较低、而sar图像背景复杂和船舶尺寸差别大,可能是导致其准确度有限的原因。
虽然卷积神经网络能够提取特征,但卷积神经网络在特征语义信息和空间分辨率之间存在联系,不同层的特征图代表的特征语义信息和空间分辨率是不相同的。具体来说,浅层特征图对应的是sar图像中的一些亮度、边缘、位置和纹理信息,分辨率较为高,中层特征图是一些长和宽等形状信息,分辨率适中,高层特征图是一些能够区分目标类别的高级抽象语义信息。因此,浅层特征图适合小目标检测,高层特征图适合大目标检测。同时,sar图像的背景复杂(远海岸和近海岸)和船舶的尺寸差别大,一直是sar图像船舶检测的一个难点问题。
为了提高不同尺寸船舶目标检测的准确度,现有技术2提出了一种融合网络的sar舰船目标检测方法,借鉴singleshotdetector(ssd)算法的融合特征图的思路,采用有16层的vgg16网络作为卷积层,将最后三层的特征图融合起来提高了特征语义信息。在收集的gf-3数据集(包含许多小型和密集聚集的船只)上做了对比实验,定量比较结果表明,与frcn方法相比,平均精度提高了从71.3%提高到了79.5%。现有技术3提出了一种用于多尺度目标检测的多层融合探测器。将底层特征图与高层特征图相结合,以适应不同尺度的检测。同样在公开的ssdd数据集上实验,得到了84.4%的检测精度,在相同实验配置下比frcn的检测精度76.6%高7.8%。上面两种方法虽然融合了特征图,但是都舍弃了相对浅层特征图,而浅层特征图的特性是比较适合于小目标检测的,所以应该考虑利用浅层特征加强对小目标的检测。
由于sar图像的背景复杂(大片海域和近海岸区域),以及船舶尺寸差别大等客观原因,直接把卷积神经网络应用到sar舰船检测中不能表现出良好的综合检测性能。
合成孔径雷达(sar)图像在海洋监测上发挥重要的作用,但也面临诸多难点问题。传统的sar船舶检测方法依赖于人类预先定义的特征或分布,较难表现出良好的检测性能。近年来基于深度神经网络的船舶探测器在光学目标检测上表现出了良好的性能,由于sar图像的特殊性,基于深度神经网络在sar舰船检测中的应用并没有表现出良好性能。主要局限性在于,现在sar船舶应用场景复杂,现在的模型难以检测到复杂背景下多尺度船舶小目标船舶。
综上所述,现有技术存在的问题是:
(1)传统的sar船舶检测方法依赖于人类预先定义的特征或分布,较难表现出良好的检测性能。就是检测性能较差,原因:主要是因为传统的sar船舶检测方法依赖于人工提取特征。
(2)现在的基于深度神经网络的sar船舶检测方法模型难以检测到复杂背景下多尺度船舶小目标船舶,检测准确度不高,未表现出良好性能。原因是:sar图像背景复杂多样(近海岸和远海岸),以及船舶的尺度多样。导致的原因。
解决上述技术问题的难度:
需要结合现有问题,重新开发一种基于深度神经网络的sar图像船舶检测方法,以解决sar图像背景复杂多样,以及船舶的的尺寸大小差别大。
通过深度神经网络实现自动提起特征,如何有效的加深网络深度,以及如果利用浅层信息,如何融合这些信息,来解决多尺度船舶的检测,是一个难点问题,以及如何利用经过roi池化后的特征来细化检测小尺寸船舶,也是一个难点问题。
解决上述技术问题的意义:
实现了能够在sar图像的复杂背景(远海岸和近海岸)同时对多尺度船舶,以及小尺寸船舶具有较高的检测性能的检测方法。
技术实现要素:
针对现有技术存在的问题,本发明提供了一种基于深度神经网络的sar船舶检测系统及方法。
本发明是这样实现的,一种基于深度神经网络的sar船舶检测方法,所述基于深度神经网络的sar船舶检测方法具体包括:
步骤一,从sar图像中提取特征,通过自底向上和自顶向下的过程将特征图逐层融合,得到五个融合特征映射层li(i=2,3,4,5,6);
步骤二,为得到的每个融合特征映射层li(i=2,3,4,5,6)分配5种不同尺度的scalei(i=2,3,4,5,6)={32*32,64*64,128*128,256*256,512*512},融合特征映射层li(i=2,3,4,5,6)的锚框的长宽比都为{1∶1,1∶2,2∶1},最终生成k个锚框,k=15(5种尺度×3种长宽比等于15);
步骤三,将生成的锚框分别发送到用于船舶目标分类的cls_layer和用于锚框回归的reg_layer,reg_layer有4k个输出,表示锚框的坐标,cls_layer有2k个输出,表示锚框是船舶目标的概率;由于产生的锚框数量很多,而且有很多重叠的锚框,本发明利用非最大抑制算法来减少粗锚框的数量;
步骤四,细化粗锚框,对融化特征进行roi池化,生成固定尺寸的特征,并对经过roi池化后的特征进行融合,将融合后的特征反馈给后续的全连接层,得到最终的检测结果。
进一步,所述步骤一中自底向上和自顶向下的特征融合步骤具体包括:
(1)所述自底向上的特征融合前馈网络中包括会改变特征图大小的特征层与不会改变特征图大小的特征层;
选取五个特征映射层,表示为convi(i=2,3,4,5,6),每层提取的特征是每个特征映射层的最后一层的输出;其中conv6是通过在conv5上附加一个1*1的卷积层得到的分辨率最粗的特征图,五个特征映射层的步长分别为stirdei={4,8,16,32,64}(i=2,3,4,5,6);
(2)自顶向下的特征融合:
首先将对应的convi(i=2,3,4)通道数量减少到256个,然后对convi(i=2,3,4)的上一层进行向上采样,在语义更强的特征图上产生更高分辨率的特征,并与该层的特征图横向连接来融合特征;
融合之后采用3×3卷积滤波器进行卷积消除上采样的混叠效应,得到融合特征映射层li(i=2,3,4,5,6)。
进一步,所述步骤三中利用非最大抑制算法来减少粗锚框的数量具体包括:
根据每个锚框与真实框之间的iou来度量是否保留该锚框;
iou定义为:
iou=(areabbox∩areagt)/(areabbox∪areagt);
areabbox和areagt分别表示预测框和真实框,如果一个锚框的iou大于0.7则被视为正锚框,iou小于0.3被视为负锚框;参加训练的正、负锚框的比例为1∶1。
进一步,所述基于深度神经网络的sar船舶检测方法还包括:
利用基于resnet的残差学习深度网络增加网络深度;
通过残差映射连接神经网络卷积层,将输入sar图像表示为x,底层输出映射表示为h(x),令堆叠的非线性层拟合另一个映射:f(x):=h(x)-x,将原映射转换为f(x)+x,通过具有快捷连接的前馈网络实现。
本发明的另一目的在于提供一种实施上述述基于深度神经网络的sar船舶检测方法的基于深度神经网络的sar船舶检测系统,所述基于深度神经网络的sar船舶检测系统还包括:
融合特征提取模块,用于从sar图像中提取特征,通过自底向上和自顶向下的过程充分融合特征,并与区域提案模块和细检测模块共享融合特征图;
区域提案模块,用于将融合特征模块(feen)提供的融合特征映射层li(i=2,3,4,5,6)作为输入,进行sar图像船舶与背景的分类,以及生成包含船舶目标位置的粗候选窗口;在每个特征融合层都要分别预测粗候选窗口,并将粗候选窗口传递给细细检测模块;
细检测模块,用于以融合特征提取模块提供的特征和区域提案模块提供的粗锚框作为输入,细化粗锚框,进行更细的船舶检测,得到最终检测结果。
本发明的另一目的在于提供一种应用所述基于深度神经网络的sar船舶检测方法的船舶信息检测系统。
综上所述,本发明的优点及积极效果为:
本发明提供的检测方法在复杂背景(大片海域和近海岸)的多尺度船舶、小目标船舶检测中具有良好的性能,并取得了较高的船舶检测精度。
本发明能够解决多尺度船舶在复杂背景下的目标检测,通过将特征图自底向上、自顶向下的形式融合在一起,然后分层独立预测,充分利用了不同层次特征图的语义信息。同时将卷积网络改为残差结构,这样既增加网络的深度,也不会因为层数增加而导致过拟合,提高了船舶检测的精度。
由于粗候选窗口通过roi池化层映射到最后一个特征时,小尺寸对象缺少用于位置优化和分类的信息,为了增强小尺寸船舶检测,本发明将经过roi池化后得到的特征进行充分融合,这样可以增加语义和空间信息的完整性。
本发明融合特征映射层会为后续的边界盒预测和分类提供更详细的信息,有利于多尺度船舶的检测。
本发明融合了经过roi池化生成的特征,更有利于检测小尺寸的船舶目标。
本发明与基于espn+asdn和的ssd方法相比,本发明的方法取得了更好的性能,这说明本发明的feen网络能够有效的融合特征,提高特征的语义信息,在复杂背景多尺度船舶检测中具有良好的性能。
本发明与frcn相比,本发明方法性能更好,说明本发明方法提高网络深度可以有效提高检测精度。
附图说明
图1是本发明实施例提供的基于深度神经网络的sar船舶检测系统结构示意图;
图中:1、融合特征提取模块;2、区域提案模块;3、细检测模块。
图2是本发明实施例提供的基于深度神经网络的sar船舶检测系统框架图。
图3是本发明实施例提供的resnet的快捷连接示意图。
图4是本发明实施例提供的基于深度神经网络的sar船舶检测方法流程图。
图5是本发明实施例提供的以vgg16网络为例,不同卷积层特征图的可视化结果示意图。
图6是本发明实施例提供的多尺度检测的不同策略示意图。
图7是本发明实施例提供的融合roi池化后的特征图。
图8是本发明实施例提供的数据集部分实例示意图。
图9是本发明实施例提供的地面真值示意图。
图10是本发明实施例提供的无roi池化融合模型的检测结果示意图。
图11是本发明实施例提供的有roi池化融合模型的检测结果示意图。
图12是本发明实施例提供的不同方法在不同iou下的召回率示意图。
图13是本发明实施例提供的四种不同时间尺度遥感图像的探测结果示意图。
图14是本发明实施例提供的groundtruth示意图。
图15是本发明实施例提供的frcn的检测结果示意图。
图16是本发明实施例提供的our-method的检测结果示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种基于深度神经网络的sar船舶检测系统及方法,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的基于深度神经网络的sar船舶检测系统包括:
融合特征提取模块1:用于从sar图像中提取特征,通过自底向上和自顶向下的过程充分融合特征,并与区域提案模块2和细检测模块3共享融合特征图。
区域提案模块2:用于将feen提供的融合特征映射层li(i=2,3,4,5,6)作为输入,进行sar图像船舶与背景的分类,以及生成包含船舶目标位置的粗候选窗口;在每个特征融合层预测粗候选窗口,将粗候选窗口传递给细检测模块3。
细检测模块3:用于以feen提供的特征和rpn提供的粗锚框作为输入,细化粗锚框,进行更细的船舶检测(分类和回归),得到最终预测结果。
如图3所示,本发明实施例提供的基于深度神经网络的sar船舶检测系统还包括:
利用基于resnet的残差学习深度网络增加网络深度。
通过残差映射连接神经网络卷积层,将输入sar图像表示为x,底层输出映射表示为h(x),令堆叠的非线性层拟合另一个映射:f(x):=h(x)-x,将原映射转换为f(x)+x,通过具有快捷连接的前馈网络实现。
如图4所示,本发明实施例提供的基于深度神经网络的sar船舶检测方法具体包括:
s401,从sar图像中提取特征,通过自底向上和自顶向下的过程将特征图逐层融合。
s402,为得到的每个融合特征映射层li(i=2,3,4,5,6)分配5种不同尺度的scalei(i=2,3,4,5,6)={32*32,64*64,128*128,256*256,512*512},融合特征映射层li(i=2,3,4,5,6)的锚框(也称为候选窗口或区域提案)的长宽比都为{1∶1,1∶2,2∶1},最终生成k(k=15)个锚框。
s403,将生成的锚框分别发送到用于船舶目标分类的cls_layer和用于锚框回归的reg_layer,reg_layer有4k个输出,表示锚框的坐标,cls_layer有2k个输出,表示锚框是船舶目标的概率;利用非最大抑制来减少粗锚框的数量。
s404,细化粗锚框,对融化特征进行roi池化,生成固定尺寸的特征,并对经过roi池化后的特征进行融合,将融合后的特征反馈给后续的全连接层,得到最终的检测结果。
步骤s401中,本发明实施例提供的自底向上和自顶向下的特征融合具体包括:
(1)所述自底向上的特征融合前馈网络中包括会改变特征图大小的特征层与不会改变特征图大小的特征映射层。
选取五个特征映射层,表示为convi(i=2,3,4,5,6),每层提取的特征是每个特征映射层的最后一层的输出;其中conv6是通过在conv5上附加一个1*1的卷积层得到的分辨率最粗的特征图,步长分别为stirdei={4,8,16,32,64}(i=2,3,4,5,6)。
(2)自顶向下的特征融合:
首先将对应的convi(i=2,3,4)通道数量减少到256个,然后对convi(i=2,3,4)的上一层进行向上采样,在语义更强的特征图上产生更高分辨率的特征,并与该层的特征图横向连接来融合特征。
融合之后采用3×3卷积滤波器进行卷积消除上采样的混叠效应,得到融合特征映射层li(i=2,3,4,5,6)。
步骤s403中,本发明实施例提供的利用非最大抑制算法来减少粗锚框的数量具体包括:
根据每个锚框与真实框之间的iou来度量是否保留该锚框。
iou一般定义为:
iou=(areabbox∩areagt)/(areabbox∪areagt)(1)
areabbox和areagt分别表示预测框和真实框,如果一个锚框的iou大于0.7则被视为正锚框,iou小于0.3被视为负锚框;保证参加训练的正、负锚框的比例为1∶1,iou不在这两个范围内的锚框忽略,不参加训练。
下面结合具体实施例对本发明的技术方案做进一步说明。
为了让探测器更具有推广性,能够检测适应复杂背景下不同尺寸的船舶,本发明提出了一种基于深度神经网络的sar船舶检测框架。为了解决多尺度船舶在复杂背景下的目标检测,通过将特征图自底向上、自顶向下的形式融合在一起,然后分层独立预测,充分利用了不同层次特征图的语义信息。同时本发明将卷积网络改为残差结构,这样既增加网络的深度,也不会因为层数增加而导致过拟合,提高了船舶检测的精度。由于粗候选窗口通过roi池化层映射到最后一个特征时,小尺寸对象缺少用于位置优化和分类的信息,为了增强小尺寸船舶检测,本发明将经过roi池化后得到的特征进行充分融合,这样可以增加语义和空间信息的完整性。最后在数据集上进行了实验,验证了本发明的方法在复杂背景(近海岸和近海岸)的多尺度船舶、小目标船舶检测中具有良好的性能,并取得了较高的船舶检测精度。
图2表示本发明方法的详细框架,主要包括特征融合提取网络、区域提案网络和细检测网络。特征融合提取网络主要是从sar图像中提取特征,然后通过自底向上和自顶向下的过程充分融合特征,并与区域提案网络和细检测网络共享融合特征图。区域提案网络在每个特征融合层预测粗候选窗口,然后将这些粗候选窗口传递给细检测网络进行更细的船舶检测(分类和回归)。
(1)融合特征提取网络
卷积神经网络一般由多个卷积层和池化层组合而成,能够从输入图像中提取特征。为了直观观察不同卷积层的特征图,将其可视化,并且放大到和原始图相同的大小。以vgg16网络为例,如图5所示,可以看到,不同层的特征图代表的特征语义信息和空间分辨率是不相同的。具体来说,浅层特征图对应的是sar图像中的一些亮度、边缘、位置和纹理信息,分辨率较为粗糙,中层是一些长和宽等形状信息,分辨率适中,高层是一些能够区分目标类别的高级抽象语义信息。低层特征图适用于精确地定位,高层特征图适用于大范围的检测。一个好的探测器应该包含船舶目标的各种语义信息。如图6(a)所示,对于基于卷积神经网络的检测器frcn(faster-rcnn),仅采用网络的顶层特征图来预测,没有用到其他特征图信息,不能很好的检测多尺度船舶。ssd(singleshotdetector)采用了多尺度特征融合的方式,如图6(b)所示,从网络的中层和顶层抽取特征做预测,虽然这种方法首次运用了特征融合,但是忽略了低层的特征信息,而低层特征图对精确定位是很有帮助的。为了充分融合特征图的语义信息,解决在多尺度船舶检测上的问题,本发明设计了如图6(c)所示的特征融合分层预测结构。具体来说该结构包括自底向上和自顶向下两种过程,如图2左侧所示,首先在自底向上的前馈网络中,特征图的大小在经过某些层后会缩小,在经过某些层后不会改变,将不改变特征图大小的层归为一个特征映射层。本发明总共选取五个这样的特征映射层convi(i=2,3,4,5,6),每层提取的特征是每个特征映射层的最后一层的输出,因为这些特征具有很强的语义信息。比较特别的是,conv6是通过在conv5上附加一个1*1的卷积层得到的分辨率最粗的特征图,他们的步长分别为stirdei={4,8,16,32,64}(i=2,3,4,5,6)。接着是自顶向下的途径,首先将对应的convi(i=2,3,4)通道数量减少到256个,然后对convi(i=2,3,4)的上一层进行向上采样,这样可以在语义更强的特征图上产生更高分辨率的特征,并与该层的特征图横向连接来融合特征,融合之后再采用3×3卷积滤波器进行卷积消除上采样的混叠效应,最终得到融合特征映射层li(i=2,3,4,5,6)。融合特征映射层会为后续的边界盒预测和分类提供更详细的信息,有利于多尺度船舶的检测。
目前,cnn的深度对于提高特征表示的性能是非常重要的。然而,随着深度的增加,由于参数爆炸和梯度消失的原因,网络的训练变得困难,同时精度也会降低。为了避免这些原因,本发明提出了一种基于resnet的残差学习深度网络来增加网络深度,提高检测精度。与以往直接叠加卷积层不同,resnet通过残差映射来连接这些卷积层,将输入sar图像表示为x,底层输出映射表示为h(x),让堆叠的非线性层拟合另一个映射:f(x):=h(x)-x,然后将原映射转换为f(x)+x,通过具有快捷连接的前馈网络实现,如图3所示。快捷连接既不会增加额外的参数,也不增加计算复杂度,整个网络通过这种策略可以传播更多层次的信号,如图2当中的convi(i=2,3,4,5,6)就是这种结构。
(2)区域提案网络
区域提案网络将feen提供的融合特征映射层li(i=2,3,4,5,6)作为输入,用于sar图像船舶与背景的分类,以及生成包含船舶目标位置的粗候选窗口,如图2所示。
根据不同层的特征图代表的特征语义信息和空间分辨率是不相同的,为了充分利用特征语义信息,本发明在每个融合特征映射层li(i=2,3,4,5,6)上附加区域提案网络,实现不同尺寸的sar船舶检测。
本发明通过锚框(也叫候选窗口或区域提案)来衡量船舶目标位置以及是否为船舶目标,锚框具有多个预定义的尺度和长宽比,以覆盖不同尺度的船舶目标,所有的锚框具有相同的中心点。本发明为每个融合特征映射层li(i=2,3,4,5,6)分配5种不同尺度的scalei(i=2,3,4,5,6)={32*32,64*64,128*128,256*256,512*512},融合特征映射层li(i=2,3,4,5,6)的锚框的长宽比都为{1∶1,1∶2,2∶1},最终生成k(k=15)个锚框。
这些锚框分别发送到cls_layer和reg_layer(cls_layer用于船舶目标分类,reg_layer用于锚框回归),reg_layer有4k个输出,表示锚框的坐标,cls_layer有2k个输出,表示锚框是船舶目标的概率;由于该阶段会产生大量的粗锚框,而且很多锚框彼此重叠,本发明采用非最大抑制来减少粗锚框的数量,根据每个锚框与真实框之间的iou来度量是否保留该锚框。iou一般定义为:
iou=(areabbox∩areagt)/(areabbox∪areagt)(1)
areabbox和areagt分别表示预测框和真实框,如果一个锚框的iou大于0.7则被视为正锚框,iou小于0.3被视为负锚框。保证参加训练的正、负锚框的比例为1∶1,iou不在这两个范围内的锚框忽略,不参加训练。
(3)细检测网络
细检测网络是在区域提案网络后的第二阶段,以feen提供的特征和rpn提供的粗锚框作为输入,主要作用是细化粗锚框,得到最终预测结果。由rpn网络产生的粗锚框的大小各不相同,需要经过roi池化,才能生成固定尺寸的特征(如7*7*512),此时小尺寸对象缺少用于位置优化和分类的信息,为了获得更多的语义信息,本发明融合了经过roi池化生成的特征,更有利于检测小尺寸的船舶目标。然后将融合后的特征反馈给后续的全连接层,得到最终的检测结果。实验部分,为了说明融合roi池化后的特征的效果,我们将与不融合roi池化后的特征进行比较。如图7所示,表示融合roi池化后的特征,去掉图中mergefeature部分表示不融合roi池化后的特征。
通过实验验证本发明的方法的有效性,并设计了几个实验来评估我们的方法,在64位的计算机上使用intel(r)xeon(r)cpue3-1230v5@3.40ghz和nvidiagpugtx1080t12g内存,cuda8.0cudnn5.0对本发明方法进行了评估。
(1)数据集描述和实验配置
1)数据集描述
本发明采用的公共ssdd数据集的构建方法与pascalvoc数据集提供的构建方式相同。它包括从radarsat-2、terrasar-x和sentinel-1收集的分辨率为1m至15m,hh、hv、vv和vh四种极化方式的sar图像,如表2所示。在ssdd中,总共有1160幅图像和2456艘船,每幅图像的平均船舶数为2.12艘。nos是船舶数量的缩写,noi是船舶数量的缩写图片,船舶和图像数量的统计数据如表3所示,将数据集按7∶2∶1的比例分为三个部分(训练集、验证集和测试集),图8显示了数据集中一些实例。
在独立测试阶段,为了验证方法的鲁棒性,本发明选用gf3拍摄的sar图像作为测试图片,包括了复杂环境下的不同尺寸的船舶,图像具体信息如图表1所示,gf-3是我国自主研发的首颗分辨率能够达到1米的c频段多极化合成孔径雷达(sar)卫星。
表1gf3图像的详细信息
表2:船舶检测数据集及图像数量
表3:ssdd的详细信息
2)实验配置
所有实验都是在caffe框架下实现的,并在imagenet数据集上使用预先训练过的resnet50来初始化模型。利用端到端训练策略来训练模型,特别是使用梯度下降算法来更新网络权值。总共训练了40k次迭代,前20k次迭代的学习率为0.001,后20k次迭代的学习率为0.0001,重量衰减和动量分别设置为0.0001和0.9。
3)评价指标
为了评估模型的质量本发明采用以下广泛使用的标准来定量评价检测的性能。即目标检测精度(precision),召回率(recall),和f1-score。检测精度度量的是检测到的真实阳性的比例,定义如下:
召回率度量的是正确识别的阳性的比例。定义如下:
其中tp、fn、fp分别表示真阳性、假阴性、假阳性。一般情况下,如果预测的边界框与地面真实边界框的面积重叠比大于0.5,则认为预测的边界框为tp,否则,它将被确定为fp。预测的边界框与地面真实边界框的重叠面积我们一般用iou表示。
f1-score将检测精度和召回率指标结合到一个单独的度量中,以全面评估船舶检测的性能。定义如下:
4)分析计算成本
以输入sar图像大小为224×224为例,表4显示了特征提取融合网络的详细结构、参数数量和mac(计算开销)。通过参考每一层的详细配置来计算各层的参数和mac,表5总结了mac和参数数量在feen、rpn和fdn中的总和。
表4详细结构、参数数量和mac
表5利用本发明方法输入sar图像大小为224×224时mac和参数数量
表5表示参数数量和mac的总数。具体地说,一个图像的大小为224×224作为输入,本发明的方法需要530亿mac和2.6亿个参数为一个迭代。观察上表的比较结果,不难看出,feen部分在计算花销上最少,因此,本发明可以得出结论,训练和测试所需的时间主要取决于rpn和fdn部分。虽然增加了卷积网络的层数,但是计算成本基本没有增加,说明本发明的设计给feen带来的计算成本可以忽略不计。
(2)在ssdd数据集上的实验
1)网络层数的影响
卷积层深度会影响船舶检测的精度,为了确定本发明增加卷积层深度的检测效果,将在网络深度为5层(zf)、16层(vgg16)、50层(resnet-50)之间进行对比实验。为了消除其他因素的影响,不进行特征融合等其他操作,只改变网络深度,所以这三个模型的其他部分是相同的,表6显示了不同网络深度的检测精度、检测召回率和f1得分。
表6不同网络深度下的检测性能
表6可以看出,50层(resnet-50)模型的recall、precision、f1score分数最高。因此,本发明得出通过残差连接的形式增加网络深度可以提高sar船舶检测精度。
2)roipooling融合的影响
由rpn网络产生的粗锚框的大小各不相同,需要经过roi池化,才能生成固定尺寸的特征(如7*7*512),此时小尺寸对象缺少用于位置优化和分类的信息,为了获得更多的语义信息,本发明融合了经过roi池化层生成的特征。为了确定融合roi池化后特征的检测效果,将在本网络中进行融合roi池化后特征与不融合roi池化后特征的对比实验,表7显示了融合roi池化后特征和不融合roi池化后特征训练出的模型的检测精度、检测召回率和f1得分。
表7
表7可以看出,融合roi池化后特征和不融合roi池化后特征的模型的查全率相似,但是融合roi池化后特征的准确率和f1score较高,因此,融合roi池化后特征的模型具有较好的性能。如图9至图11表示两种模型的检测结果,图9为地面真值,图10为无roi池化融合模型的检测结果,图11为有roi池化融合模型的检测结果。显然,有roi池化融合模型能够检测出小目标sar舰船,而无roi池化融合模型小目标舰船漏检较高。
3)与其他方法比较
为了定量地评价我们方法的检测性能,本发明将与3种公开的具有竞争力的目标检测方法进行了比较。在实验中,本发明尽可能使用原始论文中的描述,对以下方法进行简要说明。fasterrcnn(frcn)是非常有影响力得检测器,使用16个卷积层(vgg16)作为卷积层。espn+asdn是专门为检测sar图像中小目标和密集聚集的船舶而设计的检测器,在sar复杂环境的船舶检测上面有良好的表现。ssd首次运用多尺度融合特征图,且是单阶段检测器,相比frcn速度更快,但是检测精度相对较低。
表8
表8显示了4种方法的数值定量比较结果,ours-method在f1-得分、检测召回率、检测精度都表现最好,分别是91.5%,93.2%,89.9%。验证了本发明所提出的方法的有效性,说明了本发明的方法在复杂背景(大片海域和近海岸)的多尺度船舶、小目标船舶检测中具有良好的性能,并取得了较高的船舶检测精度。
图12(a)描述了不同方法在不同iou下的召回率,显示当iou增加时,每种方法的召回率都会下降,且ssd检测器的召回率最低,且下降幅度最大,这表明ssd的召回率和定位性能较差。通过分析以上结果,本发明将iou设置为0.5是最合适的。本发明方法与其他方法的recall-iou比较,可以看出,本发明方法明显优于其他方法,表明feen网络可以有效的增强复杂环境下多尺度舰船目标的检测性能。图12(b)显示了本发明方法与其他方法的precision-recall比较,从上图可以得出以下结论:
(1)与基于espn+asdn和的ssd方法相比,本发明的方法取得了更好的性能,这说明本发明的feen网络能够有效的融合特征,提高特征的语义信息,在复杂背景多尺度船舶检测中具有良好的性能。
(2)与frcn相比,本发明方法性能更好,说明本发明方法提高网络深度可以有效提高检测精度。
5)鲁棒性测试
由于本发明设计的方法是以ssdd数据集为中心,因此在一个新的gf-3大型sar图像上进行测试,来验证方法的鲁棒性是有必要的。由于整幅gf-3图像较大,如图13,本发明采用512×512像素的滑动窗口无重叠的得到检测结果。这里本发明只选择了frcn检测器作为对照,因为frcn是公认非常有影响力的检测器。
图13展示了frcn和our-method训练模型对一幅大型的gf-3图像进行了测试,(a)表示原图的ground-truth,(b)表示frcn的检测结果,(c)表示our_method的检测结果,黄色框表示ground-truth,红色框表示frcn的检测结果,绿色框表示our_method的检测结果。从图13可以看出,frcn方法无论在复杂环境的多尺度船舶检测或小目标船舶检测都存在漏检,与frcn方法对比,可得出以下几点结论:
(1)无论是在近海还是远海区域,大部分船舶都被成功的探测到,特别是在内河或小岛附近的船舶也可以被正确的检测到,这表明本发明的方法对复杂环境下的多尺度船舶检测是有效的;
(2)同时对复杂环境下的小尺寸船舶也能够正确检测到,说明本发明的方法小尺寸船舶检测也是有效的。
为了更清楚地看到检测结果,本发明截取了一部分检测图片,以512*512像素的形式展示出来。
如图14至图16所示,图14表示groundtruth;图15表示frcn的检测结果;图16表示our-method的检测结果。相比frcn,本发明的方法基本都能正确检测出船舶目标。
4、总结
由于sar图像的背景复杂(大片海域和近海岸区域),以及船舶尺寸差别大等客观原因,为了让探测器适应不同情况的船舶检测,具有推广性和鲁棒性。本发明提出了用于sar船舶检测的双重融合特征的船舶探测器,为了检测复杂背景下多尺度船舶,本发明通过自底向上和自顶向下的方式将浅层中层深层的特征相结合,得到具有丰富语义的特征图,并且引入残差块到卷积层中提高卷积的深度,提高了检测精度。为了加强对小目标的船舶检测,解决目标语义和空间信息的利用不完全,在细检测网络中,本发明将经过roi池化后的特征融合起来,然后输出最终检测结果,保证了语义和空间信息的完整性。最后实验结果验证了本发明的方法能够同时解决多尺度及近海岸和小目标船舶的检测,检测精度高于现有的一些方法。证明了本发明的方法的可靠性和先进性,这种策略也可以应用到其他目标检测上,为其他领域的应用提供了新的思路。
本发明在数据集上进行了实验,验证了本发明的方法在复杂背景(大片海域和近海岸)的多尺度船舶、小目标船舶检测中具有良好的性能,并取得了较高的船舶检测精度。
为了检测复杂背景下多尺度船舶,本发明通过自底向上和自顶向下的方式将浅层中层深层的特征相结合,得到具有丰富语义的特征图,并且引入残差块到卷积层中提高卷积的深度,提高了检测精度。为了加强对小目标的船舶检测,解决目标语义和空间信息的利用不完全,在细检测网络中,本发明将经过roi池化后的特征融合起来,然后输出最终检测结果,保证了语义和空间信息的完整性。最后实验结果验证了本发明的方法能够同时解决近海岸和远海岸的多尺度及小目标船舶的检测,检测精度高于现有的一些方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。