首页> 中国专利> 基于空谱特征与BP神经网络的高光谱图像分类方法

基于空谱特征与BP神经网络的高光谱图像分类方法

摘要

本发明公开了基于空谱特征与BP神经网络的高光谱图像分类方法,涉及图像处理技术领域。首先通过PCA对高光谱图像进行降维处理,获得兼具低维波段和特征显著的光谱信息;通过LBP算法提取高光谱图像的空间纹理信息;最后将光谱信息和空间纹理信息通过串行融合的方式组成高光谱图像的特征向量,并输入BP神经网络中训练分类。将本发明的方法应用于Pavia University、Salinas和Botswana高光谱图像处理,分类精度分别达到了93.67%、98.09%和92.97%。本发明的算法相比较于经典算法KNN和几种性能优越的算法,在总体精度、平均精度和Kappa系数上均有提升,证明了本发明方法的实用性。

著录项

说明书

技术领域

本发明涉及图像处理技术领域,特别是涉及基于空谱特征与BP神经网络的高光谱图像分类方法。

背景技术

高光谱遥感(hyperspectral remote sensing)起源于20世纪80年代,是在成像光谱学的基础上发展起来的一种全新遥感技术,它利用很窄而连续的电子波波段对地物持续遥感探测,为每一个像素提供数十甚至数百个窄波段,从而产生一条完整而连续的光滑曲线。广泛应用于航空航天,遥感科学,生物医学,农业,气象等领域,已成为遥感领域的最前沿技术之一。

高光谱图像分类是高光谱遥感图像处理的重要内容,也是近年来一个热门的研究方向,高光谱图像具有波段多、段间相关性强的特点,容易导致高光谱图像信息冗余,造成维数灾难,难以分类的问题,因此迫切需要高效的降维和分类方法。

发明内容

本发明提供的基于空谱特征与BP神经网络的高光谱图像分类方法,可以解决现有技术中存在的问题。

本发明提供了基于空谱特征与BP神经网络的高光谱图像分类方法,包括以下步骤:

步骤1,读取高光谱图像,对读取的高光谱图像采用PCA主成分分析方法进行降维处理,得到方差贡献率最大的多个主成分,作为高光谱图像的光谱特征,生成相应的光谱特征向量;

步骤2,对每一个波段的高光谱图像均采用LBP局部二值算法提取空间纹理特征,得到LBP纹理特征数据集,再采用PCA主成分分析方法对数据集进行降维处理,得到方差贡献率最大的多个主成分,作为高光谱图像的空间特征,生成相应的空间特征向量;

步骤3,将得到的光谱特征向量和空间特征向量采用矢量叠加的方式进行融合,生成空-谱特征矩阵;

步骤4,将生成的空-谱特征矩阵输入到BP神经网络中训练,进行高光谱地物分类。

本发明中的基于空谱特征与BP神经网络的高光谱图像分类方法,首先通过PCA对高光谱图像进行降维,获得兼具低维波段和特征显著的光谱信息;通过LBP算法提取高光谱图像的空间纹理信息;最后将光谱信息和空间纹理信息通过串行融合的方式组成高光谱图像的特征向量,并输入BP神经网络中训练分类。将本发明的方法应用于Pavia University、Salinas和Botswana高光谱图像处理,分类精度分别达到了93.67%、98.09%和92.97%,在Pavia University中,Sheets类分类精度达到了最高的99.94%,最低分类精度是Bricks类的75.52%;在Salinas中,每个类别的地物分类精度都达到了90%以上,最高是Brocoil-green-weeds-1类的100%,最低是Vinyard-untrained类的90.18%;在样本量较少的Botswana中,同样取得较好的分类效果,最好的是Exposed soils类的100%,最低的是Riparian类的81.51%;本文算法相比较于经典算法KNN和几种性能优越的算法,在总体精度、平均精度和Kappa系数上均有提升,证明了本发明方法的实用性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明中分类方法的流程示意图;

图2为LBP局部二值计算示例;

图3为BP神经网络的模型图;

图4为实验中Pavia University伪彩色影像与真实地物分布;

图5为Salinas伪彩色影像与真实地物分布;

图6为Botswana伪彩色影像与真实地物分布;

图7为不同主成分个数对分类精度的影响;

图8为不同隐含层神经元个数对分类精度的影响。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,本发明提供了基于空谱特征与BP神经网络的高光谱图像分类方法,该方法包括以下步骤:

步骤1,读取高光谱图像,对读取的高光谱图像采用PCA主成分分析方法进行降维处理,得到方差贡献率最大的多个主成分,作为高光谱图像的光谱特征,生成相应的光谱特征向量。

步骤2,对每一个波段的高光谱图像均采用LBP局部二值算法提取空间纹理特征,得到LBP纹理特征数据集,再采用PCA主成分分析方法对数据集进行降维处理,得到方差贡献率最大的多个主成分,作为高光谱图像的空间特征,生成相应的空间特征向量。

步骤3,将得到的光谱特征向量和空间特征向量采用矢量叠加的方式进行融合,具体说就是空间特征向量串行添加在光谱特征向量的末端,生成空-谱特征矩阵。

步骤4,将生成的空-谱特征矩阵输入到BP神经网络中训练,进行高光谱地物分类,最后进行精度评价。

下面就每一个步骤进行详细说明。

步骤1中基于PCA主成分分析的高光谱图像降维,其原理是:首先求出原始高光谱图像的协方差矩阵,用解特征方程计算出协方差矩阵的各特征值,将特征值按照从大到小的顺序进行排列,并求出相应的特征向量。对原始图像用特征向量构成的正交变换矩阵进行线性变换,可得到变换后的图像矩阵,基本上前几个波段就代表了原始高光谱图像的主要信息,有效的压缩了数据量,取得了关键信息,大大降低了数据冗余。

对于维数为L×H×N的高光谱图像据,L和H分别为高光谱图像的宽和高,N为高光谱图像的维数,即波段数。在PCA主成分分析前需要将高光谱图像转换成维数为L×H的观测样本集。

用X=[x

(1)计算高光谱图像的均值矢量μ和协方差矩阵Σ。

其中,μ=[μ

(2)求解协方差矩阵Σ的特征值λ和特征向量T。

(λI-Σ)T=0

其中,I为单位矩阵,令λ

W=[T

正交变换矩阵满足:

WW

(3)高光谱图像线性变换。

Y=W

Y为变换后的图像矩阵。通常图像矩阵中排在前面的几个主成分,即方差贡献率最大的几个主成分包含了高光谱图像的大部分信息,而后面的几个成分主要为含有少量信息的噪声图像。

步骤2中LBP局部二值算法最初由T.Ojala提出,LBP算子定义在3×3的窗口内,以窗口中心像素为阈值,将相邻的8个像素与其进行比较,若周围像素的值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样3×3邻域内的8个点经比较后可产生8位二进制数,通常将其转化为十进制数,即LBP码,共256种,即可得到该窗口中心像素的LBP值,并用这个值来反映该区域的纹理信息。

对任一图像中给定的像素(x

式中,i

其中:

图2为8邻域的LBP局部二值计算示例,图中(a)为给出的3×3窗口,根据前面介绍的LBP取值规则可以得到(b)所示的二值集,其二值编码为(LBP)

步骤4中BP神经网络具有任何复杂的模式分类能力和优良的多维函数映射能力,BP神经网络具有输入层、隐含层和输出层。从本质上说,BP算法就是以网络误差平方为目标函数、采用梯度下降法来计算目标函数的最小值。预测前首先要进行网络训练,通过训练网络具有联想记忆和预测能力。

BP神经网络的训练过程包括以下步骤:

(1)网络初始化。根据系统输入输出序列(P,Q)确定网络输入层节点数o、隐含层节点数l,输出层节点数m,初始化输入层、隐含层和输出层神经元之间的连接权值w

(2)隐含层输出计算。根据输入变量P,输入层和隐含层连接权值w

式中,f为隐含层激励函数,该函数有多层表达形式,使用sigmoid函数可表示为:

(3)输出层计算。根据隐含层输出H,连接权值w

(4)误差计算。根据网络预测输出O和期望输出C,计算网络预测误差e。

e

(5)权值更新。根据网络预测误差e更新网络连接权值w

w

式中,η为学习率。

(6)阈值更新。根据网络预测误差e更新阈值a,b。

b

(7)判断算法迭代是否结束,若没有结束,则返回(2)。

BP神经网络模型如图3所示。

步骤4中,为了评估本发明方法的性能,采用基于混淆矩阵计算的总体精度(Overall Accuracy,OA)、平均精度(Average Accuracy,AA)和Kappa系数作为评价指标。

总体精度(OA)是模型在所有测试集上预测正确的样本个数与总样本数之间的比值。平均精度(AA)是模型对每类的分类精度与数据集总类别数的比值。OA与AA的计算公式如下:

式中,V为类别的种类数,v

Kappa系数一般用于一致性检验,也可以用于衡量分类精度。Kappa计算结果范围为-1~1,但通常Kappa是落在0~1之间,可分为五组来表示不同级别的一致性如表所示:

表1不同Kappa系数对应的分类效果

Kappa系数计算公式如下:

式中,U为用于精度评价的像元总数,v

实验与分析

为了测试本发明方法的可行性,选取当前最常用的高光谱图像分类数据集:PaviaUniversity、Salinas和Botswana。在本实验中,首先对选择的三种高光谱图像数据集进行详细的介绍,然后从主成分维数和隐含层神经元个数两个参数方面来具体分析对于分类效果的影响,最后通过一些传统的方法与本发明提出的方法进行比较进而讨论。

实验数据

Pavia University高光谱图像数据是2003年由ROSIS传感器获取的意大利Pavia大学数据,大小为610×340像素,1.3m空间分辨率,光谱范围为0.43~0.86μm,共有115个波段,实验删除了具有强噪声和水蒸气吸收能力的12个波段,剩余共103个波段用于分类实验,并且提供了同步实测的感兴趣训练区域和测试区域。Pavia University伪彩色影像显示如图4中左侧图像,对应的真实地物分布情况如图4中右侧图像,图中共包含9类地物,包含树(Trees)、沥青道路(Asphalt)、砖块(Bricks)、牧场(Meadows)、沙砾(Gravel)等,其样本类别和样本量如表2所示。

表2 Pavia University数据集样本信息

Salinas数据集是由AVIRIS传感器收集于加利福利亚州萨利纳斯山谷区域。区域覆盖512行、217列,共包含111104个像素,空间分辨率为3.7m,包含224个波段,去除受噪声影响的20个波段,剩下的204个波段数据作为本次实验的数据集。地物类别包含16类,其伪彩色图像如图5中左侧图像,真实地物分布图如图5中右侧图像,每种地物类别及样本信息如表3所示。

表3 Salinas数据集样本信息

Botswana高光谱数据集是由NASA的EO-1卫星上的Hyperion传感器获取的南非博茨瓦纳Okavango三角洲地区的影像,光谱范围0.44-2.5μm,大小为1476×256像素,242个波段,10nm的光谱分辨率。影像经过辐射校正,去除噪音、大气以及水分吸收和重叠波段,剩下共145个波段用于分类实验。Botswana伪彩色影像如图6中左侧图像,对应的真实地物分布情况如图6中右侧图像,图中共包含14类地物,其样本类别和样本量如表4所示。

表4 Botswana数据样本信息

参数设置

在BP神经网络模型中,有很多重要的网络参数,能够直接影响模型的性能,比如学习率,隐藏层神经元的个数,还有输入到模型中的特征向量的维数等。本发明基于空谱特征-LBP与BP神经网络的高光谱空谱联合分类方法的参数主要包含主成分的个数p,BP网络训练中隐含层神经元个数l,学习率和训练误差目标。为了提高实验的精确度和准确性,将每种算法重复十次,将十次实验的分类精度求平均值作为最终结果。学习率影响着网络收敛的速度以及网络是否能够收敛,学习率设置偏小可以保证网络收敛,但是收敛较慢。相反,学习率设置偏大则可能使网络训练不收敛,影响识别效果。根据已有研究,在实验中将Pavia University数据、Salinas数据集和Botswana数据集的学习率分别设置为0.010,0.001和0.010。

首先,本发明通过设置不同梯度的主成分数,通过分类总体精度分析对三个数据集分类结果的影响。不同主成分数对Pavia University数据集、Salinas数据集和Botswana数据集的分类影响如表5、表6和表7所示。

表5 Pavia University数据集参数p对分类精度的影响

表6 Salinas数据集参数p对分类精度的影响

表7 Botswana数据集参数p对分类精度的影响

如图7所示,数据显示不同主成分个数对分类精度的影响。可以观察到,在PaviaUniversity数据集上,随着主成分个数不断增加,总体精度呈现稳定的上升趋势,到主成分个数为15的时候,总体精度达到了94.63%,如表5所示,继续增加主成分个数时,精度会有所下降,最终呈现稳定的趋势。在Botswana数据集上,呈现出和在Pavia University数据集上同样的趋势,当主成分个数达到15的时候,总体精度会达到最高值93.13%,最终呈现稳定的趋势。在Salinas数据集上,随着主成分个数的增加,总体精度缓慢增加,稳定在97%到98%左右,当主成分个数达到20维之后,总体精度达到稳定值98.04%左右,最终趋于稳定。总体来看,当主成分维数选择比较低的时候,对于Pavia University数据集和Botswana数据集影响较大,对于Salinas数据集影响较小一点,当上升主成分维数后,对于三个数据集的总体分类精度都会提升,达到一个可观值,最终趋于稳定。

隐含层神经元的个数也是影响分类精度的一个重要参数,设置梯度为的10的不同隐含层神经元个数l分别为10,20,30,40,50,60下的总体精度和Kappa指标,分析神经元个数l对Pavia University数据集、Salinas数据集和Botswana数据集分类精度的影响。不同隐含层神经元个数对Pavia University数据集、Salinas数据集和Botswana数据集的分类精度影响如表8、表9和表10所示。

表8 Pavia University数据集参数l对分类精度的影响

表9 Salinas数据集参数l对分类精度的影响

表10 Botswana数据集参数l对分类精度的影响

如图8所示,数据显示了不同隐含层神经元个数对分类精度的影响。可以看出,对于Salinas数据集和Botswana数据集上,当隐含层神经元个数选择比较低的时候,如图所示可见对分类精度产生不小的影响,当上升神经元的个数时,可以看见三个数据集的分类精度都趋于一个理想的值。在Pavia University数据集上,随着神经元个数的增加,分类精度稳定浮动在94%左右,当神经元个数达到50时,分类精度达到峰值94.71%,随后趋于稳定。在Salinas数据集上,当神经元个数为10时,总体精度不是很理想,当神经元个数增加到20及以上的时候,总体精度稳定在98%左右,随后趋于稳定。对于Botswana数据集,当隐含层神经元个数从10逐渐增加的时候,分类精度由八十几增加到九十几,最终稳定在92%左右,当神经元个数达到50的时候,分类精度达到了峰值92.69%。经过分析可见,设置合理的隐含层神经元个数对于总体精度也会产生比较大的影响。

为了进一步验证本发明方法的有效性,采用Pavia University、Salinas和Botswana三种数据集进行验证,且本发明采用了三组对比实验将本发明方法与一些密切相关的高光谱分类方法进行了比较。实验数据包含10次实验结果的平均值和标准偏差,OA、AA、Kappa作为分类精度评价指标。

在Pavia University数据集中,从每类地物中随机选取了200个标记像素作为训练样本,在随机选择500个标记像素作为测试样本,训练样本一共1800个,本发明将与三种经典的方法进行对比,包括最近邻分类算法(KNN)、支持向量机(SVM)分类算法和带有多尺度滤波器的深度网络模型(DCNN)。其中,KNN分类算法仅使用光谱信息来分类,近邻数设置为1,SVM分类算法由Pablo Quesada Barriuso提供的libsvmPredict开放接口实现,其中支持向量机(SVM)的惩罚系数参数C值设置为128,高斯径向基核函数的核宽σ值设置为0.125。DCNN采用了批量归一化层优化训练过程,并将批量梯度下降样本大小统一设置为16。本发明所提的方法将经过空谱特征降维处理得到的光谱特征主成分维数设置为15,隐含层神经元的个数设置为30个,学习率设置为0.01。经过对比,本发明提出的方法要明显优于最近邻分类器和支持向量机,与带有多尺度滤波器的深度网络模型相差无几,OA、AA、Kappa分别达到了93.67%、93.90%、92.88%。表11对本发明方法与其他不同算法从OA、AA、Kappa三个方面进行了比较,与传统的分类器KNN和SVM相比,OA、AA、Kappa都有显著的提升,大部分的地物类别分类精度也相对提高了不少,证明了所提模型的特征提取能力和特征判断能力,与深度网络模型相比,总体精度稍微低于DCNN 0.63%,平均精度提高了4.48%,Kappa系数提高了0.48%,相比较于传统分类器,所提方法能够明显提高分类精度,是因为在提取特征的时候,不仅利用了光谱特征,还提取了高光谱中蕴藏的空间特征,从而提高了算法的特征判断能力,提升分类精度。

表11 Pavia University数据集不同方法下的分类精度(%)

在Salinas数据集中,从每类地物中随机选取200个标记像素作为训练样本,在随机选取500个标记像素作为测试样本,实验结果取十次实验结果的平均值,Salinas数据集不同方法分类精度如表12所示。同样,KNN和DCNN采用和Pavia University数据集相同的预处理和参数设置,SVM中将信噪比设置为50分贝,所提方法将经过PCA降维处理得到的光谱特征主成分维数设置为20维,隐含层神经元个数设置为40个,学习率设置为0.001,此时所提模型达到最优分类效果,OA、AA、Kappa分别达到了98.09%、98.12%、97.96%,相比于传统分类器KNN和SVM与DCNN都有明显的提高,对于噪声较多的Vinyard-untrained类,KNN、SVM和DCNN分类效果都不理想,总体分类精度分别为53.64%、64.20%和74.50%,所提方法通过结合光谱特征与空间特征的方法,提高了地物的判断能力,Vinyard-untrained类的分类精度达到了90.18%,由表可见,本发明的方法对Salinas数据集的全部地物类型的分类效果都达到了90%以上,并且,从标准偏差也可以发现绝大部分的标准偏差都很小,说明分类效果很稳定。

表12 Salinas数据集不同方法下的分类精度(%)

在Botswana数据集中,鉴于数据集中每个地物的数量,Short mopane和Exposedsoils两类的样本量都不足200,所以,随机选取Botswana数据集中每类的90%作为训练样本,剩余的作为测试样本,实验结果同样取十次实验结果的平均值,Botswana数据集不同方法分类精度如表13所示,在本发明所提方法中,将PCA处理得到的光谱特征主成分维数设置为15维,隐含层神经元个数设置为50个,学习率设置为0.010,可以得到最佳的分类效果,OA、AA、Kappa分别达到了92.97%、94.25%、92.47%,由表可见,相比较于传统的支持向量机分类器,OA、AA、Kappa三方面分类精度都有一点提升,但是对于不同预处理和参数设置的KNN和DCNN分类器分类效果还是要优于本发明所提的分类方法,根据该表,类5Reeds1和类6Riparian被错误分类是由于它们在地面上是混合空间分布,此外,类9Acacia woodlands、类10Acacia shrublands和类11Acacia grasslands同样分类精度也没有达到90%,究其原因是这些类的光谱行为非常类似,导致容易互相错分。

表13 Botswana数据集不同方法下的分类精度(%)

本发明提出了一种基于空间特征与光谱特征与BP神经网络模型相结合的分类方法,利用PCA降维来获取高光谱图像的光谱特征,利用LBP算法来获取高光谱图像的空间特征,并将获得的光谱特征与空间特征采用串行融合的方式,得到整个高光谱数据的特征向量,再将融合后的空谱特征向量输入到BP神经网络模型中训练分类,在Pavia University、Salinas和Botswana三种数据集上验证了分类性能,解决了高光谱数据样本量有限,数据大量冗余的问题,相比较于对比算法和参考文献中的分类效果,总体精度(OA)、平均精度(AA)和Kappa系数均有不同程度的提高。本发明方法的重点在于将光谱特征于空间特征结合起来,在后续的研究中,可以继续添加像灰度共生矩阵,颜色形状等不同类型的特征进来,进一步提高特征的判断能力,实现分类精度的进一步提高。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号