基于连续投影算法与BP神经网络的玉米叶片SPAD值高光谱估算
2019-06-01杨武德朱洪芬王子轩白建伟
董 哲,杨武德,朱洪芬,郭 琪,王子轩,白建伟
(山西农业大学旱作农业工程研究所,山西 太谷 030801)
叶绿素含量是作物最重要的生长指标之一,它能够直接决定植物的光合作用潜力和初级生产力。另外,由于植物叶片中的氮素大部分集中在叶绿素中,所以叶绿素含量能够间接评价植物营养状态[1]。因此,监测叶绿素含量的变化可以反映作物的长势及营养状况,为作物的田间管理提供理论依据。传统的化学分析方法测量叶绿素含量,不仅会破坏植物叶片组织,并且会耗费大量时间及药品。便携式叶绿素仪(SPAD-502)在测量叶绿素含量时,需要接触叶片,反复测量,且仅能测量某个点或某个小区域的叶绿素含量,不利于大范围的叶绿素含量监测[2]。叶片光学特性的变化与波长相关,叶片尺度高光谱测量数据对于由叶绿素含量变化导致的光谱细微变化非常敏感。从叶片光谱特征中准确估算叶片叶绿素含量是从遥感影像获得冠层叶绿素含量重要的一步[3]。利用高光谱遥感技术监测叶绿素含量具有简洁性、敏感性以及高效率的特点,并且能够在大范围内应用[4]。
高光谱数据一般拥有上千个光谱波段,数千个特征可由这些波段计算得到。因此,高光谱影像的特征空间可能拥有成千上万个特征,进行特征选择和特征提取,是实现高光谱遥感反演的前提和基础。常见的特征选择和提取方法主要有筛选特征波长、构建植被指数及提取光谱特征变量。其中,植被指数和叶绿素含量之间的经验模型已经被广泛应用于叶绿素含量估算研究中[5-7]。很多学者也将“三边”参数用于叶绿素含量的估算,并且已经取得了较好的效果[8-10]。但是通过敏感波段之间的组合构建植被指数,从光谱数据中提取特征变量均需要进行大量的筛选及计算,而植被指数及光谱特征变量仅利用了光谱数据的部分敏感波段,忽略了叶片连续光谱数据中其他敏感波段对叶绿素含量的贡献。因此,如何充分利用叶片光谱中与叶绿素相关的波段区域,来提高叶绿素含量的反演精度,同时简化特征波长的筛选过程与建模方法是当前研究的热点。
连续投影算法(Successive projections algorithm,SPA)是一种新兴的特征波段选择算法,能够从全波段光谱信息中筛选出具有最低信息冗余度的变量组,保证所选择的特征波段共线性最小,降低模型建立过程中的复杂程度。由于其简便快捷,在高光谱反演中的应用越来越广泛[11-13]。
BP 神经网络是一种具有输入层、隐含层和输出层的典型多层前向型神经网络,可以实现输入和输出间的任意非线性映射,具有较好的非线性映射逼近能力和预测能力[14]。很多学者将BP 神经网络应用于高光谱遥感上,CHEN 等[15]分别用多元线性回归和BP 神经网络对水稻色素含量进行了估算,结果显示,BP 神经网络模型要优于多元线性回归模型。李媛媛等[9]构建了基于“三边”参数估算灌浆期玉米叶片SPAD 值的传统回归模型和BP 神经网络模型,并对各模型的反演精度进行比较,结果显示,BP 神经网络模型的预测效果较好。但将连续投影算法与BP 神经网络相结合,用于反演叶片叶绿素含量的研究目前尚未见报道。
本研究以玉米叶片为研究对象,采用连续投影算法(SPA)筛选玉米关键生育时期叶片光谱对SPAD 值的敏感波段,并且结合BP 神经网络进行叶片SPAD 值的估算,旨在探索简便、快捷的玉米叶片反演模型,提高反演精度,为利用遥感技术监测玉米的长势情况提供一定的理论依据和技术支持。
1 材料和方法
1.1 试验地概况
试验于2018年6—9月在山西省晋中市太谷县胡村镇现代农业示范区(37°12′N,112°28′E)进行,该区域位于汾河平原东北部,地势平坦,海拔770 m 左右,年平均气温介于7~10 ℃,年平均降水量约450 mm,属暖温带大陆性气候。该示范区主要种植夏玉米和冬小麦2 种粮食作物,且种植面积较大,夏玉米品种以晋单86、强盛388 和登海679 等品种为主,多采用一次性施足底肥,自然方式生长,生育期为5月初至9月中旬,行距和株距为50 cm×35 cm。
1.2 试验设计
试验分别在 7月1日(大喇叭口期)、7月19日(灌浆初期)和8月18日(腊熟期)进行样品采集,在试验区选取能够代表该区域生产特性、间隔500~1 000 m 的20 个样点,每个样点采集9 片叶子,尽量取玉米植株的不同叶位,每个时期各有180 个样本。
1.3 测定指标及方法
1.3.1 叶片光谱的测定 叶片光谱测定采用美国ASD Field-Spec 3.0 便携式高光谱仪,波段范围为350~2 500 nm,利用自带光源型手持叶片光谱探测器直接测定叶片光谱,光源为内置卤钨灯,每次测量前都需要用白板进行校正,每片叶子在不同部位共采集10 条光谱,取其平均值作为玉米叶片的光谱值。
1.3.2 叶绿素含量的测定 使用便携式叶绿素仪(SPAD-502)测定叶绿素相对含量(SPAD 值)。与光谱测定同步,测量时要避开叶脉,在每片叶子的不同位置均匀地测取10 个SPAD 值,取其平均值作为该片叶的SPAD 值,实现与叶片光谱数据的一一对应。
1.4 数据处理与分析方法
1.4.1 模型的构建与评价 将每个采样日期的180 个样本按 2∶1 随机分为 2 个部分,即 120 份数据作为建模集,60 份数据作为验证集。
基于Matlab 2010b 的BP 神经网络的建模过程包括:分别对建模集和验证集数据进行读取;对输入层和输出层的神经元进行归一化处理;设置最大学习迭代数、学习精度等参数;建立网络模型。然后,采用最佳隐含层神经元数对模型进行训练,基于sim 函数对训练好的BP 神经网络进行仿真预测。最后将得出的数据反归一化并进行误差计算。
模型的评价选取决定系数R2、均方根误差RMSE、残留预测偏差RPD 进行综合评定。其中,R2越接近于1,模型的预测精度越高;RMSE 越小,模型的稳定性越好;RPD 表征模型的预测能力,RPD<1.0 表示模型预测能力极差;1.0≤RPD<1.4表示模型预测能力较差;1.4≤RPD<1.8 表示模型预测可用;1.8≤RPD<2.0 表示模型预测能力较好;2.0≤RPD<2.5 表示模型预测能力很好;RPD≥2.5表示模型预测能力极好[16]。
1.4.2 数据处理 利用ViewSpec Pro 进行原始高光谱数据预处理;利用Matlab 2010b 进行连续投影算法及BP 神经网络训练;利用Origin 8 进行制图。
2 结果与分析
2.1 基于SPA的特征波长筛选
大量研究表明,对叶绿素敏感的波段主要为可见光和近红外波段[17-19]。因此,本研究中叶片光谱范围选择为400~1 300 nm,利用连续投影算法对叶片光谱数据进行SPAD 值的敏感特征波段筛选。为降低模型的复杂程度,设置特征波段筛选的数目范围为1~10,在RMSE 达到最小值时优选出7月1日、7月19日和 8月18日及 3 个日期综合的叶片光谱对SPAD 值敏感的特征波长,所选的特征波长如表1所示。
表1 玉米叶片SPAD 值特征波长选择
从表1可以看出,SPA 选出各日期的特征波长主要集中在400~1 000 nm 波段,以670~760 nm 范围内的红边波段最多,波长点数较少,且每次运行SPA 算法都得到相同的结果,这有利于降低模型的复杂程度、提高稳定度。
2.2 基于BP神经网络的SPAD值估算模型构建
选取各个时期的入选特征波段作为输入层,以玉米叶片的SPAD 值作为输出层,本研究通过多次试验得出,增加隐含层数目对模型拟合精度影响较小,为提高模型的运算效率,选取隐含层数目为1。由于隐含层的神经元数目会影响到模型的拟合精度,本试验根据经验公式(1)[20]给定的范围,对不同采样日期进行多次训练得出7月1日、7月19日和8月18日的分段监测模型以及这3 个日期的统一监测模型的最佳神经元数目分别为7,7,4 和6。设定最大学习迭代次数为10 000,学习精度为0.01。利用Matlab 2010b 编程进行BP 神经网络模型训练,得到SPAD 的预测值,各模型的拟合情况如表2所示。
式中,k 为输入层单元数;m 为输出层单元数;a为[1,10]之间的常数。
表2 基于BP 神经网络的玉米叶片SPAD值估算模型构建
从表2可以看出,7月1日和7月19日的分段监测模型建模效果较好,同时具有较高的拟合精度(R2=0.885,0.900)和较小的均方根误差(RMSE=2.156,2.103),表明对SPAD 值的拟合效果较好。但8月18日的分段监测模型建模效果较差,R2仅为0.675,RMSE 为 3.236,模型精度较低。因此,导致3 个日期的统一监测模型建模效果较7月1日和7月19日的监测模型效果略差(R2=0.827,RMSE=2.651)。
使用验证数据集分别对7月1日、7月19日和8月18日的分段监测模型及这3 个日期的统一监测模型进行验证,将各模型计算出的预测值与实测值进行线性拟合分析,结果如表2和图1所示。从表2和图1可以看出,同样以7月1日和7月19日的分段监测模型预测效果为最好(R2=0.811,0.840,RMSE=2.700,2.796,RPD=2.250,2.396),预测能力均达到很好的水平;而8月18日的分段监测模型预测效果较差(R2=0.632,RMSE=3.108,RPD=1.641),预测能力仅达到可用的水平。3 个日期的统一监测模型预测效果(R2=0.771,RMSE=2.957,RPD=2.082) 较 7月1日和 7月19日的分段监测模型效果略差,但预测能力也达到了很好的水平。
3 讨论
基于连续投影算法优选出的特征波段相较于全波段光谱来说,剔除了大量与叶绿素不相关的波段,在很大程度上降低了模型的复杂程度,提高了模型的预测精度和稳定度,达到了简化模型的目的;相较于植被指数与光谱特征变量来说,更充分地利用了与叶绿素相关的光谱波段,保证了优选出的特征波段对玉米叶片SPAD 值的贡献性,从而提高了模型的预测精度。本研究建立的模型精度优于陈志强等[21]以多种植被指数构建的玉米叶片SPAD预测模型,优于宫兆宁等[8]基于“三边”参数和ND模型指数构建的植物叶片叶绿素含量的估算模型。另外,白丽敏等[22]在估测冬小麦叶片氮含量时得出,利用SPA-PLS 所构建的叶片氮含量估算模型要优于基于常用植被指数的估算模型。说明连续投影算法同样适用于其他作物生理生态参数的反演。
BP 神经网络在一定程度上可以模拟人大脑神经系统的活动过程,具有自学习、自组织、自适应能力及高度非线性表达能力,这是其他传统多元校正方法所不具备的[23]。大量研究表明,植物叶片SPAD值一般与光谱变量呈非线性关系[24-25],因此,将连续投影算法与BP 神经网络相结合可以更进一步提高预测模型的精度。在本研究中,7月1日和7月19日的叶片SPAD 值分段监测模型预测能力均达到了很好的水平,说明SPA-BP 神经网络模型对玉米的大喇叭口期及灌浆初期叶片SPAD 值预测效果较好。但8月18日的分段监测模型预测能力仅达到可用水平,可能由于玉米在该日期已经处于腊熟期,叶片叶绿素分解逐渐减少,叶片停止生长逐渐衰老,导致光谱反射率与叶片SPAD 值的相关性降低,分段监测模型的精度也降低。3 个日期的统一监测模型虽然也达到了预测能力很好的水平,但是由于玉米叶片SPAD 值在这3 个日期变化幅度较大,且其包含腊熟期数据,导致模型的精度与7月1日和7月19日的分段监测模型相比略差。
本研究采集了3 个日期的玉米叶片数据,所选研究区域范围较大,水肥条件不均,玉米品种多样,长势有差异,数据获取的背景条件不尽相同,避免了单一条件因素的影响,因此增强了估算模型的普适性。但还存在一些不足,连续投影算法针对不同的样本所筛选的特征波段也不同,因此,每次对不同样本进行监测前都需要重新筛选波段。此外,BP神经网络的训练效果与设置的训练参数有关,最佳隐含层神经元数需要通过多次训练试错,根据最好的训练结果来确定。因此,如何设置更合理的训练参数,更精准地确定最佳隐含层神经元数还有待进一步研究。本研究仅探讨了黄土高原地区半干旱气候区的玉米叶片尺度的叶绿素含量相对值监测模型,该模型能否运用于其他区域或其他处理的玉米叶片叶绿素含量监测,能否用于冠层或者其他类型作物的叶绿素含量监测还需进一步探索。
4 结论
本研究利用连续投影算法对与玉米叶片SPAD值敏感的特征波段进行筛选,以筛选出的特征波段作为输入层,采用BP 神经网络分别构建3 个采样日期的分段监测模型及统一监测模型,结果表明,7月1日,7月19日和8月18日的分段监测模型及统一监测模型的 R2分别为 0.885,0.900,0.675,0.827;RMSE 分别为 2.156,2.103,3.236,2.651。7月1日(大喇叭口期)、7月19日(灌浆初期)模型和统一监测模型的精度均较高,同时检验模型的RPD 均大于2,具有很好的预测能力;而8月18日(腊熟期)的监测模型表现较差(RPD=1.641),但也达到可用水平。本研究结果表明,利用连续投影算法与BP 神经网络进行玉米叶片SPAD 值高光谱估算是可行的。