1.本发明属于复杂环境下的遥感船舶目标检测技术领域,涉及一种基于深度学习的遥感图像船舶目标检测方法。
背景技术:2.光学遥感图像的船舶检测技术被广泛应用于河流监测、港口管理和非法越境追捕等领域。但受水汽蒸发,高空凝结等影响,水域区域相较于陆地区域更易出现云层、雾霾覆盖。这种现象增加了基于光学遥感图像目标检测任务的难度。针对有薄云或雾霾遮挡的船舶检测任务,可以先利用去云或去雾算法进行图像清晰化处理,再使用目标检测算法对船舶进行检测。但由于去云、去雾操作耗时,整体检测流程冗长,难以满足于高时效应用领域的需求。而针对有云雾遮挡的光学遥感图像直接进行检测的方法可以减少整体任务目标检测的耗时,从而更好的响应高时效性目标检测任务的需求。
3.基于深度学习的目标检测算法,例如yolo系列等,虽然在pascal voc和coco目标检测任务中有着满意的表现性能。但难以直接应用于云雾覆盖下的航天遥感影像舰船检测任务。其主要原因在于,不同于主要关注近景目标的自然图像目标检测任务,航天遥感影像中的舰船目标多小而窄,且在港口、河道等狭小区域,舰船目标往往密集出现,在此基础上叠加不同程度的云雾覆盖干扰,导致直接移用相关目标检测算法难以取得理想的效果。
技术实现要素:4.针对现有的目标检测算法难以在雾天遮掩下的遥感船舶检测任务保持一定精度的同时拥有快速的检测速度,本发明提供了一种基于深度学习的遥感图像船舶目标检测方法,所述方法包括以下步骤:
5.步骤s101:构建数据集并且对数据集进行预处理与增强;
6.步骤s102:构建frs-net网络;
7.步骤s103:进行frs-net模型训练;
8.步骤s104:得到frs-net的模型参数,对目标影像进行检测;
9.步骤s105:对网络性能进行评估,并且依据评估结果网络模型进行迭代优化。
10.优选地,所述构建数据集并且对数据集进行预处理与增强包括以下步骤:
11.收集公开的遥感数据集来获得基础遥感船舶图像,在此基础上通过暗通道加雾算法仿真出不同程度云雾遮掩环境的遥感船舶数据集;
12.通过k-means算法简化锚框的数量,增加浅层网络,通过特征金字塔融合的方式将深层网络的高级语义信息传递到浅层网络进行参数的融合;
13.在预测网络中增加更加细腻的特征尺度,增加对密集型排列目标检测的精准性。
14.优选地,所述frs-net网络包括骨干特征提取网络和特征融合网络;其中,骨干特征提取网络采用cspdarknet53-tiny;特征融合网络采用fpn算法,且深度网络的高级语义信息通过fpn算法传输到浅层网络。
15.优选地,所述进行frs-net模型训练包括:
16.利用遥感船舶的特性采用k-means聚类算法简化锚框数量,通过简化每一个特征层匹配的锚框数量在确保精确度的基础上减少网络的参数量,加快网络的推理时间。
17.优选地,所述进行frs-net模型训练还包括:通过增加新的浅层网络为网络带来细节信息,并通过特征融合网络为浅层网络带来高级语义信息,增强网络在复杂环境下的鲁棒性,改进预测网络,缓解网络提取特征与计算特征不一致的情况,增加算法对密集型排列目标检测的精准性。
18.优选地,所述得到frs-net的模型参数,对目标影像进行检测,其具体包括以下步骤:
19.使用frs-net算法在不同浓度云雾覆盖的遥感图像上进行检测,其中,不同浓度云雾覆盖的遥感图像是通过暗通道加雾算法在相同的遥感船舶图像中增加不同浓度的云雾场景得到。
20.优选地,所述得到frs-net的模型参数,对目标影像进行检测还包括:利用测试集输入至训练好的frs-net网络结构,批量的得出检测结果;检测结果包括边界框信息、置信度和类别分数;并通过非极大值抑制算法排除一部分干扰性较强的锚框;最终通过评价指标来衡量frs-net的网络性能。
21.优选地,所述对网络性能进行评估,并且依据评估结果对网络模型进行迭代优化,其具体包括以下步骤:
22.将预测边界框与真实框进行对比,采用平均精度、计算时延、每秒帧数对其评估,依据评估结果对网络模型进行迭代优化;其中获取平均精度包括:
23.所述平均精度是由精度和召回率通过设置不同的阈值形成的曲线面积;在测试数据集中对十种不同程度的雾天覆盖浓度的数据集进行测试求平均值得到。
24.优选地,在所述获取平均精度中,所述平均精度(ap)、精度(precision)和召回率(recall)由以下公式计算所得:
[0025][0026][0027][0028]
上式中,tp代表着真正例,fp代表着假正例,fn代表着假负例;p(r)代表着由精确度与召回率围成的曲线,ap代表对曲线求积分得到平均精度。
[0029]
本发明的技术效果和优点:
[0030]
本发明针对受雨雾干扰的复杂环境下遥感船舶检测任务,依据遥感影像的特点提出更为合适的锚框设定与分配策略,并且通过构建特征融合使浅层网络获得更高级的语义信息以减缓云雾的干扰。该方法适用于受云雾等干扰的复杂场景下遥感舰船目标检测的需求,依据遥感影像的特点提出更为合适的锚框设定与分配策略,并且通过骨干提取网络与fpn算法使深度网络的高级语义信息传输到浅层网络,提高网络在云覆盖等复杂环境中检测船舶的能力。该方法具有运算效率高、目标检测精确等方面的优势,能够适用于大规模的
遥感舰船检测任务,在快速提取舰船目标方面有着明显的价值与意义。
附图说明
[0031]
图1是本发明基于深度神经网络的高分辨率光学遥感云雾遮掩环境的船舶检测方法的流程示意图;
[0032]
图2为本发明实施例锚框匹配策略示意图;
[0033]
图3为本发明的frs-net网络结构图;
[0034]
图4为本发明实施例frs-net预测网络处理示意图。
具体实施方式
[0035]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]
本发明提供一种基于深度神经网络的高分辨率光学遥感云雾遮掩环境的船舶检测方法,该方法应用于frs-net网络,其用于不同浓度云雾遮掩下的遥感船舶目标检测任务,此外它能够满足诸如星载等时效性极高的应用领域。
[0037]
具体如图1所示,本发明的方法包括:步骤s101:构建数据集并且对数据集进行预处理与增强;具体步骤如下,
[0038]
首先,在数据集构建方面由于现有公开的遥感数据集均为清晰的船舶图像,因此,在本实施例中,所述数据集表示为清晰的船舶图像的遥感图像。为了获得云雾遮掩下的遥感图像,通过暗通道加雾算法模拟不同程度的云雾遮挡环境下的遥感船舶检测任务。
[0039]
进一步地,鉴于目前公开的遥感船舶数据集大多是以清晰的遥感图像为主,因此为了使得网络训练出更好的表现效果。本发明通过收集公开的遥感数据集dior来获得基础遥感船舶图像,在此基础上通过暗通道加雾算法仿真出不同程度云雾遮掩环境的遥感船舶数据集(在本发明中记为sdior),并且对该数据集进行相应的增强。
[0040]
在数据集构建方面,利用暗通道加雾算法进行数据模拟,以暗通道先验算法为理论依据,所用加雾模型如下:
[0041]
i(x)=j(x)t(x)+a(1-t(x))
[0042]
其中j(x)为清晰的遥感图像;i(x)为云雾遮掩环境的遥感图像;a是大气光成分,t(x)为图像透光率。为了在视觉以及数据上仿真雾天覆盖的遥感图片,本文通过既有的云雾覆盖图(先验图),提取得到真实云雾图像的t(x)、a值,并用于上述模型对原数据集影像进行加雾处理,加雾过程中通过系数定量控制浓度。具体过程如下:
[0043][0044]
其中,ω设定为0.95。ic通过导向滤波来计算,ω(x)代表着以x为中心的局部区域块。求得既有真实云雾覆盖图的t(x)、a值后,对原数据集影像进行加雾处理,其中α为前文所提浓度系数,公式如下:
[0045]
j(x)=α
·
t(x)
·
(i(x)-a)+a
[0046]
在本实施中,通过调整α调控云雾遮挡的程度,仿真出不同云雾遮挡的遥感船舶检测任务,包括原图一共十种不同云雾遮挡程度的遥感船舶图像,并将其混合在一起构成数据集。
[0047]
其次,在数据预处理方面利用船舶形状的特点通过k-means算法简化锚框的数量,提升模型的检测效率。通过增加浅层网络使得目标检测算法能够获得更多的细节信息,再通过特征金字塔融合的方式将深层网络的高级语义信息传递到浅层网络进行参数的融合,使得浅层网络能够获得更多的高级语义信息,提高算法在云雾覆盖环境中检测船舶目标的能力。
[0048]
具体地,在数据增强方面,针对遥感船舶形状的特点,利用k-means聚类算法简化锚框数量,在保证一定精确度的同时提高了检测速度。
[0049]
如图2所示为锚框匹配策略示意图,图中,黄色的星标代表着每一个锚框,不同颜色的样本点代表着它们被分配到不同的锚框中,(a)代表着4个锚框的分配情况,(b)代表着6个锚框的分配情况。具体而言,通过抽取训练集中所有目标样本的长宽以及通过k-means算法聚类的所有锚框,映射到网络模型初始的输入尺寸(416,416)。将所有目标样本与锚框进行iou计算,得到每一个目标样本点分配的锚框,并按照同等比例选出部分样本点。(a)相对于(b),在整体的样本上是相同的,但由于锚框数量的减少,每一个锚框所匹配到的目标样本数量增加。例如,在(b)中原本两个锚框检测的目标样本,在(a)中只需要一个锚框来检测,(b)中不规则的曲线框代表着这一个现象。
[0050]
然后,针对遥感船舶检测任务中小目标密集型排列的场景,通过在预测网络中增加更加细腻的特征尺度来缓解网络提取特征与计算特征不一致的情况,增加对密集型排列目标检测的精准性。
[0051]
步骤s102在步骤s101的基础上构建frs-net网络,增强其在雨雾覆盖等复杂场景下遥感舰船目标的检测能力。
[0052]
如图3所示为frs-net网络结构图,图中,frs-net算法主要由骨干特征提取网络、特征融合网络和预测网络三部分组成。所述算法包括图像预处理,图像预处理过程将待检测遥感图像进行拉伸、压缩和数据增强处理,其中,数据增强包括hsv色域变换,mosaic变换,镜像变换中的一种或多种;在对图像进行预处理之后送入到目标特征提取网络进行特征提取,提取后的特征信息送入特征融合网络进行特征融合提高浅层网络所含的高级语义信息量,然后送入特征信息转化网络进行特征信息的解码,获得预测网络所需的目标边框信息、目标置信度、类别信信息。预测网络通过不同缩小网络预测的目标信息与真实的目标信息之间的差异来实现云雾遮掩下的遥感船舶检测任务。
[0053]
为了满足高时效应用的需求,frs-net采用了骨干提取网络cspdarknet53-tiny。cspdarknet53-tiny分别由三个基本卷积和两个大型残差块组成。基本卷积主要由普通卷积、批量归一化(bn)和激活函数泄漏整流线性单元(leaky relu)组成。残差模块可以解决消失梯度,即使在更深的网络中也能实现良好的性能。
[0054]
特征融合网络采用fpn算法。众所周知,浅层要素图层拥有更多的低级语义信息,包括边界框位置信息。通过增加新的浅层网络带来更详细的信息,有利于提高复杂环境下船舶目标识别算法的准确性。在此基础上,深度网络的高级语义信息通过fpn传输到浅层网络,进一步提高了网络在云覆盖环境中检测船舶的能力。
[0055]
步骤s103在步骤s102完成的基础上进行frs-net模型训练,其具体过程包括:
[0056]
通过增加新的浅层网络为网络带来细节信息,并通过特征融合网络为浅层网络带来高级语义信息,增强网络在复杂环境下的鲁棒性,并在此基础上改进预测网络,缓解网络提取特征与计算特征不一致的情况,增加算法对密集型排列目标检测的精准性。其具体实施过程如下所示。
[0057]
参考图3所示,图中,在frs-net算法训练阶段,样本图像被拉伸与缩放到416
×
416,经过主干网络的特征提取和下采样,三个特征尺度不同的特征图,c
×
13
×
13,被特征融合网络获得。在特征融合网络中,为了与特征图在参数上进行融合,c
×
13
×
13需要调整通道和特征图空间大小,经过基础卷积和上采样后,特征尺度c
×
13
×
13改变为此时特征图的空间大小变为一致,之后在通道维度上叠加,生成特征图此时,该特征图有两个作用,第一,通过预测头进行通道转换后送入到预测网络进行目标边界框、类别、置信度的预测;第二,继续进行通道和特征图空间大小的调整并与特征图进行参数融合,生成特征图之后被送入预测网络计算特征信息。在frs-net特征层目标检测分配策略上,特征输出层52
×
52用来检测小目标,特征输出层26
×
26用来检测非小目标。为了使特征输出层26
×
26的特征信息与特征输出层52
×
52的特征信息进行匹配,通过在特征尺度为26
×
26的特征输出层上增加基础卷积以及上采样操作来保证信息匹配。当特征输出层26
×
26的特征信息与特征输出层52
×
52的特征信息进行参数融合后,浅层网络就能够获取来自深层网络的高级语义信息,以此提高网络模型在云雾覆盖环境中的鲁棒性。同时,由于frs-net保持着两个特征输出层,这使得它与yolov4-tiny有着相近的高时效性。
[0058]
进一步地,步骤s103还包括:利用遥感船舶的特性采用k-means聚类算法简化锚框数量,通过简化每一个特征层匹配的锚框数量在确保精确度的基础上减少网络的参数量,加快网络的推理时间。
[0059]
如图4所示为frs-net预测网络处理示意图,图中,两个密集型排列的小船目标,经过特征网络提取特征信息后被送入到预测网络,其特征值转变为边框信息。首先,边框信息中的目标中心点会经过sigmod激活函数,输出σ(t
x
)∈(0,1),σ(ty)∈(0,1)。其中,每一个网络的长宽在大小上设置为1。当预测网络输出的特征图大小为26
×
26时,目标的中心点在归一化的基础上需要匹配上特征图的大小。由于26
×
26特征图大小不足,导致此时两只小船中心点分配在同一网格的现象。但该网格的左上角坐标26
×
26只能匹配一个目标中心点,因此在拥有两个目标特征的网格中,只有一个目标在预测网络中获得了计算,但卷积网络却提取到两只小船的特征,这就造成了两者不一致的现象。这种混乱的匹配就导致了算法对于遥感船舶的检测常常出现漏检和误检的情况。由于两只小船拥有相同的宽高,它们属于同一检测层,增加锚框不仅无法解决这一问题,还会增加网络额外的推理时间。frs-net算法通过新增特征预测尺度52
×
52来缓解以上问题。在图4的右图中,目标中心点在扩大两倍尺度的特征图中会重新获得网格,特征尺度的扩大也增加了两者目标中心点的空间距离,因此两个目标中心点能够成功分配到不同的网格中。在密集型排列的遥感船舶图像中,
这种方法使得原本临界于网格边缘的一部分目标中心点重新分配到新的网格。它能够成功缓解卷积网络提取的特征与预测网络计算的特征不一致,提高目标检测算法对于密集型排列的小型船舶检测的能力。
[0060]
步骤s104在步骤s103完成的基础上,得到frs-net的模型参数,基于frs-net的模型对目标影像进行检测,其具体步骤如下所示:
[0061]
使用frs-net算法在不同浓度云雾覆盖的遥感图像上进行检测。本发明中不同浓度云雾覆盖的遥感图像是通过暗通道加雾算法在相同的遥感船舶图像中增加不同浓度的云雾场景得到。
[0062]
利用测试集输入至训练好的frs-net网络结构,批量的得出检测结果,其中,检测结果包括边界框信息,置信度、类别分数。
[0063]
测试frs-net在不同云雾遮掩程度环境下对船舶检测的能力,对验证集图像每张均进行10种程度的仿真,最终求的十种不同云雾遮掩下的船舶检测结果,并求平均值。
[0064]
需要说明的是,在检测阶段,输入的遥感船舶图像被拉伸与压缩至416
×
416,并送入到主干网络中进行目标特征的提取,包括细节特征与高级语义特征。为了能够精确的识别出目标,在特征融合层对细节特征与高级语言特征进行信息融合。为了能够使得预测网络对融合后的信息进行计算,通过将融合后的信息进行解码操作使得参数维度变为n
×n×2×
(4+1+c)。其中,n代表着特征输出层大小,c代表着分类数量。在本发明中,frs-net只拥有两个特征输出层,因此n的大小分别为52
×
52,26
×
26。而本发明由于只针对了船舶目标检测任务,因此c在数量上为1。特别的,2代表着frs-net锚框的数量,4代表着目标框的中心点与大小,1代表着预测框的置信度。
[0065]
在预测网络的预测阶段,预测边框通过将置信度与类别分数相乘得到边界框分数,边界框分数大于所设阈值的预测边框被保留,小于阈值的被舍弃。为避免同一目标拥有多个预测边界框,通过引入非极大值抑制算法(nms)来获得最终的预测框。
[0066]
步骤s105在步骤s104完成的基础上,对网络性能进行评估,并且依据评估结果网络模型进行迭代优化,其具体步骤如下所示:
[0067]
将步骤s104保留下的预测框与真实框进行对比,采用常用的网络评价指标平均精度(map)、计算时延(latency)、每秒帧数(fps)对其评估,依据评估结果对网络模型进行迭代优化。其中各项评价指标定义如下:
[0068]
平均精度ap是由精度(precision)和召回率(recall)通过设置不同的阈值形成的曲线面积。
[0069]
计算时延是发出请求和接收响应之间经过的时间,用于测量算法推理的速度。
[0070]
每秒帧数fps指每秒输出帧数。
[0071]
衡量frs-net网络性能的参数指标,采用的是常用的平均精度(map),检测速度(fps),网络推理时间(latency)。
[0072]
进一步地,map是由所有预测种类的ap取平均值得到,详细来说,本发明在测试数据集中对十种不同程度的雾天覆盖浓度的数据集进行测试所得到的ap求平均值得到map。在本实施例中,ap是由精确度(precision)和召回率(recall)计算形成的曲线面积,而这条曲线通常被称为pr曲线,它是通过设置不同的阀值来形成的。关于精确度与召回率的计算,它由以下公式计算出。
[0073][0074][0075][0076]
上式中,tp代表着真正例,fp代表着假正例,fn代表着假负例。p(r)代表着由精确度与召回率围成的曲线,对该曲线求积分得到ap。
[0077]
综上所述,本发明主要针对受雨雾干扰的复杂环境下遥感船舶检测任务,依据遥感影像的特点提出更为合适的锚框设定与分配策略,并且通过构建特征融合使浅层网络获得更高级的语义信息以减缓云雾的干扰。
[0078]
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:1.一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,包括以下步骤:构建数据集并且对数据集进行预处理与增强;构建frs-net网络;进行frs-net模型训练;得到frs-net的模型参数,基于frs-net的模型对目标影像进行检测;对网络性能进行评估,并且依据评估结果对网络模型进行迭代优化。2.根据权利要求1所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述构建数据集并且对数据集进行预处理与增强包括以下步骤:收集公开的遥感数据集来获得基础遥感船舶图像,通过暗通道加雾算法仿真出不同程度云雾遮掩环境的遥感船舶数据集;通过k-means算法简化锚框的数量,增加浅层网络,再通过特征金字塔融合的方式将深层网络的高级语义信息传递到浅层网络进行参数的融合;在预测网络中增加细腻的特征尺度来缓解网络提取特征与计算特征不一致的情况,增加对密集型排列目标检测的精准性。3.根据权利要求1所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述frs-net网络包括骨干特征提取网络和特征融合网络;其中,骨干特征提取网络采用cspdarknet53-tiny;特征融合网络采用fpn算法,且深度网络的高级语义信息通过fpn算法传输到浅层网络。4.根据权利要求1所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述进行frs-net模型训练包括:利用遥感船舶的特性采用k-means聚类算法简化锚框数量,通过简化每一个特征层匹配的锚框数量在确保精确度的基础上减少网络的参数量,加快网络的推理时间。5.根据权利要求4所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述进行frs-net模型训练还包括:增加新的浅层网络为网络带来细节信息,通过特征融合网络为浅层网络带来高级语义信息,增强网络在复杂环境下的鲁棒性,改进预测网络,缓解网络提取特征与计算特征不一致的情况,增加算法对密集型排列目标检测的精准性。6.根据权利要求1所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述得到frs-net的模型参数,基于frs-net的模型对目标影像进行检测包括:使用frs-net算法在不同浓度云雾覆盖的遥感图像上进行检测,其中,不同浓度云雾覆盖的遥感图像是通过暗通道加雾算法在相同的遥感船舶图像中增加不同浓度的云雾场景得到。7.根据权利要求6所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述得到frs-net的模型参数,基于frs-net的模型对目标影像进行检测还包括:利用测试集输入至训练好的frs-net网络结构,批量的得出检测结果;检测结果包括边界框信息、置信度和类别分数;并通过非极大值抑制算法排除一部分干扰性较强的锚框;最终通过评价指标来衡量frs-net的网络性能。8.根据权利要求1所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,所述对网络性能进行评估,并且依据评估结果对网络模型进行迭代优化,包括以下步骤:
将预测边界框与真实框进行对比,采用平均精度、计算时延、每秒帧数对其评估,依据评估结果对网络模型进行迭代优化;其中获取平均精度包括:所述平均精度是由精度和召回率通过设置不同的阈值形成的曲线面积;在测试数据集中对十种不同程度的雾天覆盖浓度的数据集进行测试求平均值得到。9.根据权利要求8所述一种基于深度学习的遥感图像船舶目标检测方法,其特征在于,在所述获取平均精度中,所述平均精度(ap)、精度(precision)和召回率(recall)由以下公式计算所得:式计算所得:式计算所得:上式中,tp代表着真正例,fp代表着假正例,fn代表着假负例;p(r)代表着由精确度与召回率围成的曲线,ap代表对曲线求积分得到平均精度。
技术总结本文提供了一种基于深度学习的遥感图像船舶目标检测方法,应用于FRS-Net网络;其技术要点在于:所述方法包括以下步骤:构建数据集并且对数据集进行预处理与增强;构建FRS-Net网络;进行FRS-Net模型训练;得到FRS-Net的模型参数,基于FRS-Net的模型对目标影像进行检测;对网络性能进行评估,并且依据评估结果对网络模型进行迭代优化。本发明主要针对受云雾干扰的复杂环境下遥感船舶检测任务,依据遥感影像的特点提出更为合适的锚框设定与分配策略,并且通过构建特征融合使浅层网络获得更高级的语义信息以减缓云雾的干扰。该方法具有运算效率高、目标检测精确等方面的优势,能够适用于大规模的遥感舰船检测任务,在快速提取舰船目标方面有着明显的价值与意义。船目标方面有着明显的价值与意义。船目标方面有着明显的价值与意义。
技术研发人员:张致齐 郑慧刚 谢广奇 曹金山 常学立
受保护的技术使用者:湖北工业大学
技术研发日:2022.07.15
技术公布日:2022/11/1