马艮寅, 雷程翔, 贺法川, 顾玲嘉, 任瑞治
(吉林大学 电子科学与工程学院, 长春 130012)
随着遥感技术在农业领域的广泛应用, 如何利用遥感影像准确获取农作物信息成为了遥感领域的研究热点。虽然目前国内有些高校的学生已经开始学习遥感原理及应用方面的知识, 但对所学知识的吸收、应用程度与国外相比仍有较大差距。为了培养我校学生的科研创新能力, 紧随科技前沿技术, 笔者在吉林大学大学生创新训练计划的项目资助下, 开展了基于卫星遥感图像的农作物分类算法研究工作。
目前, 国内外学者主要采用最大似然法、最小距离法、支持向量机法、神经网络法等算法模型对目标区域进行分类。为了提高分类精度, 在分类的过程中要把地物的像素信息、特征信息有效的结合[1]。本实验中, 面向农作物的分类需要综合不同农作物在某一时期的特征, 利用特征波段进行分类。同时, 对农作物的分类算法也适用于城市土地、校园土地的分类规划等领域, 有较大的现实意义。笔者对哈尔滨市农业示范基地的遥感影像数据进行分析, 利用最大似然法等3种分类方法对同一组实验数据进行分类, 将不同的分类结果与分类区域农作物的真实数据进行对比, 分析算法的精度与可靠性, 进而提出最优的农作物分类算法, 为遥感技术在农作物分类上的应用提供参考。
实验区域如图1所示, 它位于黑龙江省哈尔滨市东北部, 年均气温3.6 ℃、降水量553.5 mm、日照2 500 h, 日照量居全国前列, 无霜期135~140 d, 气候条件有利于农作物生长。实验区域主要作物包括高粱、水稻、玉米、大豆, 种植作物不同种类间分界清晰, 单类作物种植面积大, 有助于分类算法的研究, 并向更复杂的种植区域推广。
图1 农业示范基地遥感影像Fig.1 Remote sensing image of agricultural demonstration base
如表1所示, 通过对比国内外不同的高分辨率遥感影像卫星数据, 可以看到, 哨兵二号卫星幅宽为290 km, 有10 m、20 m、60 m 3种空间分辨率的数据可供选择, 考虑到东北地区多平原的地形因素, 幅宽大, 分辨率高且可选择性强的数据更加适合东北农田的分类; 同时, 哨兵二号的重访周期为5 d, 有利于及时更新观察区域的分类数据; 本研究使用哨兵二号是因为其有13个光谱波段的遥感影像数据, 其中的红外波段作为一个介于红光波段与近红外波段之间的波段, 其波段的变化范围在690~730 nm, 在该范围内植被的叶片反射率会发生突变, 此时对病害的胁迫比较敏感, 非常有利于农作物分类及病虫害的预防,另一方面, 红外波段不易受背景信息的影响, 是遥感图像农作物分类的理论基础[2-3]; 此外, 哨兵二号的数据源完全免费, 非常有利于全国范围内推广使用。
表1 各卫星数据对比表
哨兵二号卫星基本信息如表2所示, 它是多光谱成像卫星, 在光学数据中, 哨兵二号是唯一的在红边范围含有3个波段数据的卫星, 这对监测农作物健康信息非常有效。
表2 哨兵二号采集波段表
采用控制变量的总体思想, 将3种分类算法结果横向对比, 总体流程如图2所示。
图2 总体流程图Fig.2 Overall flow chart
笔者使用2018年7月30日哨兵二号(Sentinel-2)卫星拍摄的高分辨率哈尔滨市农业示范基地卫星影像为实验数据, 此景影像云量较少, 有利于地表信息的采集识别。在分类前, 要对目标区域的遥感影像进行预处理, 主要包含: 辐射定标、震慑校正、图像相融合和大气校正等操作。对不同时间、不同传感器所获得的图像进行比较时, 先要将图像的灰度值转换为绝对的辐射亮度, 这个过程就是辐射定标[4]; 同时, 通过正射校正操作, 以校正遥感成像过程中产生的几何畸变, 使图像更加精确; 正射校正后进行图像融合, 综合各个传感器的信息, 使图像空间分辨率更高、更加适合计算机处理; 然后对融合的影像进行大气校正处理, 以消除大气散射、吸收、反射引起的误差, 得到预处理后的全景图。最后从中裁剪出感兴趣区域作为实验区域。
预处理后选取的实验图像空间分辨率为20 m, 共包含表2中的9个波段, 包括红、绿、蓝可见光波段、近红外波段、3个红边范围波段以及11、12两个短红外波段。
遥感影像的最大似然分类是一种典型的基于统计分析的监督分类器, 其理论基础是Bayes准则,以错分概率或风险最小为依据建立的判别规则[5]。其基本思想是: 光谱特征向量可以作为每类农作物的量度,在光谱特征空间中会寻找到一个对应的特征点, 而对特征空间, 来自同种类型的农作物其特征点将会形成一个集群, 并且该集群会遵从某种概率分布规律。比较属于不同作物集群中的条件概率值的大小, 并将该像元中条件概率值最大时所对应的类别视为其最佳可能归宿, 该方法可以作为对某一像元所属作物类别进行判断的合理途径, 可以把分类判决函数视为某像元X落入某类作物集群(ai)的条件概率P(ai/X), 称为概率(或似然)判决函数[6], 依次完成分类过程。
建立判别函数对训练样本的分布假定服从高斯正态分布, 在贝叶斯公式的基础上建立判别公式, 使错分最少, 分类精度到达最高。最大似然法判别函数如下
(1)
式(1)中符号对应取值及含义如表3所示。
表3 最大似然公式符号对应取值及含义
支持向量机是以统计学理论为基础, 其分类原理是通过核函数寻找一个超平面将两种类别的数据集分离, 然后搜索最优分类边界, 通过机器学习方法在潜在高维空间中进行学习, 进而实现对目标的分类和识别[7]。核函数的选择是支持向量机法的核心问题, 常见的核函数包括线性核函数、多项式核函数、sigmoid核函数以及高斯径向基核函数(RBF: Radial Basis Function), 考虑到RBF核函数能处理高维空间不同作物的特征信息和类别的非线性关系, 笔者选择RBF核函数。不同核函数表达式如表4所示。
表4 支持向量机法各公式及其说明
依靠网格参数寻优的方法, 取总体训练样本的60%作为网格参数寻优法的训练样本, 对剩余的40%总体样本进行准确预测, 找出预测准确率最高的值, 确定此时的惩罚因子和g参数作为核参数,最后需要进行支持向量机法建模, 对整体分类样本进行数据归一化处理, 将辐射值范围规定在(0,1)之间, 最后对测试样本进行作物分类。
BP神经网络作为一种多层前馈网络模型, 其网络结构包括输入层, 一个甚至多个隐含层和输出层[8]。BP神经网络学习算法作为一种经典的迭代算法, 包括数据的正向传播和误差的反向传播两个部分。在进行信号的正向传播过程中由设定的初始权值进行判断, 在误差的反向传播过程中对权值进行反馈调节,将误差平均到隐含层各个节点, 继续学习, 直到输出期望值为止。
笔者为作物的分类建立了3层的BP网络模型, 包括输入层, 一个隐含层以及输出层。至于输入层节点数的选择与研究自身的目的有直接关系。关于作物的分类问题, 选取了水稻、玉米、大豆和高粱4类作物指标, 因此将BP网络结构中的输入层设置为4个节点。在3层网络结构中在隐含层节点数确定方面遵循经验确定法, 即隐含层的节点数m与输入层的节点数n之间满足如下的经验关系
m=2n+1
(2)
由式(2)可确定隐含层节点数为9。同BP网络结构中输入层节点数的确定, 其输出层节点数的确定同样是由网络模型的目的决定的。由于笔者建立的模型是为了给出每类作物的分类结果, 作物的类别数即是输出层所需要的节点数。
在作物分类的过程中, BP网络模型的输入向量在范围设置方面不宜过大, 否则会对学习速率造成影响, 并且导致训练时间过长, 进而造成过多的时间损耗, 基于此笔者将输入数据的范围通过归一化处理至(0,1)的范围[9]。其设定训练参数及取值如表5所示。
表5 作物分类BP网络结构模型训练参数的设置
利用如上算法对实验区域的遥感影像进行农作物分类, 并结合实地考察初步判断其分类准确度。最佳分类结果显示, 实验区域有高粱19 100 m2、水稻7 600 m2、玉米11 000 m2、大豆13 100 m2以及道路5 100 m2, 分类精度达91.7%。道路将农田分为7大种植区(见图3), 其中1号区域以水稻、高粱以及大豆为主; 2号区域高粱、大豆间作, 充分利用光能、地力; 3号、4号、6号、7号区域分别以水稻、高粱为主要作物, 间作其他作物; 5号区域种植水稻、高粱, 区块规整, 与实地考察结果几乎一致。
图3 遥感图像农作物分类结果图Fig.3 Crop classification result of remote sensing image
在精度评价中引入错分误差(CE: Commission Errors)、漏分误差(OE: Omission Errors)、总体精度(OA: Overall Accuracy)和Kappa系数等评估指标。
1) 错分误差指对分类结果图上的某一类别, 它与参考数据的类型不相同的概率, 也可以理解成在影像中被分类为某一种地物类别, 而实际上表达的是其他类别的概率, 即
CComimissioni=1-uai
其中第i类的用户精度uai表示分类方法将某样本判别为第i类, 而其本身也属于第i类的条件概率。
2) 漏分误差是指对属于参考数据的某种类别, 在分类的结果图中任意选取一个样本, 此样本被错误分类成其他类型的概率, 也可以理解成实际为某种类型的地物[10], 却被错误的分类成其他类别的概率, 即
OOmissioni=1-pai
其中第i类生产者精度pai表示在实际情况下某样本属于类别i, 采用的分类方法也将其判定为类别i的条件概率。
3) 总体精度(OA)作为一个具有概率意义的统计量, 是对每个随机样本, 其分类的结果与真实的地面区域类型相一致的概率值的一种表述, OA是对分类结果的整体准确度的一种反应[11]。在混淆矩阵中, OA的计算公式为
(3)
4) Kappa系数是一种衡量分类精度的指标, 用于一致性检验, 也可以用于衡量分类精度[12], 有
(4)
其中p0为正确分类的各类的样本总数与总样本数的比值, 也就是总体分类精度。y1,y2,…,yc为每种类别的真实样本数, 而x1,x2,…,xc为预测的每种类别的样本数,n为总的样本数, 则有
(5)
当得到的Kappa系数的数值大于0.80时, 表示所分类别的数据和用于检验的数据具有较高的一致性, 即分类精度较高; 当Kappa系数的值介于0.40~0.80时, 表示精度一般; 当Kappa系数的值小于0.40时, 表示分类精度较差。
3.2.1 数据源对比
在最大似然法中, 数据源分别使用了红绿蓝3波段以及全波段进行分类(见图4)。通过对比实验验证多波段有助于提高分类精度的实验猜想。如表6所示, 在使用3波段数据源得到的分类结果中, 水稻和高粱的错分误差较高, 分别达到了52.14%以及42.18%, 大豆的漏分误差也较高, 达到了41.28%, 可见该时期的红绿蓝3波段对以上作物的辨析度低, 分类结果不理想。
加入红边波段等信息后, 水稻以及高粱的错分、漏分误差降低了约20%, 虽然大豆的错分误差有所提高, 但是其漏分误差大大降低; 玉米的漏分误差由22.73%降到了7.27%。从整体效果看, 使用包含红边波段的多波段数据源得到的总体精度为74.392 9%, Kappa系数为0.672 5, 相比3波段数据源, 总体精度提高了9个百分点, Kappa系数提高了0.1。实验结果也体现出本实验针对农作物而使用哨兵二号作为数据源的正确性。
a 3波段分类结果图像 b 多波段分类结果图像图4 3波段以及多波段分类结果图像Fig.4 Three band and multi band classification result images
表6 3波段与多波段分类结果数据对比
3.2.2 算法对比
加入哨兵二号采集的红边波段信息, 对分类区域采用最大似然法 、支持向量机法、神经网络法3种分类算法得到的分类结果如表7所示。
表7 3类算法分类结果
在3种分类方法中, 总体精度(OA)都在74%以上, 其中最大似然法的分类精度最低, 为74.392 9%, 神经网络法的精度最高, 为91.771%。支持向量机和神经网络法的分类结果如图5所示。
最大似然法分类精度较低的原因是只在统计学角度, 取概率最大值粗略估计某一像元的归宿可能, 引入较大的统计误差; 另一方面, 最大似然法以样本数据的平均值、方根等数值作为判断依据, 考虑不到特定区域作物的光谱信息变化规律, 因而不能依据各作物样本数据的深层特征进行分类。
a 支持向量机法 b 神经网络法图5 分类结果Fig.5 Classification results
支持向量机法作用于遥感图像农作物分类得到了很好的效果, 总体精度高达89.792 4%, Kappa系数达0.867 2。但考虑到支持向量机法是通过二次规划求解支持向量, 对H矩阵的计算和存储将耗费大量的计算成本。同时, 经典的支持向量机算法只给出了二类分类的算法, 在处理大规模、多作物混作的分类情景时存在困难[13]。虽然在实验中取得了良好的分类结果, 但本实验分类区域有限, 考虑到全国范围内推广, 分类样本、分类目标增多时, 支持向量机算法的表现将有所下降。
神经网络法的分类结果精度最高, Kappa系数高达0.891 8, 由Neural Net RMS(Root Mean Square)图(见图6)可知, 随着神经网络训练迭代次数增加, 由于训练集中被分成多组的样本数据不断对模型进行参数更新, 神经网络模型分类的误差RMS不断降低, 最终达到分类误差较小, 分类精度较高的预期效果。
图6 神经网络均方根值图 Fig.6 Neural net RMS plot
虽然神经网络法的时间复杂度较高, 但对其他两种算法的精度提高比较明显, 考虑到农业应用, 为了提高普遍性, 本次训练次数为1 000, 训练过程共计30 s。在实际中, 也可以根据所分类区域大小确定合适的训练次数, 通过降低训练次数缩短分类时间, 对待分类区域所在地区的地理位置, 气候条件, 作物类型, 可以直接利用神经网络法训练出的不同模型进行分类, 极大提高了实际应用中的工作效率。
对任一种分类算法, 都存在一定程度上的误差, 其原因是, 预处理并不能完全还原地面真实情况, 对云层和大气干扰程度不能完全消除[14]。此外, 分辨率也在一定程度上限制了分类的精度, 在确定像元的内部可能存在多种作物共同存在的情况, 反映出的光谱信息不能代表任何一种作物, 并不能单纯依靠作物的光谱特征完成分类。
笔者采用的实验数据是于2018年7月30日获取到的哨兵二号数据影像, 采用对比的实验方法, 利用对叶绿素含量、冠层结构等非常敏感的红边波段对不同农作物进行分类, 得到基于哨兵二号的遥感影像农作物分类图。对分类结果进行统计, 参考实地考察情况, 使用总体精度、Kappa系数等评估指标对3种分类结果进行精度分析, 同时从多角度对该算法进行评估, 包括算法在时间方面的复杂度、地面作物类型的提取精度以及经济因素等方面, 得出神经网络法在遥感图像农作物分类方面优于其他两种方法, 具有更高的精度与可靠性。最后, 基于实验统计结果, 以及数据源、算法等对比数据, 为全国范围内推广遥感图像农作物分类、资源有效利用和保护自然生态提供一个新的思路。