鲁棒的多模态遥感图像目标检测方法

文档序号:25803663发布日期:2021-07-09 12:45阅读:201来源:国知局
鲁棒的多模态遥感图像目标检测方法

1.本发明属于图像信息处理技术领域,特别是涉及多模态图像目标检测的方法。


背景技术:

2.目前,与本专利相关的方法包括两方面:第一是基于深度学习的目标检测算法;第二是知识蒸馏的深度学习算法。
3.基于深度学习的目标检测方法主要分为两类:两阶段的目标检测算法,这种大多设计特定的网络结构用于提取可能是目标的区域,ren等人在文献《fasterr

cnn:towards real

time object detection with region proposal networks》中提出的网络就设计了一个用于提取可能是目标区域的rpn网络,然后再将这些区域进行分类,有了特定的区域进行辅助,因此精度较高,但也存在检测速度较慢的问题;一阶段目标检测网络,则没有提取感兴趣区域的网络结构,为提升网络准确度,大量学者采取了众多的研究,redmon等人在文献《you only look once: unified,real

time object detection》采用将图像分块的方法,将目标检测的任务分给图像块,lin等人在《focal loss for dense object detection》中解决了一阶段网络样本不平衡的问题,提升了网络的检测准确度。由于一阶段网络抛弃了提取感兴趣区域这一计算过程,因此与二阶段的网络相比有着更快的目标检测速度,但是抛弃提取感兴趣的区域,也不可避免地导致了目标检测准确度的下降。
4.知识蒸馏的深度学习算法,hinton等人在文献《distilling the knowledge in aneural network》提出,该方法提出目的是将复杂的教师模型知识压缩到一个简单轻量的学生模型中,从而提升轻量模型的性能。即通过将数据送入一个预训练好的教师模型中产生软标签来训练学生模型。虽然最初的设想是通过匹配预测将复杂的模型压缩为更简单的模型,但是蒸馏将这一做法进一步扩展到匹配中间层特征,域间知识迁移等诸多方面。
5.针对于多模态图像的目标检测,解决该问题的一种常见的方法是利用图像融合的方式,将不同模态的图像融合为一张图像送入网络进行检测。这就要求在同一场景下三种模态的图像是同时存在的,这一要求在大部分情境下都难以满足,因此也难以使用该方法检测。


技术实现要素:

6.针对同一场景下无法获得三种模态图像的问题,提出了一种基于知识蒸馏的鲁棒的多模态遥感图像目标检测方法。它可以适用于不同种类的输入源图像,均可以得到较好的预测结果。它将一系列为不同模态图像专门设计的目标检测器的知识进行归纳综合,并形成一个鲁棒的单一网络。
7.本发明的技术方案:
8.一种鲁棒的多模态遥感图像目标检测方法,步骤如下:
9.采用三种模态的图像分别训练三个目标检测器;
10.采用resnet50作为三个目标检测器的骨干网络来提取用于目标检测的特征;
11.在网络训练阶段,三个目标检测器的损失函数相同,差异在于输入的数据,对于任一一个目标检测器的损失函数说明如下:由于一张图像中仅有少量目标,直接利用交叉熵计算每个位置的损失函数会导致正样本的损失值被负样本的损失值“淹没”影响网络对正样本特征的学习,所以我们利用facol loss损失函数来平衡正负样本对应的损失函数值:
[0012][0013]
其中,n1为一个训练批次中目标的数目,y
xyc
为图片真值,为网络预测值α和β为网络的两个超参数用于规定锚框分类过程中正负样本的平衡程度。锚框回归分支实际上预测的是人为规定的锚框与真值之间的位置和大小的差距;现设真值锚框为(x,y,h,w),四个值分别代表锚框位置的横坐标、纵坐标、锚框高度和宽度;人为规定的的锚框为则网络需要预测:
[0014][0015]
利用如下损失函数来监督网络:
[0016][0017][0018][0019]
其中n2为与第j个真值框重叠度(iou)大于阈值的预测框数目;为网络的对第i个符合要求(与第j个真值框重叠度(iou)大于阈值)锚框的预测值, t
mj
为对应真值,(x
j
,y
j
,h
j
,w
j
)为第j个真值锚框的参数,为第i个符合要求的人为规定锚框的参数。在网络总的损失函数为:
[0020]
l=l
class
+εl
loc
(1

4)
[0021]
其中,ε用于平衡两种任务的损失,l
class
和l
loc
为式(1

1)和式(1

3)中规定的损失函数。
[0022]
三个目标检测器进行知识蒸馏得到一个鲁棒的网络
[0023]
我们提出了一个基于知识蒸馏的多模态遥感目标检测任务的归纳方法,它集成了多个源数据集上专门训练出来的不同目标检测网络的知识,是利用多个来自多个源的目标检测器强化后的模型。因此,我们仅仅使用一个单一模态目标检测网络,就可以完成对任意输入源图像进行预测。知识蒸馏的目的是将复杂的教师模型知识压缩到一个简单轻量的学生模型中。它们通过将数据送入一个预训练好的教师模型中产生软标签来训练学生模型。虽然最初的设想是通过匹配预测将复杂的模型压缩为更简单的模型,但是蒸馏将这一做法进一步扩展到匹配中间层特征,域间知识迁移等诸多方面。
[0024]
学生网络根据输入选取对应的老师网络进行学习,三种模态的图像知识蒸馏的过程类似,因此我们仅对一种模态进行说明。这里假设我们拥有数据集 {a
i
,b
i
},i=1,2,...,
n,其中a是输入图像,b是分类标签。p
t
,p
s
分别为教师和学生模型的分类预测结果,我们的学生检测模型在训练时的分类任务优化目标如下:
[0025]
l
cls
=μl
hard
(p
s
,b)+(1

μ)l
soft
(p
s
,p
t
)(1

5)
[0026]
其中,l
hard
是学生模型预测结果和真值之间的硬损失,l
soft
是学生模型预测结果和教师模型预测结果之间的软损失。μ是用来平衡软硬损失的超参数。软标签包含了老师模型所发现的不同类别目标之间的潜在关系。通过学习软标签,学生网络继承了这些隐藏的信息。但是不像简单的分类问题,检测问题需要处理不同类别之间的严重不平衡,也就是说,背景占主导地位。因此,我们采用类加权交叉熵作为分类蒸馏损失:
[0027]
l
soft
(p
s
,p
t
)=

∑w
c
p
t
logp
s
(1

6)
[0028]
其中w
c
为平衡权重,对于目标类别我们使用较大的权重,而对于背景类别我们使用较小的权重;p
s
和p
t
分别为学生模型和老师模型的目标分类预测结果。对于目标检测网络,还有一个支路用来做目标边界框的定位于回归,类似分类支路,我们也使用真值和教师模型的预测计算边框回归损失,
[0029]
l
reg
=l
sl1
(r
s
,y
reg
)+νl
t
(r
s
,r
t
,y
reg
)(1

7)
[0030]
其中,y
reg
是边框真值坐标点向量,r
s
,r
t
分别是学生和教师模型的回归预测结果。ν是用来平衡学生模型预测结果对真值和教师模型预测结果之间损失的超参数。l
sl1
是平滑l1损失。对于损失,我们描述如下:
[0031][0032]
即,我们认为当学生和教师模型预测误差超过一定范围了,我们对真值采用l2 损失。此处的教师模型的预测作为一个判断标准而非直接使用。其中,m是判别边界参数。使用教师的中间表现可以帮助学生模型的训练过程,并提高学生的最终表现.因此,我们分别在学生网络的中间层和末端层特征进行约束。我们使用学生和教师模型的l2距离进行约束,特征约束损失描述如下:
[0033]
l
f
(f
s
,f
t
)=||f
s

f
t
||2(1

9)
[0034]
其中,f
s
和f
t
分别为为老师网络(目标检测器)和学生网络的特征图最终蒸馏过程中的网络损失函数为:
[0035]
l
d
=λ1l
cls
+λ2l
reg
+λ3l
f
(1

10)
[0036]
其中λ1、λ2、λ3用于平衡两种任务的损失。
[0037]
本发明的有益效果:本发明的多模态遥感图像目标检测方法利用了知识蒸馏的方式,目前常见的图像融合方式的算法在训练和推断时需要同一场景下的一组多模态图像,而这一需求一般难以满足。而本发明的方法不存在这个问题,仅利用不对齐的(同一场景下的多个模态图像无需同时存在)多模态的图像便可以得到一个对多个模态遥感图像鲁棒的目标检测网络。
附图说明
[0038]
图1为三个目标检测器的训练方法流程图。
[0039]
图2为三个目标检测器训练完成后,进行知识蒸馏的过程流程图,其中老师 1,老
师2,老师3代表图一中训练的三个目标检测器。
[0040]
图3为三个目标检测器的网络结构示意图。
[0041]
图4为知识蒸馏过程示意图,由于模态二和三的知识蒸馏过程与模态一类似,为简洁地表达,图中仅表示了模态一的图像蒸馏的过程。
具体实施方式
[0042]
以下结合附图和技术方案,进一步说明本发明的具体实施方式。
[0043]
图1为三个目标检测器的训练方法流程图,先搭建三个结构相同的(如图3所示)目标检测器,然后在模态1、2、3的数据上分别训练三个对应目标检测器:目标检测器1,目标检测器2和目标检测器3。三个目标检测器均利用式(1

4) 作为损失函数进行监督,当某一个目标检测器的损失函数收敛时结束该目标检测器的训练。待三个目标检测器均结束训练,本过程结束。经过这一过程,我们可以得到三个在对应模态数据上性能良好的目标检测器(老师网络)。
[0044]
图2为知识蒸馏的过程流程图。对于网络训练的数据,我们先判断其模态:当训练图像来自模态1,学生网络则跟随老师1(目标检测器1)学习;当训练图像来自模态2,学生网络则跟随老师2(目标检测器2)学习;当训练图像来自模态3,学生网络则跟随老师3(目标检测器3)来学习;由于三个模态的学习过程是相同的,因此我们以模态1为例来说明具体过程,当输入的是一幅模态1的遥感图像时,将其同时输入老师网络(目标检测器1)和学生网络,利用式(1

9)来让学生网络输出和老师网络类似的特征,利用(1

7)和(1

8)来对学生网络预测结果分别与教师网络结果和真值之间进行约束,待上述损失在三个模态的遥感图像上均收敛时,即式(1

10)在三个模态的遥感图像上收敛时,本过程结束,得到的学生网络就是一个对三种模态鲁棒的模型。
[0045]
总的来说,本方法设计了一种基于知识蒸馏的鲁棒的多模态遥感图像目标检测方法,可以有效的针对多模态的遥感图像进行目标检测。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1