一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种融合栈式自编码网络与CNN的高光谱影像分类方法

2022-12-13 19:50:56 来源:中国专利 TAG:

一种融合栈式自编码网络与cnn的高光谱影像分类方法
技术领域
1.本发明属于高光谱遥感影像处理及应用领域,更进一步涉及高光谱遥感领域中的地物分类的方法。本发明可以在仅使用光谱信息的前提下,实现较优的地物分类效果,将传统高光谱遥感影像处理方法中的“先降维,后分类”的处理流程进行简化,在一个网络中同时实现高光谱遥感影像的降维与分类操作,在一定程度上提高了高光谱遥感影像分类工作的效率。在给定的数据集中,实验表明采用融合栈式自编码网络与cnn的算法可以在高光谱影像分类工作中得到较高的精度。


背景技术:

2.在多光谱遥感技术基础上,高光谱遥感成像技术将传统的二维成像技术与光谱遥感技术相结合,使得高光谱遥感图像光谱分辨率获得了突破性提高。传统的多光谱扫描仪,往往只能记录个别离散的波段信息,由于波段数量少,地面特征的可分辨性相对较低,而高光谱遥感成像光谱仪可以记录数百个波段信息,而且每个像素都可以产生一条连续的光谱维曲线。高光谱遥感在获取图像的光谱特征信息时还可以获取图像的几何空间信息,将目标辐射的光谱信息和空间信息融合于一体,形成三维数据图像立方体。
3.高光谱遥感影像中丰富的光谱信息能够极大地提升高光谱遥感影像的分类精度,但丰富的光谱信息往往伴随着数据维数高,数据冗余,运算、存储、处理困难的问题,同时易受噪声的影响,其中hughes现象会严重影响高光谱影像处理的效果。高光谱影像的成像技术不断发展与成熟,但与之匹配的高光谱影像数据的处理方法手段却相对落后,高光谱影像数据不能被充分的使用,因此充分利用高光谱数据中的有效信息,减少数据计算的复杂程度,优化分类器的性能,有着重要的研究意义。国内外学者致力于从不同方面探索高光谱影像信息降维处理、特征提取及分类方法,追求更快速更有效地提取关键信息并实现精准分类。
4.为了提高高光谱影像分类的精度,应当选择合适的降维方法,尽可能将hughes现象的影响减少到最低。完成数据降维工作后,应选择合适的分类器完成分类任务。在很长一段时间里pca、ica、lda降维算法配合svm、随机森林等分类算法在高光谱影像分类领域占据着重要的位置。该类方法运算速度快,但是运算精度较低。在仅对光谱信息进行处理的基础上,空间信息的加入使这类传统算法的分类精度得到较高的提升。空谱合一的降维方式,配合传统机器学习分类器,在高光谱影像分类的工作中取得了较好的效果。
5.随着深度学习研究的发展,深度网络可以提取不同层次的特征,在图像、语音处理等方面均取得了较好的效果。有很多研究学者将深度学习引入到高光谱影像分类的研究中,分类精度得到了较高的提升。yushi chen等使用深度置信网络(dbn)方法,对高光谱影像进行分类,较好地改善了分类效果。wei hu等人首次将卷积神经网络(cnn)引入高光谱影像分类的研究过程中,也较好地提高了分类精度。
6.无论是使用传统机器学习方法还是基于深度学习的方法对高光谱影像遥感进行分类研究,都要首先进行降维操作。在基于深度学习的方法中,一般操作是使用pca、lda等
算法对高光谱影像进行降维,然后将降维后的影像送入深度网络中进行分类。除了pca、lda方法之外,基于深度学习的自编码器网络(autoencoder),通过深度网络结构,将较浅层输出作为更深层的输入,最终学习到数据的内在特征,也能够实现降维效果,和pca效果类似。戴小爱等人将自编码器引入高光谱影像分类的工作中,取得了较好的效果。邢晨等人将卷积自编码网络引入高光谱影像分类的工作中,通过使用卷积的方式,一次性实现了空谱合一的降维操作,使得深度网络的分类得到了更好的提升。
7.在以上叙述的方法中,不论是使用pca、lda等方法还是使用autoencoder方法,高光谱影像降维过程与使用深度网络进行分类的工作是割裂开的,工作流程复杂,且降维后的特征并不一定适用于目标分类。为了解决这个问题,张国东等人提出了使用栈式自编码网络对高光谱影像进行分类的方法。栈式自编码网络是基于自编码网络的深度结构,它将普通自编码网络进行栈式连接,通过深度结构提取信息,实现更好的降维效果。此外,张国东等人将栈式自编码器与softmax分类器进行融合,通过微调(fine-tuning)过程,基于误差反向传播的模式,将分类器结果同时作用于分类器和栈式自编码网络,使得自编码网络随着训练过程的增加,降维效果更加适用于分类工作,从而提高分类精度,简化高光谱影像分类的工作流程。
8.上述的方法中,大部分都是都遵循着“先降维,后分类”的传统工作流程,一般先对高光谱数据进行整体降维,再将降维后的数据使用分类器进行分类,降维过程与分类过程割裂,降维后的特征并不一定适合于分类器进行分类。张国东等人提出的方法虽然在一定程度上简化了工作流程,但是分类器结构简单,导致实际分类效果并不理想。


技术实现要素:

9.本发明针对高光谱遥感影像分类方法,发明了一种融合栈式自编码与cnn的高光谱遥感影像分类算法。具体是结合栈式自编码网络(stacked-autoencoder,sae),首先对自编码网络进行简单的预训练,使得栈式自编码网络能够较好地表征高光谱遥感影像单个像素点上地高维数据特征,避免在直接使用高维原始数据过程中出现“hughes现象”,随后将栈式自编码网络中地编码网络与设计的多分支cnn网络进行连接并训练,在训练过程中通过微调(fine-tuning)来优化网络参数,提高网络分类精度。
10.为了实现上述目的,本发明的主要步骤如下:
11.(1)输入波段为s,大小为n1
×
n2的高光谱遥感影像数据;
12.(2)对原始的高光谱遥感影像数据进行3
×
3高斯滤波;
13.(3)计算原始高光谱遥感影像的均值与标准差,对原始高光谱遥感影像数据进行z-score标准化;
14.(4)获取标准化的高光谱遥感影像,随机选择训练样本
15.1.在标准化的高光谱遥感影像中随机抽取m个像素点的无监督训练样本,获得大小为m
×
s的无监督训练样本矩阵[d];
[0016]
2.结合地面真值图信息,对无监督训练样本矩阵[d]添加标签信息;
[0017]
(5)构建降维至l维的sae网络,采用逐层贪婪训练策略,将无监督训练样本矩阵[d]进行逐层训练,得到预训练的sae网络;
[0018]
(6)提取预训练sae网络的编码网络,将编码网络与设计的cnn网络进行相连;
[0019]
(7)使用步骤(4)选取的样本,结合添加的标签信息,对网络进行整体训练,网络内部可以通过整体训练实现微调(fine-tuning),编码网络与cnn网络互相调整,改善分类性能;
[0020]
(8)使用训练完成的网络对整体数据进行预测,输出分类后的农作物分布图。
[0021]
本发明与现有的技术相比,具有以下优点:
[0022]
本发明提出了一种高光谱遥感影像分类的新方法,首先对数据进行预滤波与标准化,结合栈式自编网络完成预训练,使得编码器网络能够拥有强大的低维特征表征能力,随后连接cnn网络,完成融合网络的搭建,采用微调(fine-tuning)的方法,使得编码器网络的特征提取效果更加适合分类网络完成分类工作,提高分类精度,改善整个网路的性能。从总体来看,只需要简单的预训练即可使自编码器拥有强大的低维特征表征能力,运算复杂度并未出现较大程度的提高,高光谱遥感影像中高维的光谱数据在融合网络一次性完成了数据降维和数据分类。此外,栈式自编码器的无监督预训练与整体网络调优采用同一套数据集,解决了大范围遥感数据真实地物标签获取困难的问题,在训练样本数目较少的情况下仍能取得较好的分类效果。对比之前的方法,改进了工作流程,提高了分类精度。
附图说明
[0023]
图1本发明的流程图
[0024]
图2自编码器的结构图
[0025]
图3栈式自编码网络逐层贪婪算法流程图
[0026]
图4融合网络结构图
[0027]
图5分类结果图
具体实施方式
[0028]
下面结合附图对本发明做进一步的描述
[0029]
参考附图1,本发明的具体实施步骤如下:
[0030]
以pavia university数据集为例,pavia university数据集由rosis成像光谱仪在意大利的帕维亚城的上空拍摄所得。对应的观测场景中包含了玉米地、休耕地等九种地物类别,整个数据集一共包含了103个有效光谱波段信息,其空间分辨率均为1.3mm,图像大小为610
×
340,共有2207400个像素点,其中42276个像素点已经进行了标注。
[0031]
步骤1,高光谱遥感影像数据预处理
[0032]
(1)先将高光谱遥感影像数据整体导入,生成一个数据矩阵[d]。该矩阵共有n1
×
n2
×
s个元素,其中n1和n2表示该影像在二维平面上纵向和横向的像素点个数,s表示高光谱遥感影像数据的波段数。
[0033]
(2)将读入的数据进行3
×
3的高斯滤波,对原始数据进行预处理,去除图像信号中常见的高斯噪声。
[0034]
(3)计算数据矩阵[d]的总体均值与总体标准差,进行z-score标准化,具体实施方法如下:
[0035]
数据矩阵[d]的均值可以表示为
[0036][0037]
数据矩阵[d]的总体标准差可以表示为
[0038][0039]
数据矩阵[d]的z-score标准化可以表示为
[0040][0041]
步骤2,随机选取训练样本
[0042]
结合地面真值标签,以像素(光谱维度)为单位,对每一类样本进行5%比例的随机选取,并按照列向量进行排列,形成一个大小为s
×
(n1
×
n2
×
0.05)的样本矩阵[s],配合选中像素的地面真值标签,可以得到监督训练样本矩阵[tr]。
[0043]
步骤3,预训练sae网络
[0044]
(a)构建单层自编码器
[0045]
sae(stacked-autoencoder,栈式自编码网络)网络由多个ae(autoencoder,自编码器)栈式连接而成。ae是一种尽可能使输入等于输出的无监督学习网络,单层的ae结构图如图2所示,共有三层网络结构,根据功能可以分为编码器(encoder),解码器(decoder)两部分组成。自编码器具有较好的低维特征表征能力,能够对原始数据进行特征抽取,尽可能使得自编码器的输出接近于输入。输入数据通过反向传播算法(back propagation,bp)由编码器函数y=f(wyx by)和解码器函数z=g(wzy bz)进行训练,其中{wy,wz}为权重矩阵,{by,bz}为偏置系数,{f(
·
),g(
·
)}为激活函数,本发明中激活函数均采用sigmoid函数,sigmoid函数的表达形式如下:
[0046][0047]
自编码网络的训练可以概括为通过不断地训练参数{wy,wz}与{by,bz}来最小化损失函数,本发明中使用的损失函数为均方误差(mean square error,mse)。设定自编码器的输入为y,实际输出为根据自编码器的特点可知,期望输出与自编码器输入相同,即为y,由此可知均方误差可以表示为
[0048][0049]
(b)无监督训练sae网络
[0050]
普通的单层自编码器虽然能够实现降维,但是深度结构的缺失使得其特征提取能力并不强大,因此需要引入深度结构,即栈式自编码器sae。但是深度结构带来的后果是梯度调节困难,靠近输入层的隐层可能会出现梯度消失的现象,不利于网络的参数学习,因此引入了贪婪式逐层训练算法。贪婪式逐层训练算法是将上一层的自编码器的隐含层作为下一层的输入,依次连接创建多层的网路结构。对于给定输入数据x,经过第一层稀疏自编码器训练,得到隐含层特征h1,然后将该特征作为下一层自编码器的输入,得到输入数据的第2层表示,依次重复这种训练,可以得到更深层次的特征提取,如附图3所示,本发明采用了
四层稀疏自编码网络进行降维,网络神经元参数设置为x-220-64-32-24,实现对x维的光谱信息降维到24维。附图3为栈式自编码网络的逐层贪婪训练算法流程图。
[0051]
逐层贪婪式训练的过程由于结构简单,因此训练较为迅速,只需要较少的步数就可以实现收敛,使得误差函数较小,因此对于无监督训练,一般不需要较多的次数。
[0052]
步骤4,构建融合网络
[0053]
提取预训练sae网络中的编码网络,将其连接到cnn网络中。本实验提出了一种三分支一维cnn网络,由一个1
×
5卷积核分支、一个1
×
1卷积核分支、一个由两个1
×
3卷积组成的分支构成。本发明中充分考虑了相邻范围内光谱信息的相关性,此外也兼顾了大范围内光谱的联系以及单独像素点的信息。融合网络的结构如附图4所示。
[0054]
步骤5,训练网络
[0055]
对于构建好的融合网络,使用步骤2中得到的训练样本矩阵[tr]训练整个网络。在训练网络的过程中,由于sae网络经过了较好的预训练,因此能够在与cnn网络连接处提取输入数据的低维特征,方便cnn网络更好地进行分类,与此同时cnn网络通过误差反向转播,进一步改善sae网络的参数,使得sae网络的降维效果更加适用于cnn网络进行分类,从而通过训练实现整个网络的微调(fine-tuning)。训练过程中采用的误差函数为交叉熵损失函数(categorical cross entropy),当网络预期输出以热键(hot-key)形式给出时,交叉熵函数的表示如下,其中yi为网络的预期输出,pi为经softmax处理后的实际输出,n为总体类别数。
[0056][0057]
在训练的过程中,预训练采用的损失函数为均方误差损失函数(mean square error),采用的优化器为adam,学习率设定为0.001;整体训练采用损失函数为交叉熵损失函数(categorical cross entropy),采用的优化器为adam,学习率设定为0.0001。预训练阶段采用较大的学习率,用于加速网络的收敛,节约预训练的时间。在整体训练的过程中,采用较小的学习率,让网络参数均得到最优解,使“微调”效果更好。
[0058]
步骤6,输出分类结果
[0059]
采用训练好的网络,将矩阵[d]输入网络进行预测,进行分类,分类结果如附图5(d)所示。此外附图5(b)为采用栈式自编网络(stacked autoencoder,sae)得到的分类结果,附图5(c)为采用单层一维卷积神经网络的到的分类结果。(注:以上采用的数据集为公开的pavia university数据集)
[0060]
步骤7,分类结果评价
[0061]
对所有的分类结果采用了总体分类精度(overall accuary,oa)和kappa系数进行定性评价。使用本发明方法得到的分类精度、栈式自编网络得到的分类精度、单层一维卷积神经网络得到的分类精度如表1所示。(注:以上采用的数据集为公开的pavia university数据集)
[0062]
表1各类算法下的分类精度对比
[0063]
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献