一种基于双流结构的小样本遥感图像场景分类方法与流程
未命名
10-08
阅读:117
评论:0
1.本发明属于图像感知领域,特别是指一种双流结构的小样本遥感图像场景分类方法,可用于对小样本遥感图像进行分类,为环境感知提供支撑。
背景技术:
2.遥感图像场景分类在军用以及民用领域均有重要作用。物体尺度的巨大差异也是小样本遥感图像场景分类中的一个要面临的难题。在遥感成像中,由于成像角度、运行轨道高度等传感器因素的影响,同一目标的成像结果可能存在较大差异。不同成像高度下的飞机、储油罐、火电站场景,同一类别的样本之间存在巨大的尺度差异。此外,由于场景本身的原因,场景中对象的大小也可能存在变化,比如河流场景,包含小河、小溪等几个不同的子场景。由此,可以看出重要物体所占区域大小不一且只占整个图像的一小部分,通常被大量无用的特征和无关物体所包围。直观上讲,直接用单个大物体去匹配含有多个小物体的图片,也是不合理的。
技术实现要素:
3.为了解决背景技术中的问题,本发明提出了基于双流结构的小样本遥感图像场景分类方法,通过构建一个全局-局部双流结构实现的,该结构具有全局流网络和局部流网络的两个分支,全局流网络计算整个图片属于某类的概率,局部流网络仅计算最重要的区域所属类别的概率,最后融合两个分支的结果作为最终分类结果。为了定位整个图像中最重要的区域,本发明设计了一种关键区域定位来连接上述两个流,进而减轻目标尺度变化剧烈对模型分类性能的负面影响。
4.为了实现上述目的,本发明采用的技术方案为:
5.一种基于双流结构的小样本遥感图像场景分类方法,包括如下步骤:
6.步骤1,将遥感图像场景分类数据集分为训练集、验证集和测试集;
7.步骤2,基于训练集、验证集和测试集分别构建情景集;
8.步骤3,构建双流结构中的全局流网络,分为深度嵌入模块和度量模块;
9.步骤4,构建双流结构中的局部流网络,将图像样本数据映射到高维空间,并通过度量模块得到分类结果;
10.步骤5,基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型,深度近邻神经网络模型通过关键区域定位方法将全局流网络中注意力图中能量高于阈值的区域映射到原图像中并提取出对应区域,然后输入到局部流网络,并综合使用全局流网络和局部流网络的分类结果得到最终分类结果;
11.步骤6,基于训练集和验证集对应的情景集,对基于双流结构的深度近邻神经网络模型进行训练及验证;
12.步骤7,基于测试集对应的情景集对训练好的基于双流结构的深度近邻神经网络模型进行测试;
13.完成基于双流结构的小样本遥感图像场景分类。
14.进一步的,步骤2所述的构建情景集的具体方式为:
15.2a)对于训练集、验证集和测试集,分别从中随机选取c个类别,每个类别k个样本,将抽取到的样本集合作为支持集s={(si,yi)|i=1,...,c
×
k},其中si表示支持集中的第i个样本,yi表示对应的标签,c和k为设定值;
16.2b)在c个类别中每个类别的剩余样本中,随机选取n个样本得到对应的查询集其中qi表示查询集中第j个样本,表示对应的标签;其中n为设定值;
17.2c)将1个支持集和1个查询集构成1个情景集,分别得到训练集、验证集和测试集对应的情景集。
18.进一步的,步骤3所述的双流结构中的全局流网络包括基于注意力机制的深入嵌入模块f
ψ
(
·
)和度量模块构建方式如下:
19.3a)基于注意力机制的深入嵌入模块f
ψ
(
·
)的构建方式为:
20.将卷积神经网络作为深度嵌入模块,用于深度描述子提取,经过深度嵌入模块提取后的深度特征f
ψ
(x
image
)为一个大小为h
×w×
d的张量,并表示为m个d维的深度描述子的集合:
21.f
ψ
(x
image
)=[x1,x2,...,xm]∈rd×m[0022]
式中,w,h,d分别表示提取特征图的宽度、高度和通道数,m=h
×
w,xi为第i个深度描述子;
[0023]
3b)为深度嵌入模块引入注意力机制,将深度描述子区分为与场景相关部分和不相干部分,即为由深度嵌入模块得到的特征图中的每一个像素点构建一个特征图来完成,具体方式为综合使用挤压激励网络作为基础模块,并使用非局部注意力机制,计算方式如下:
[0024][0025]
式中,σ和δ分别表示relu激活函数和sigmoid激活函数,w
z1
和w
z2
均为全连接权重,分别用于按比例缩减和扩张特征图维度,m表示特征图像素的总数,fg(x
i1
)=wg·
xi,其中wg为权重向量,表示矩阵乘法,fk(x
i1
)=softmax(wk·
xi),其中wk为特征权重;
[0026]
得到每个通道的权重向量[am1,...,am
d1
];其中,d1为特征图的通道数,amb表示第b个通道是否与场景类别相关,如果相关,amb=1,否则,amb=0,根据学习到的特征通道权值向量,进一步得到类别相关的注意力特征图,如下所示:
[0027]
m(x)=sigmoid(∑ambxi)
[0028]
把与场景相关的通道累加起来,然后经过sigmoid函数得到各个像素位置与场景类别相关的注意力特征图;
[0029]
3c)度量模块的构建方式为:
[0030]
通过深度嵌入模块,每个查询图像将得到m个深度描述子,对于每个深度描述符xi,在某个类别c中找到k个最近邻计算对应的xi与之间的相似度,计算方式如下;
[0031][0032][0033]
式中,表示给定的查询图像q与类别c之间的相似度,xi表示查询图像q的第i个深度描述子,m表示深度描述子的总数,对于每个深度描述子xi,本专利基于最近邻方法在类别c找到它的k个最近邻方法在类别c找到它的k个最近邻表示x
i1
在类别c中的第j个最近邻,表示xi的转置,cos(
·
)表示两个向量之间的余弦相似度,m(xi)表示注意力特征图在xi位置处的响应度,k为设定值;
[0034]
最终损失函数为:
[0035][0036]
式中,p
ij
表示查询图像被正确分类的概率,c代表支持集类别的数量,n代表查询集中每一类样本的数量。
[0037]
进一步的,步骤4所述的局部流网络的构建方式为:
[0038]
4a)局部流网络使用resnet作为原型网络;
[0039]
4b)使用resnet中的卷积神经网络作为映射函数,分别将查询集图像和支持集图像样本映射到高维嵌入空间中;
[0040]
4c)基于映射函数得到的高维嵌入空间的特征,使用度量模块计算查询图像样本和支持图像样本的高维特征的相似度;
[0041]
4d)分别比较查询集样本的高维特征与支持集中各个类别图像样本高维特征之间的相似度,相似度最高的类别即为查询样本的分类结果。
[0042]
进一步的,步骤5所述的基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型的方式为:
[0043]
5a)全局流网络与局部流网络之间的桥梁是关键区域定位,关键区域定位用于定位查询图像和支持图像中的关键区域,然后将关键区域上采样到原图像尺寸,输入到局部流网络,关键区域定位分为向量构建和贪婪边界搜索两部分,具体方式为:
[0044]
向量构建,根据场景类别相关的注意力图搜索出能量聚集的区域,即关键性区域,并沿着空间的高度和宽度方向,将注意力图聚合为两个一维结构能量向量:
[0045][0046]
式中,m代表得到的注意力特征图,m(i,j)表示特征图在(i,j)位置处的特征值,h表示总高度,w表示总宽度,vw∈w和vh∈h为沿着高度和宽度方向对m进行求和得到的;
[0047]
贪婪边界搜索,设e
[0:w]
是宽度向量vw中所有元素的能量之和,包含从空间宽
度x1到x2的区域的能量之和,将图像中的关键区域定义为占据面积最小且包含不小于总能量一定比例的区域,量一定比例的区域,表示能量占比的超参数,使用贪婪式边界搜索算法来搜索最关键的区域,分为以下步骤:
[0048]
1)初始化x1和x2;
[0049]
2)迭代调整[x1,x2]的边界,[x1,x2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[x1,x2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止;
[0050]
3)将边界坐标从特征图映射到输入图片,获得对应图片上的坐标,xi=iwxf/w,其中xi为图片上宽度方向的坐标,xf为特征图上的坐标,iw为图片宽度大小,w表示特征图的宽度大小;
[0051]
4)初始化y1和y2;
[0052]
5)迭代调整[y1,y2]的边界,[y1,y2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[y1,y2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止;
[0053]
6)将边界坐标从特征图映射到输入图片,获得对应图片上的坐标,yi=iwyf/w,其中yi为图片上宽度方向的坐标,yf为特征图上的坐标,iw为图片宽度大小,w表示特征图的宽度大小;
[0054]
通过步骤1)-3)得到图像中最关键区域的宽度边界,即[x1,x2],通过步骤4)-6)得到最关键区域的高度边界[y1,y2];
[0055]
5b)分别基于全局流网络和局部流网络的分类结果构建损失函数,将两个损失函数加权求和,基于最终的优化函数对基于双流结构的深度近邻神经网络模型进行优化求解。
[0056]
本发明与现有技术相比具有如下优点:
[0057]
1、本发明针对遥感图像场景分类中场景背景复杂的问题,引入了注意力机制用于区分场景中的与分类有关及无关区域,并引入情景训练方式,解决了小样本遥感图像场景分类问题。
[0058]
2、本发明提出了深度嵌入模型,该模型结合了局部和全局信息,使用局部-全局描述子进行分类,增加了不同类别之间描述子的差异性。
[0059]
3、本发明提出的双流结构具有全局流和局部流的两个分支,全局流计算整个图片属于某类的概率,局部流仅计算最重要的区域所属类别的概率,最后融合两个分支的结果作为最终分类结果。
[0060]
4、本发明提出的基于贪婪算法的关键区域定位方法,将二维搜索转化为两个一维搜索问题,降低了搜索难度。
[0061]
5、本发明提出的关键区域定位方法可以定位出遥感图像中的关键区域,将关键区域提取出的图像上采样到与原图像相同尺寸输入到局部流网络得到分类结果,减轻目标尺度变化剧烈对模型分类性能的负面影响。
附图说明
[0062]
图1为本发明的整体架构图。
[0063]
图2为本发明关键区域定位方法流程图。
[0064]
图3为nwpu-resisc45数据集中的部分样本关键区域定位结果。
具体实施方式
[0065]
以下结合附图对本发明的技术方案和效果做进一步的详细说明。
[0066]
参照图1,一种基于双流结构的小样本遥感图像场景分类方法,包括如下步骤:
[0067]
步骤1,将遥感图像场景分类数据集分为训练集、验证集和测试集3部分;
[0068]
步骤2,基于训练集、验证集和测试集分别构建情景集,具体方式为:
[0069]
2a)对于训练集、验证集和测试集,分别从中随机选取c个类别,每个类别k个样本,将抽取到的样本集合作为支持集s={(si,yi)|i=1,...,c
×
k},其中si表示支持集中的第i个样本,yi表示对应的标签,c和k为设定值;
[0070]
2b)在c个类别中每个类别的剩余样本中,随机选取n个样本得到对应的查询集其中qi表示查询集中第j个样本,表示对应的标签;其中n为设定值;
[0071]
2c)将1个支持集和1个查询集构成1个情景集,分别得到训练集、验证集和测试集对应的情景集。
[0072]
步骤3,构建双流结构中的全局流网络,构建方式为:
[0073]
全局流网络包括基于注意力机制的深入嵌入模块f
ψ
(
·
)和度量模块构建方式如下:
[0074]
3a)基于注意力机制的深入嵌入模块f
ψ
(
·
)的构建方式为:
[0075]
将卷积神经网络作为深度嵌入模块,用于深度描述子提取,经过深度嵌入模块提取后的深度特征f
ψ
(x
image
)为一个大小为h
×w×
d的张量,并表示为m个d维的深度描述子的集合:
[0076]fψ
(x
image
)=[x1,x2,...,xm]∈rd×m[0077]
式中,w,h,d分别表示提取特征图的宽度、高度和通道数,m=h
×
w,xi为第i个深度描述子;
[0078]
3b)为深度嵌入模块引入注意力机制,将深度描述子区分为与场景相关部分和不相干部分,即为由深度嵌入模块得到的特征图中的每一个像素点构建一个特征图来完成,具体方式为综合使用挤压激励网络作为基础模块,并使用非局部注意力机制,计算方式如下:
[0079][0080]
式中,σ和δ分别表示relu激活函数和sigmoid激活函数,w
z1
和w
z2
均为全连接权重,分别用于按比例缩减和扩张特征图维度,m表示特征图像素的总数,fg(x
i1
)=wg·
xi,其中wg为权重向量,表示矩阵乘法,fk(x
i1
)=softmax(wk·
xi),其中wk为特征权重;
[0081]
得到每个通道的权重向量[am1,...,am
d1
];其中,d1为特征图的通道数,amb表示第b
个通道是否与场景类别相关,如果相关,amb=1,否则,amb=0,根据学习到的特征通道权值向量,进一步得到类别相关的注意力特征图,如下所示:
[0082]
m(x)=sigmoid(∑ambxi)
[0083]
把与场景相关的通道累加起来,然后经过sigmoid函数得到各个像素位置与场景类别相关的注意力特征图;
[0084]
3c)度量模块的构建方式为:
[0085]
通过深度嵌入模块,每个查询图像将得到m个深度描述子,对于每个深度描述符xi,在某个类别c中找到k个最近邻计算对应的xi与之间的相似度,计算方式如下;
[0086][0087][0088]
式中,表示给定的查询图像q与类别c之间的相似度,xi表示查询图像q的第i个深度描述子,m表示深度描述子的总数,对于每个深度描述子xi,本专利基于最近邻方法在类别c找到它的k个最近邻方法在类别c找到它的k个最近邻表示x
i1
在类别c中的第j个最近邻,表示xi的转置,cos(
·
)表示两个向量之间的余弦相似度,m(xi)表示注意力特征图在xi位置处的响应度,k为设定值;
[0089]
最终损失函数为:
[0090][0091]
式中,p
ij
表示查询图像被正确分类的概率,c代表支持集类别的数量,n代表查询集中每一类样本的数量。
[0092]
步骤4,构建双流结构中的局部流网络,构建方式为:
[0093]
4a)局部流网络使用resnet作为原型网络;
[0094]
4b)使用resnet中的卷积神经网络作为映射函数,分别将查询集图像和支持集图像样本映射到高维嵌入空间中;
[0095]
4c)基于映射函数得到的高维嵌入空间的特征,使用度量模块计算查询图像样本和支持图像样本的高维特征的相似度;
[0096]
4d)分别比较查询集样本的高维特征与支持集中各个类别图像样本高维特征之间的相似度,相似度最高的类别即为查询样本的分类结果。
[0097]
步骤5,基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型,具体方式为:
[0098]
5a)全局流网络与局部流网络之间的桥梁是关键区域定位,关键区域定位用于定位查询图像和支持图像中的关键区域,然后将关键区域上采样到原图像尺寸,输入到局部流网络,关键区域定位的具体方式为:
[0099]
如图2所示,关键区域定位可以分为向量构建和贪婪边界搜索两部分;
[0100]
①
向量构建,场景类别相关的注意力图可以定量描述图像的每个局描述子的重要性程度,因此可以根据这个注意力图搜索出能量聚集的区域,即关键性区域,由于在二维空间中实现搜索是很复杂的,本发明中沿着空间的高度和宽度方向,将注意力图聚合为两个一维结构能量向量:
[0101][0102]
其中,m代表得到的注意力特征图,m(i,j)表示特征图在(i,j)位置处的特征值,h表示总高度,w表示总宽度,vw∈w和vh∈h沿着高度和宽度方向对m进行求和得到的。
[0103]
②
贪婪边界搜索,设e
[0:w]
是宽度向量vw中所有元素的能量之和,包含从空间宽度x1到x2的区域的能量之和,本发明将图像中的关键区域定义为占据面积最小且包含不小于总能量一定比例的区域,小于总能量一定比例的区域,表示能量占比的超参数,在这个定义的基础上,可以使用贪婪式边界搜索算法来搜索最关键的区域,贪婪式边界搜索算法可以分为以下6个步骤:
[0104]
1)初始化x1和x2;
[0105]
2)迭代调整[x1,x2]的边界,使其能量占比收敛到附近,[x1,x2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[x1,x2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止,本发明贪婪式边界搜索可以快速找到最小但信息量最大的区域;
[0106]
3)将边界坐标从特征图映射到输入图片,由于上述边界的坐标在特征图上,需要获得对应图片上的坐标,xi=iwxf/w,其中xi为图片上宽度方向的坐标,xf为特征图上的坐标,iw为图片宽度大小,w表示特征图的宽度大小。
[0107]
通过以上步骤1)-3)可以得到图像中最关键区域的宽度边界,即[x1,x2]。
[0108]
5)迭代调整[y1,y2]的边界,[y1,y2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[y1,y2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止;
[0109]
6)将边界坐标从特征图映射到输入图片,获得对应图片上的坐标,yi=iwyf/w,其中yi为图片上宽度方向的坐标,yf为特征图上的坐标,iw为图片宽度大小,w表示特征图的宽度大小;
[0110]
通过步骤4)-6)可以得到最关键区域的高度边界[y1,y2]。
[0111]
5b)分别基于全局流网络和局部流网络的分类结果构建损失函数,将两个损失函数加权求和,基于最终的优化函数对基于双流结构的深度近邻神经网络模型进行优化求解。
[0112]
步骤6,基于训练集和验证集对应的情景集,对基于双流结构的深度近邻神经网络模型进行训练及验证;
[0113]
步骤7,基于测试集对应的情景集对训练好的基于双流结构的深度近邻神经网络模型进行测试;
[0114]
完成基于双流结构的小样本遥感图像场景分类。
[0115]
本方法的效果可以通过以下仿真实验进一步说明:
[0116]
1、实验条件与方法
[0117]
1)硬件环境:
[0118]
①
cpu:intel(r)core(tm)i7-7800x cpu@3.50ghz 32gb;
[0119]
②
gpu:nvidia geforce rtx 2080ti 11gb。
[0120]
2)软件环境:
[0121]
①
编程语言:python 3.6;
[0122]
②
深度学习框架:pytorch 1.4.0。
[0123]
3)实验方法:
[0124]
matchingnet、relationnet、maml、meta-sgd、dla-matchnet、dn4、本发明方法。
[0125]
4)数据集:
[0126]
nwpu-resisc45数据集、uc merced数据集、whu-rs19数据集。
[0127]
5)场景分类任务:
[0128]
1)5-way 1-shot任务,即包含支持集中包含5个类别,每个类别包含1张图像;
[0129]
2)5-way 5-shot任务,即包含支持集中包含5个类别,每个类别包含5张图像。
[0130]
6)评价指标
[0131]
top-1的平均准确率,并且给出95%的置信区间
[0132]
2、仿真内容与结果
[0133]
本发明模型的深度嵌入模块选择resnet18网络,输入图像被随机裁剪至224
×
224,进行随机水平翻转、亮度增强、色彩增强、对比度增强等增强。分类模块中搜索的最近邻个数k设置为3。
[0134]
在训练集中构造300000个情景集,训练网络时,采用adam算法,初始学习率设置为0.0001。每隔100000个情景集对学习率进行衰减,在验证集上随机构建600个情景集进行验证,取top-1的平均准确率为当前网络的训练结果,保存指标最高的模型作为最终模型。
[0135]
测试的过程中,在测试集中随机采样构建600个小样本任务,计算top-1的平均准确率,该过程重复5次,取5次测试结果的均值作为最终的测试结果,并给出95%置信区间。本发明模型以端到端方式从头开始训练,不需要在测试阶段进行微调。
[0136]
不同方法在三个数据集上的实验结果见表1-3,表中加粗数字表示最佳结果。从表的实验结果可以看出,无论是5-way 1-shot还是5-way5-shot任务,本发明方法在三个数据集上的准确率都是最高的,这表明本发明方法的分类性能最好,能够有效改善小样本场景下的遥感图像场景分类精度。
[0137]
表1不同方法在nwpu-resisc45数据集上的性能比较
[0138]
方法5-way 1-shot5-way 5-shotmatchingnet54.46%
±
0.77%67.87%
±
0.59%relationnet58.61%
±
0.83%78.63%
±
0.52%maml37.36%
±
0.69%45.94%
±
0.68%
meta-sgd60.63%
±
0.90%75.75%
±
0.65%dla-matchnet68.80%
±
0.70%81.63%
±
0.46%dn466.39%
±
0.86%83.24%
±
0.87%本发明方法73.84%
±
0.80%87.86%
±
0.51%
[0139]
表2不同方法在uc merced数据集上的性能比较
[0140]
方法5-way 1-shot5-way 5-shotmatchingnet46.16%
±
0.71%66.73%
±
0.56%relationnet48.89%
±
0.73%64.10%
±
0.54%maml43.65%
±
0.68%58.43%
±
0.64%meta-sgd50.52%
±
2.61%60.82%
±
2.00%dla-matchnet53.76%
±
0.62%63.01%
±
0.51%dn457.25%
±
1.0179.74%
±
0.78%本发明方法68.12%
±
0.81%88.57%
±
0.52%
[0141]
表3不同方法在whu-rs19数据集上的性能比较
[0142]
方法5-way 1-shot5-way 5-shotmatchingnet60.60%
±
0.68%82.99%
±
0.40%relationnet60.54%
±
0.71%76.24%
±
0.34%maml46.72%
±
0.55%79.88%
±
0.41%meta-sgd51.54%
±
2.31%61.74%
±
2.02%dla-matchnet68.27%
±
1.83%79.89%
±
0.33%dn482.14%
±
0.80%96.02%
±
0.33%本发明方法87.34%
±
0.62%98.25%
±
0.15%
[0143]
为了更直观的展示关键区域定位方法的效果,在nwpu-resisc45数据集的定位结果进行了可视化,如图3所示。从可视化结果可以看出,本发明方法对于场景中的关键区域可以定位的很好,在飞机场景中即使目标大小不一也能够定位出来,其它场景中的尺度略有变化的对象即河流、储油罐、火力发电厂以及车辆区域也能够被准确定位,进而有利于局部流网络的分类。
技术特征:
1.一种基于双流结构的小样本遥感图像场景分类方法,其特征在于,包括如下步骤:步骤1,将遥感图像场景分类数据集分为训练集、验证集和测试集;步骤2,基于训练集、验证集和测试集分别构建情景集;步骤3,构建双流结构中的全局流网络,分为深度嵌入模块和度量模块;步骤4,构建双流结构中的局部流网络,将图像样本数据映射到高维空间,并通过度量模块得到分类结果;步骤5,基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型,深度近邻神经网络模型通过关键区域定位方法将全局流网络中注意力图中能量高于阈值的区域映射到原图像中并提取出对应区域,然后输入到局部流网络,并综合使用全局流网络和局部流网络的分类结果得到最终分类结果;步骤6,基于训练集和验证集对应的情景集,对基于双流结构的深度近邻神经网络模型进行训练及验证;步骤7,基于测试集对应的情景集对训练好的基于双流结构的深度近邻神经网络模型进行测试;完成基于双流结构的小样本遥感图像场景分类。2.根据权利要求1所述的一种双流结构的小样本遥感图像场景分类方法,其特征在于,步骤2所述的构建情景集的具体方式为:2a)对于训练集、验证集和测试集,分别从中随机选取c个类别,每个类别k个样本,将抽取到的样本集合作为支持集s={(s
i
,y
i
)|i=1,...,c
×
k},其中s
i
表示支持集中的第i个样本,y
i
表示对应的标签,c和k为设定值;2b)在c个类别中每个类别的剩余样本中,随机选取n个样本得到对应的查询集其中q
i
表示查询集中第j个样本,表示对应的标签;其中n为设定值;2c)将1个支持集和1个查询集构成1个情景集,分别得到训练集、验证集和测试集对应的情景集。3.根据权利要求2所述的一种基于双流结构的小样本遥感图像场景分类方法,其特征在于,步骤3所述的双流结构中的全局流网络包括基于注意力机制的深入嵌入模块f
ψ
(
·
)和度量模块构建方式如下:3a)基于注意力机制的深入嵌入模块f
ψ
(
·
)的构建方式为:将卷积神经网络作为深度嵌入模块,用于深度描述子提取,经过深度嵌入模块提取后的深度特征f
ψ
(x
image
)为一个大小为h
×
w
×
d的张量,并表示为m个d维的深度描述子的集合:f
ψ
(x
image
)=[x1,x2,...,x
m
]∈r
d
×
m
式中,w,h,d分别表示提取特征图的宽度、高度和通道数,m=h
×
w,x
i
为第i个深度描述子;3b)为深度嵌入模块引入注意力机制,将深度描述子区分为与场景相关部分和不相干部分,即为由深度嵌入模块得到的特征图中的每一个像素点构建一个特征图来完成,具体方式为综合使用挤压激励网络作为基础模块,并使用非局部注意力机制,计算方式如下:
式中,σ和δ分别表示relu激活函数和sigmoid激活函数,w
z1
和w
z2
均为全连接权重,分别用于按比例缩减和扩张特征图维度,m表示特征图像素的总数,f
g
(x
i1
)=w
g
·
x
i
,其中w
g
为权重向量,表示矩阵乘法,f
k
(x
i1
)=softmax(w
k
·
x
i
),其中w
k
为特征权重;得到每个通道的权重向量[am1,...,am
d1
];其中,d1为特征图的通道数,am
b
表示第b个通道是否与场景类别相关,如果相关,am
b
=1,否则,am
b
=0,根据学习到的特征通道权值向量,进一步得到类别相关的注意力特征图,如下所示:m(x)=sigmoid(∑am
b
x
i
)把与场景相关的通道累加起来,然后经过sigmoid函数得到各个像素位置与场景类别相关的注意力特征图;3c)度量模块的构建方式为:通过深度嵌入模块,每个查询图像将得到m个深度描述子,对于每个深度描述符x
i
,在某个类别c中找到k个最近邻计算对应的x
i
与之间的相似度,计算方式如下;之间的相似度,计算方式如下;式中,表示给定的查询图像q与类别c之间的相似度,x
i
表示查询图像q的第i个深度描述子,m表示深度描述子的总数,对于每个深度描述子x
i
,本专利基于最近邻方法在类别c找到它的k个最近邻在类别c找到它的k个最近邻表示x
i1
在类别c中的第j个最近邻,表示x
i
的转置,cos(
·
)表示两个向量之间的余弦相似度,m(x
i
)表示注意力特征图在x
i
位置处的响应度,k为设定值;最终损失函数为:式中,p
ij
表示查询图像被正确分类的概率,c代表支持集类别的数量,n代表查询集中每一类样本的数量。4.根据权利要求3所述的一种基于双流结构的小样本遥感图像场景分类方法,其特征在于,步骤4所述的局部流网络的构建方式为:4a)局部流网络使用resnet作为原型网络;4b)使用resnet中的卷积神经网络作为映射函数,分别将查询集图像和支持集图像样本映射到高维嵌入空间中;4c)基于映射函数得到的高维嵌入空间的特征,使用度量模块计算查询图像样本和支持图像样本的高维特征的相似度;4d)分别比较查询集样本的高维特征与支持集中各个类别图像样本高维特征之间的相
似度,相似度最高的类别即为查询样本的分类结果。5.根据权利要求1所述的一种双流结构的小样本遥感图像场景分类方法,其特征在于,步骤5所述的基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型的方式为:5a)全局流网络与局部流网络之间的桥梁是关键区域定位,关键区域定位用于定位查询图像和支持图像中的关键区域,然后将关键区域上采样到原图像尺寸,输入到局部流网络,关键区域定位分为向量构建和贪婪边界搜索两部分,具体方式为:向量构建,根据场景类别相关的注意力图搜索出能量聚集的区域,即关键性区域,并沿着空间的高度和宽度方向,将注意力图聚合为两个一维结构能量向量:式中,m代表得到的注意力特征图,m(i,j)表示特征图在(i,j)位置处的特征值,h表示总高度,w表示总宽度,v
w
∈
w
和v
h
∈
h
为沿着高度和宽度方向对m进行求和得到的;贪婪边界搜索,设e
[0:w]
是宽度向量v
w
中所有元素的能量之和,包含从空间宽度x1到x2的区域的能量之和,将图像中的关键区域定义为占据面积最小且包含不小于总能量一定比例的区域,定比例的区域,表示能量占比的超参数,使用贪婪式边界搜索算法来搜索最关键的区域,分为以下步骤:1)初始化x1和x2;2)迭代调整[x1,x2]的边界,[x1,x2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[x1,x2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止;3)将边界坐标从特征图映射到输入图片,获得对应图片上的坐标,x
i
=i
w
x
f
/w,其中x
i
为图片上宽度方向的坐标,x
f
为特征图上的坐标,i
w
为图片宽度大小,w表示特征图的宽度大小;4)初始化y1和y2;5)迭代调整[y1,y2]的边界,[y1,y2]区域占据宽度方向的总能量的占比高于或者低于如果高于,[y1,y2]区域沿着能量下降最慢的方向收缩,直到能量占比不高于为止;如果低于,区域沿着能量上升最快的方向扩大,直到能量占比不低于为止;6)将边界坐标从特征图映射到输入图片,获得对应图片上的坐标,y
i
=i
w
y
f
/w,其中y
i
为图片上宽度方向的坐标,y
f
为特征图上的坐标,i
w
为图片宽度大小,w表示特征图的宽度大小;通过步骤1)-3)得到图像中最关键区域的宽度边界,即[x1,x2],通过步骤4)-6)得到最关键区域的高度边界[y1,y2];5b)分别基于全局流网络和局部流网络的分类结果构建损失函数,将两个损失函数加
权求和,基于最终的优化函数对基于双流结构的深度近邻神经网络模型进行优化求解。
技术总结
本发明公开了一种基于双流结构的小样本遥感图像场景分类方法,该方法首先将遥感图像场景分类数据集分为训练集、验证集和测试集3部分;然后基于训练集、验证集和测试集分别构建情景集;然后构建双流结构中的全局流网络;然后构建双流结构中的局部流网络;然后基于全局流网络和局部流网络构建基于双流结构的深度近邻神经网络模型;然后基于情景集对基于双流结构的深度近邻神经网络模型进行训练及验证;然后基于情景集对训练好的基于双流结构的深度近邻神经网络模型进行测试。本发明提出了具有全局流网络和局部流网络的两个分支的双流结构,融合全局流网络和局部流网络的分类结果,减轻目标尺度变化剧烈对模型分类性能的负面影响。面影响。面影响。
技术研发人员:陈彦桥 雷耀麟 刘厦 宗茂 何文志 柴兴华
受保护的技术使用者:中国电子科技集团公司第五十四研究所
技术研发日:2023.06.12
技术公布日:2023/10/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
