基于BP神经网络的东屿岛遥感影像分类
2016-11-14曹兆伟林宁徐文斌卢文虎张孝龙
曹兆伟,林宁,徐文斌,卢文虎,张孝龙
(1.上海海洋大学,上海 201306;2.国家海洋信息中心,天津 300171;3.镇江市气象局,江苏 镇江 212003)
基于BP神经网络的东屿岛遥感影像分类
曹兆伟1,林宁2,徐文斌2,卢文虎2,张孝龙3
(1.上海海洋大学,上海201306;2.国家海洋信息中心,天津300171;3.镇江市气象局,江苏镇江212003)
精准高效的海岛遥感影像分类是充分利用海岛基础资料的有效手段,也是全面掌握海岛基本情况及变化情况、保障海岛保护和开发利用有序进行、实现全国海岛动态监管的重要技术措施。以2008年海南省东屿岛航空遥感影像为数据源,借助ENVI遥感图像处理软件选取训练样本集,通过MATLAB仿真软件构建“3-8-5”的3层BP神经网络分类模型,实现对东屿岛遥感影像的分类。实验结果显示,BP神经网络分类总精度为87.85%,Kappa系数为0.84,与最小距离法分类相比,分别提高5.53个百分点和0.07。实验证明BP神经网络分类方法是一种行之有效且精确度更高的分类方法。
BP神经网络;影像分类;海岛;东屿岛
海岛作为我国沿海第二经济带,是壮大海洋经济、拓展发展空间的重要依托,也是保护海洋环境、维护生态平衡的重要平台,更是捍卫国家权益保障国防安全的战略前沿(吴姗姗等,2013),因此对海岛及其周边海域进行监视监测是一项必不可少的基础性工作。但由于海岛地理位置远离大陆,交通不便,登岛困难,而利用遥感技术则可克服上述不利,因此成为海岛监视监测的主要手段之一。
遥感技术是20世纪60年代初兴起的一门综合性探测技术,遥感影像分类是遥感信息提取的重要手段,发展分类方法提高分类效率和精度更是遥感应用研究的热点(贾坤等,2011)。在目前的遥感图像分类应用中,用的最多的是传统的模式识别分类方法:诸如最小距离法,最大似然法等监督分类法。其分类的结果由于遥感图像本身的空间分辨率以及“同物异谱”,“同谱异物”现象的存在,而往往出现比较多的错分、漏分情况,导致了分类精度不高(段新成,2008),而在处理遥感影像分类过程中,BP神经网络能够很好地适应纹理丰富,含混度高的遥感影像,通过隐含层节点设置,能够较好地解决分类过程中“同质异谱”与“同谱异质”问题(可华明等,2010),且BP神经网络分类算法相比其他统计分类算法具有较强的学习能力,更容易结合遥感、影像的纹理、光谱、坡度、坡向等信息对地物类别信息进行提取(蒋捷峰,2011),所以BP神经网络在遥感影像分类领域得到广泛的应用。
鉴于此,本文利用2008年5月东屿岛航空遥感图像作为数据源,在Matlab 7.0和ENVI 5.0等软件平台支持下,尝试用BP神经网络方法对东屿岛进行影像分类,旨在增加对人工神经网络的认知,提高应用人工神经网络的水平,并为海岛智能化遥感影像分类研究和海岛资源调查等提供技术参考。
1 研究区概况及数据说明
东屿岛位于博鳌港万泉河出海口,隶属海南琼海市博鳌镇,面积1.8 km2。该岛地形独特,从空中俯瞰就像一只缓缓游向南海的“巨鳌”。传说昔日观音大士在此降鳌,鳌之原身化为美丽的东屿岛。东屿岛四周河水环绕,是一个水中有岛、岛中有水、波光错落、景色秀丽的岛屿。岛上有广阔的高尔夫球场,超五星级的索菲特大酒店,亚洲论坛博物馆11个区,以及按五行八卦原理建造的好运台,是“博鳌亚洲论坛”永久会址所在地。
本次研究使用的数据为两景相邻航空图像镶嵌而成,其获取时间为2008年5月9日,地理坐标为19.13°N-19.15°N,110.56°E-110.58°E,其包括红、绿、蓝3个基本波段。为研究简便将其空间分辨率重采样为2 m,经过裁剪掩膜后,图像大小为801×902个像素的tiff格式文件(图1)。影像质量良好,有少量云影,较清楚反映了该岛自然现状和开发利用情况。
2 BP神经网络设计
图1 东屿岛航空遥感影像
人工神经网络(Artificial Neural Network,简称ANN)是对生理学上的真实人脑神经网络的结构和功能,以及若干基本特征的某种理论抽象、简化和模拟而构成的一种信息处理系统。人工神经网络有多种网络模型,但目前应用最广,基本思想最直观,最容易被理解,到现在为止在遥感影像分类中应用最多的是多层前馈网络及误差反向传播的学习算法(Error Back Propagation),简称BP神经网络(贾永红等,2001)。
BP神经网络算法基本思想是把学习过程分成信息的正向传播和误差的反向传播两个过程。首先输入层单元接受来自外界的输入信息,然后经过隐含层单元处理后,最后传递给输出层单元并产生一个输出模式,完成一次学习的正向传播过程,这个过程是逐层状态的更新。当实际输出模式与期望输出模式不符时,进入误差反向传播阶段,网络沿连接通路将误差值逐层传送,并按误差梯度下降的方式对各层结点间的连接权值进行修正调整。通过周而复始的信息正向传播和误差反向传播不断调整网络的权值和阈值,使网络输出误差减少到可以接受的程度。BP神经网络设计一般包括输入层、隐含层和输出层节点数的确定,隐含层层数的确定。
2.1输入层和输出层节点数的确定
BP神经网络的输入层和输出层节点数的确定需根据实际情况具体考虑。本实验中输入的数据为航空影像,有3个波段,因此输入层节点数为3。输出层节点数根据分类地物的类型数目确定。本实验中,根据人工目视解译和东屿岛地理特征将遥感影像简要分为草地、建筑物、林地、水体、沙地(高尔夫球场的白沙子)5大类别,由于道路用地斑块面积小,本研究不将其作为分类类型,因此输出层神经元个数为5个。
2.2隐含层节点数的确定
关于隐含层神经元个数的确定目前仍没有一个确切的数学公式来求解,隐含层神经元个数往往需要多次试验才能确定(李源泰,2010)。隐含层的节点数太少,网络不能得到充分地训练,训练时间短,训练精度不高;隐含层的节点数太多,则容错性差,导致计算量增加。隐含层节点数的初始值可先由公式N=(A×B+0.5A×(B2+B)-1)/(A+B)(毛建旭等,2001)来确定,其中A为分类数量,B为特征向量维数。初始值选好后通过不断增加或减少神经元个数来确定最优的神经网络分类模型,本研究经过多次实验确定隐含层使用8个节点数。
2.3隐含层层数的确定
BP网络有一个重要的结论:对于任何在闭区间内的一个连续函数,都可以用具有一个隐含层的BP网络来逼近,因而一个3层BP网络可以完成任意的n维到m维的映射(飞思科技产品研发中心,2003)。所以本研究中取单隐层BP神经网络,即3层BP神经网络,其拓扑结构如图2所示。
图2 3层BP神经网络拓扑结构图
3 BP神经网络遥感影像分类的实现
本实验以MATLAB为平台编程实现BP神经网络对遥感影像的自动分类。MATLAB是用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境的数学软件,其中人工神经网络工具箱是应用最为广泛的软件包之一(李燕,2012)。分类实现主要步骤包括:训练样本的选取,网络的创建、训练和仿真,影像自动分类和结果输出。
3.1训练样本的选取
神经网络训练至关重要的一步是训练样本的选取,它直接关系到最后影像分类的精度,是神经网络在遥感影像分类应用中的重要研究内容。训练样本的选取既要保证样本的典型性和代表性,又要保证神经网络训练能得到收敛。本实验训练样本的选取采用非像元去除法(都业军,2008)。该方法通过剔除感兴趣区域周围的非样本像元,在输入网络训练之前再处理所有波段值为0的像元从而获得大量纯净的训练样本。
在ENVI平台上进行训练样本选取,利用ENVI的ROI TOOLS选取东屿岛范围内各个地类特征最为明显的区域,将每类ROI区域分别裁剪出来作为训练样本(图3)。由于选取的ROI区域不一定是矩形,但输入到MATLAB的数据必须是矩形,必须要对非样本区域用0值掩膜,又因为0值像元会对网络训练造成影响,所以用非像元去除法去掉0值掩膜的像元。
图3 东屿岛训练样本
3.2网络的创建、训练和仿真
本实验利用MATLAB的ANN工具箱中newff函数创建一个BP人工神经网络,隐含层的传递函数采用tansig,输出层的传递函数采用purelin,网络训练函数采用trainlm。
BP神经网络创建好后将训练样本输入网络中进行训练,但样本图像数据不能直接输入到网络中,需要对图像数据进行降维、归一化等预处理工作。在MATLAB中可以采用imread函数将彩色图像可以分解成RGB 3个灰度向量。
将降维后的图像变为双精度一维向量形式,并归一化到 [-1,1]之间,此过程采用im2double和reshape函数实现。将其余训练样本进行同样的数据预处理后组合成3行n列的输入矩阵,其过程如图4所示:
图4 图像降维过程
本实验将东屿岛影像分为5类地物,目标矩阵则为5行n列的单位矩阵,每一行对应一类地物,其形式为:
T=[10000%草地
01000%建筑物
00100%林地
00010%水体
00001]%沙地
输入矩阵和目标矩阵确定后即可进行网络训练,其过程如图5所示。
图5 网络训练过程
网络训练的目的在于求出能满足目标要求的权矩阵,通过该权矩阵实现原影像的智能分类。在MATLAB中采用train函数进行网络训练,代码为:net=train(net,P,T),其中P,T分别为输入矩阵和目标矩阵。此外,在网络训练前相关配置参数如下:
net.trainParam.show=10;
%每训练10次显示一次
net.trainParam.epochs=200;
%最大训练次数为200
net.trainParam.lr=0.02;
%网络学习速率0.02
net.trainParam.mc=0.85;
%动量因子为0.85
net.trainParam.goal=0.045;
%期望误差为0.045
其中学习速率是决定每一次循环训练中所产生的权值变化量,学习速率不能设置过大,否则会导致网络不稳定,也不能设置过小,会增加训练时间。通常在0.01-0.1值中选择,本文根据训练情况学习速率选择0.02值。
引入动量因子是为了增加网络的稳定性防止振荡,其值一般在0-1之间,经过实验本文中动量因子参数为0.85值。
期望误差的选取同样根据实际情况,期望误差如果设置过大,网络往往得不到充分训练,影响分类的精度,如果设置过小,网络收敛速度慢。本实验选取几个不同的期望误差进行训练对比,最后确定期望误差值为0.045。
经过网络参数配置后,本实验网络训练收敛情况如图6所示。
图6 BP神经网络训练收敛情况
图6横坐标为训练次数,纵坐标为误差值,黑色直线为期望误差,从图中可以看出网络在训练50次误差值为0.048,逐渐收敛,达到了训练的要求。网络训练结束后,将待分类的影像同样经过降维、归一化等预处理工作后输入到网络中用sim函数进行仿真,代码为:Y=sim(net,X),其中net为训练好的网络,X为待分类的影像,Y为输出数据。
3.3影像自动分类和结果输出
仿真结束后,Y输出数据是一个5行801×902列矩阵,即每一列向量对应一个仿真的像元,其中最大值所在行数即为该类别数,将类别数组成的行向量转化成原影像同样大小的矩阵就可以以图片格式输出,输出数据是只有5个灰度值的栅格图(图7)。
图7 东屿岛仿真栅格图
输出的灰度图用ENVI提供的决策树分类算法为其配色可以得到直观性强的分类图,结果如图8。
图8 BP神经网络分类结果图
4 分类精度比较
精度评价是图像分类后的一项重要工作。通过精度分析,分类者能够确定分类模式的有效性,改进分类模式,提高分类精度;使用者能够根据分类结果的精度,正确、有效的获取分类结果中的信息。
ENVI提供了包括分类结果叠加、混淆矩阵和ROC曲线等方法。比较两幅图像中地类的一致性是精度评价最好方法,一般情况下,只能通过采样的方法对地类像元的一致性进行检查,因为不可能对所有的像元进行检查。通过抽取一定数量的像元,也是可以反映整体图像的分类质量的。本实验采用混淆矩阵中的地表真实感兴趣区验证方法评价遥感影像分类精度。验证样本可以通过野外实地调查,也可以在高分辨率图像上,通过目释解译获取各个分类的地表真实感兴趣区(邓书斌,2010)。鉴于研究区航空影像源数据空间分辨率为1 m,结合东屿岛的文字图片资料,在影像上选取7 578个像元作为验证样本,连同5 033个训练样本每类具体数量如表1。因影像上少量云影,为了对分类结果和其他方法进行有效的精度分析,验证样本选取有把握的区域(图9)。
图9 东屿岛验证样本
表1 训练样本数和验证样本数统计表
本实验利用传统监督分类的分类方法与基于人工智能的人工神经网络方法在分类精度上进行验证比较。在ENVI中分别实施最小距离分类和最大似然分类,为保证对比的客观性,最小距离分类法和最大似然分类法使用与BP神经网络分类法相同的训练样本和验证样本,最小距离分类和最大似然分类结果分别如图10、11所示。
图10 最小距离分类结果图
图11 最大似然分类结果图
将BP神经网络、最小距离和最大似然3种方法的分类结果图分别与验证样本进行混淆矩阵计算,混淆矩阵是通过将每个实测像元的位置和分类与分类图像中的相应位置和分类相比较计算的,对角线的数值为正确被分类的像元数,而非对角线的数值为被错误分类的像元数。表2、表3和表4分别为最小距离、最大似然和BP神经网络分类的混淆矩阵(行为实际的地物类别,列为分类的地物类别)。
表2是采用最小距离法分类的混淆矩阵,这种分类方法的总精度为82.32%,Kappa系数为0.76。其中水体抽样样本为2 012个像元,有1 554个像元被正确分类,458个像元则被混分类为林地,分类精度为77.24%,同样草地、林地、建筑物和沙地(高尔夫球场的白沙子)分类精度分别是89.29%、92.63%、100.00%、0.00%。从数据可以看出只有林地的识别精度较高,而建筑物和沙地(高尔夫球场的白沙子)则错误分类严重,491个沙地的抽样样本像元全部错分类为建筑物,主要原因在于两者的光谱具有很大的相似性。由此看来,最小距离法对于东屿岛航空影像的分类结果不能令人不满意。
表2 最小距离分类混淆矩阵
表3 最大似然分类混淆矩阵
表4 BP神经网络分类混淆矩阵
表3是采用最大似然分类的混淆矩阵,除林地、建筑物与其他地物存在不同程度的混分,其余地物分类精度均比较好,特别是对草地、水体的识别精度很高。分类总精度和Kappa系数较最小距离法均有了一定的提高,分别为87.37%和0.83。
运用BP神经网络对东屿岛影像进行分类的混淆矩阵如表4,从表中可以看出分类质量良好,分类总精度为87.85%,Kappa系数为0.84。草地和水体分类效果较好,而建筑物和其他地类的混淆现象仍然存在,除建筑物和沙地(高尔夫球场的白沙子)光谱特性相似原因外,这两类地物在东屿岛的面积较小,不太容易选取合适的训练样本。
从3种分类方法的混淆矩阵对比可以看出,BP神经网络在总精度和Kappa系数上均要优于传统监督分类的方法。对于建筑物和沙地这两类地物,由于两者光谱特征相似,最小距离分类法无法将其分类。此外,原影像上有少量云影,通过目释可以发现传统监督分类的方法错将云影分类为建筑物,最大似然分类法表现尤为明显,而BP神经网络分类除厚云层外,基本能正确分类。这均依赖于BP神经网络智能算法的优越性,BP神经网络算法通过对样本的学习,不断训练来对结果进行无限逼近,而传统的分类方法则是假定概率分布的一种基于统计学的方法,因此从分类效果对比,BP神经网络分类要优于最小距离分类。
5 结论与展望
本文在对BP神经网络算法研究的基础上,以东屿岛航空影像为数据源,在MATLAB软件平台上实现对该海岛影像的分类,并将分类结果和最小距离分类的结果进行比较。比较结果表明BP神经网络分类结果要优于最小距离分类结果,该算法提高了东屿岛航空影像分类的总精度。本实验说明对于海岛航空影像而言BP神经网络分类更为行之有效,可为海岛航空影像数据的深入分析提供一种应用途径(徐文斌等,2013)。
就海岛航空影像分类而言,如能有确定隐含层神经元数目的有效方法,或选择更合理的训练样本,分类精度可能会进一步提高,因此在实际应用中有待于进一步改进该算法。遥感影像的智能分类算法和基于流程自动化的影像智能分类处理平台应是海岛影像解译工作今后的发展方向,通过大规模的智能高效分类,为管理决策部门动态掌握海岛基本情况和变化趋势提供技术支撑,进而促进海岛保护和开发利用活动有序进行。
邓书斌,2010.ENVI遥感图像处理方法.北京:科学出版社.
都业军,2008.人工神经网络在遥感影像分类中的应用与对比研究.内蒙古师范大学.
段新成,2008.基于BP人工神经网络的土地利用分类遥感研究.北京,中国地质大学.
飞思科技产品研发中心,2003.MATLAB6.5辅助神经网络分析与设计.北京:电子工业出版社.
贾坤,李强子,田亦陈,等,2011.遥感影像分类方法研究进展.光谱学与光谱分析,31(10):2 618-2 623.
贾永红,张春森,王爱平,2001.基于神经网络的多源遥感影像分类.西安科技学院学报,3(1):58-60.
蒋捷峰,2011.基于BP神经网络的高分辨率遥感影像分类研究.北京,首都师范大学.
可华明,陈朝镇,2010.基于MATLAB的GA-BPNN遥感图像分类.西南科技大学报,3(13):55-57.
李燕,2012.基于神经网络的遥感图像识别算法.测绘与空间地理息,2(35):156-158.
李源泰,2010.基于人工神经网络的遥感影像分类研究.昆明理工大学.
毛建旭,王耀南,2001.基于神经网络的遥感图像分类.测控技术,20(5):29-32.
吴姗姗,刘智训,2013.关于海岛生态整治修复及保护项目的思考和建议.海洋开发与管理,4:9-12.
徐文斌,林宁,卢文虎,等,2013.基于最大似然法的钓鱼岛航空遥感监视监测信息提取.海洋通报,32(5):548-552.
(本文编辑:袁泽轶)
Classification of the remotely sensed image for the Dongyu Island based on back-propagation neural network
CAO Zhao-wei1,LIN Ning2,XU Wen-bin2,LU Wen-hu2,ZHANG Xiao-long3
(1.Shanghai Ocean University,Shanghai201306,China;2.National Marine Data and Information Service,Tianjin 300171,China; 3.Zhenjiang Meteorological Service,Zhenjiang 212003,China)
It is necessary to classify island remote sensing images efficiently and accurately for making full use of the island basic data,grasping the basic situation and changes of islands,ensuring the island protection and exploitation in an orderly manner and achieving the effective dynamic regulation of all the islands.In this paper,the aerial remote sensing image of the Dongyu Island of Hainan province in 2008 was used to build the"3-8-5"three-layer BP neural network classification model by MATLAB software and training samples were selected by ENVI software.The model was applied to obtain the classification of the remotely sensed image for the Dongyu Island.The results show that this BP neural network classification method provides a more effective classification technology for the island remotely sensed image and improves the accuracy of classification.The overall accuracy of the BP classification is 87.85%,and the Kappa coefficient is 0.84.It means the total classification accuracy is increased by 5.53 percentage and the Kappa coefficient is increased by 0.07 compared with those from the Minimum Distance method.
back-propagation neural network;classification of remotely sensed images;island;Dongyu Island
TP75
A
1001-6932(2016)05-0587-07
10.11840/j.issn.1001-6392.2016.05.013
2015-08-03;
2015-11-02
曹兆伟(1987-),男,硕士研究生,主要从事数字图像处理研究。电子邮箱:caozhaowei@live.com。