基于深度残差网络的高光谱遥感数据霾监测 下载: 1254次
1 引言
霾是指大量极细微的干尘粒等均匀地漂浮在空中,使水平能见度小于10 km的空气普遍浑浊现象[1]。当前,我国的大气污染越发严重。在中国气象行业标准《霾的观测和预报等级》中将霾的预报等级进行了定义。大气霾污染已经成为了亟待解决的重大环境问题之一[2],而霾的监测是霾污染治理中重要的一环。
近期,国外对霾的研究主要集中在亚洲地区,Lee等[3]利用地基数据对韩国发生的两次霾进行了分析;Ghauri[4]利用
当前用于遥感霾监测的数据主要有两种:一种是多波段遥感数据,包括36通道中分辨率成像光谱仪(MODIS)数据[5]、4通道的HJ-1A电荷耦合器件(CCD)相机数据[6]、5通道的先进高分辨率辐射计(AVHRR)数据[7]等;另一种是MODIS气溶胶产品[8]。MODIS 气溶胶产品在中国区域存在较大误差,缺乏普遍的适用性。而多波段遥感数据由于波段数量有限,无法很好地通过光谱区分霾与其他物质。高光谱遥感数据作为一种较新型的遥感数据,具有波段多、光谱范围窄、波段连续等特点。利用高光谱遥感数据可以得到拍摄地更为详细的地表信息和大气信息,为高精度霾识别和霾等级划分提供基础。目前尚且没有将高光谱数据用于霾监测的研究。
遥感数据霾监测的传统方法有两种:一种是气溶胶反演法,其原理是通过遥感数据反演气溶胶厚度(或者直接使用气溶胶产品),找到气溶胶厚度与能见度的对应关系,再进行霾识别;另一种是光谱分析法,该方法通过直接分析霾光谱与无霾光谱之间的差异进行霾识别。第一种方法中,气溶胶厚度的反演会产生误差,而通过气溶胶厚度反推地面能见度会再次产生误差,导致霾识别的精度较差。第二种方法需事先提取霾的特征,提取到的特征好坏对模型的性能有直接的影响,因此需要研究人员对霾的遥感数据特性进行深入研究,以设计出适应性更好的特征,从而提高模型的性能。而高光谱数据波段数量庞大,人工特征筛选难度较大,利用机器学习的方法来提取图像特征更为合适。
近年来,深度学习在语音识别、图像识别[9]、目标检测[10]、遥感图像分类[11]等领域获得了很大进展,成为当前的研究热点之一。深度学习,即通过卷积等操作,将样本在原空间的特征变换到新的特征空间,自动学习并得到层次化的特征表示[12]。含更多隐含层的深度卷积神经网络(CNN)具有更复杂的网络结构,与传统模式的识别方法相比具有更强大的特征学习和特征表达能力。
CNN随着网络层数的增加,训练难度不断加大,很难保证模型可训练得到一个理想结果。2016年,He等[13]提出了残差学习的思想,很好地解决了深度网络训练难的问题,使得网络层数达到了一个新的高度。
为利用高光谱数据监测霾,在深度卷积网络的基础上,引入了残差学习的思想,提出一种基于深度残差网络的高光谱数据霾监测方法。针对苏州地区2015年1月至2016年3月的Hyperion高光谱数据进行实验,检验了算法的有效性。
2 霾高光谱特性分析
2.1 数据以及地面观测值来源介绍
研究数据为2015年1月至2016年3月期间苏州地区的Hyperion观测数据17景,来源于美国地质勘探局(USGS)网站,
图 1. 苏州地区高光谱数据和站点位置示意图。(a)站点位置示意图;(b) 2015年2月28日150通道; (c) 2015年3月18日179通道
Fig. 1. Diagrams of hyperspectral data and site location of Suzhou. (a) Diagram of station location; (b) February 28, 2015, passage 150; (c) March 18, 2015, passage 179
范围为 355~2577 nm,空间分辨率为30 m。每景高光谱图上有常熟、吴江和吴中3个气象观测点。将每个气象观测点周围约3 km×3 km区域(图像大小约100 pixel×100 pixel)的所有像元作为实验数据。
以地面气象观测站的记录数据作为图像的真值,数据来源为上海市气象局。数据以文本文档格式记录,每个站点数据一行包括26个字段。从26个字段中把经度、纬度、能见度、现在天气4个有用的字段提取出来,并将地理位置坐标转换为图片坐标。将经纬度在图片范围内具有有效现在天气的记录提取出来,作为有效地面观测数据。结合能见度数据和天气数据得到霾的等级。按照《中华人民共和国气象行业标准霾的观测和预报等级》标准进行霾的等级划分,将其分为无霾、轻霾、中霾和重霾4个等级。其中现在天气用气象编码表示,需要根据气象局提供的电码表查询对应的天气,在确认天气状况是霾(在电码表中表示为05电码)之后,再根据能见度信息确认霾的等级。
2.2 光谱特性分析
对苏州地区的城市下垫面下的光谱曲线进行分析。不论是霾天还是非霾天,在城市下垫面下,光谱反射强度都随着波长的增加呈下降趋势。对于平均光谱曲线,霾天尤其是重霾的情况下,卫星传感器接收到的辐射强度会略微高于正常天气,苏州城区下垫面下不同霾状况平均光谱曲线如
图 2. 苏州城区下垫面下不同霾状况平均光谱曲线
Fig. 2. Average spectral curves at underlying surface of Suzhou under different haze conditions
在霾污染发生的时候,外部的太阳辐射能量会分出3条路径:一部分能量被霾层阻挡,向后散射;另一部分能量在穿越霾层时被霾层吸收;还有少量一部分能量穿透霾层到达地面。穿透霾层到达地面的辐射能量经过地表反射后开始向上传播,传播过程同样受到霾层的阻挡,其中一部分能量再次被霾散射回地面重新继续循环,另一部分能量在传播过程中被吸收,还有少部分能量可以重新穿越大气层回到太空中并被卫星上的高光谱传感器接收。因此可以说卫星传感器所接收到的光谱数据包含了大气成分和地面成分的混合信息。浓厚的霾层会对外部能量辐射产生很强的后向散射,产生类似于云的效果,使卫星遥感图像上呈现出亮斑。因此,尽管在地面上观测到霾污染产生时的能见度明显低于无霾时,但在卫星遥感数据中,由于霾的强后向散射,霾天的平均辐射强度高于非霾天气。
当然,不同时期、不同种类、不同成因的霾粒子对辐射能量的吸收各有差异,因此实际情况较为复杂。实际中,由于下垫面和霾颗粒的复杂性,各种霾的光谱曲线很难通过特定的阈值算法进行线性分割。因此需对霾和非霾光谱曲线进行随机抽样,得到霾与非霾的随机抽样光谱曲线如
为了更好地识别霾,需要借助深度学习的方法,让计算机自动学习霾光谱曲线所包含的深层特征,再进行区分。
图 3. 霾(红色)与非霾(蓝色)的随机抽样光谱曲线
Fig. 3. Random sampling spectral curves of haze (red) and non-haze (blue)
图 4. PCA特征下的霾(红色)与非霾(蓝色)散点图
Fig. 4. Scatter plots of haze (red) and non-haze (blue) with PCA characteristics
3 深度残差网络高光谱霾监测算法
3.1 残差学习简介
训练深层次的神经网络是非常困难的,而使用残差学习可以很好地减轻深层网络训练的负担并增加网络层数[13]。
简单地说,残差学习是在传统的线性网络结构基础上引入一条捷径,跳跃绕过一些层的连接;捷径通过相加融合的方法与主径汇合。加入了捷径后,训练过程中底层的误差可以通过捷径向上一层传播,减弱了层数过多造成的梯度消失现象,达到了提高训练精度的效果。
3.2 霾监测模型
针对高光谱数据的光谱曲线输入和霾监测的实际问题,利用一维卷积,提出了深度残差网络高光谱霾监测算法。该算法涉及的高光谱霾监测深度残差网络整体框架如
图 6. 高光谱霾监测深度残差网络整体框架
Fig. 6. Framework of deep residual network for hyperspectral haze monitoring
整个网络共有13层,包括10层卷积层和3层全连接层。第1层卷积层之后分成3个残差模块。每个残差模块在一开始分为一条主径和一条捷径,主径上有3个卷积层用于提取高光谱曲线中的深层特征,捷径上只有一个卷积层,方便训练时残差向上传播。主径和捷径得到的特征在残差模块结束时重新叠加会合,进入下一个阶段。对于3个全连接层,将之前得到的卷积特征进行分类,最终通过softmax得到识别结果。以下对本模型各部分的具体设置与参数分别进行介绍。
3.2.1 输入层
输入层为高光谱图像单个空间像元波长在400~2500 nm之间的光谱反射强度。原始数据为一个242维的列向量,经过损坏波段去除等预处理[14]之后,剩下198个波段。将此198个波段作为网络的输入层。
3.2.2 残差模块
每个残差模块在池化层之后分为一条主径和一条捷径,主径上有3个卷积层用于提取高光谱曲线中的深层特征,主径的前两层采用与上一层相同数量的卷积核,在第3层将卷积核数量翻倍;捷径上只有一个卷积层,直接将卷积核数量翻倍。主径和捷径最后得到的特征层数和特征维度都是一致的,在模块的最后进行加和融合,之后进入下一个阶段,残差模块内部结构示意图如
3.2.3 批归一化层
Ioffe等[15]提出了批归一化方法,该方法使得卷积提取后特征的均值为0、方差为1,可用于加速训练和优化结果。为了优化深度残差网络的训练过程,提出的模型也在每个卷积层和池化层之后进行批归一化操作。
3.2.4 全连接层
在第3个残差模块之后,将所有特征层压扁为列向量,输入全连接层。最后一层是分类的类别数,分为无霾、轻霾、中霾、重霾4类。在全连接层中加入了随机隐退操作[16],以提高模型的稳健性,防止过拟合。
3.2.5 激活函数
除了最后一层使用softmax以外,其余每个卷积层和全连接层之后都采用矫正线性单元(ReLU)作为激活函数。ReLU激活函数具有更快的训练速度,并且使用ReLU的网络在一些情况下比预处理过的网络表现更为优异[17]。
3.2.6 其他参数
训练时的代价函数选为交叉熵,采用随机梯度下降[18]的方法训练网络,学习率设置为1×10-4,最大训练迭代次数为1000次。
所使用的网络相对于传统的神经网络算法,已经达到了一个很大的数量级,而深度网络最大的问题就是训练难度大,因此很多参数的选择,包括捷径的设置、批归一化层的加入、ReLU激活函数的选择等,都要考虑尽量降低网络的训练难度。
4 霾监测实验
结合高光谱数据进行实验以验证网络的性能。
4.1 实验数据
第 2.1节的数据中,有带标签的空间像元数据517667个,预处理后每个像元数据有198个通道,表示该像元地点此时的光谱曲线。标签分为无霾、轻霾、中霾、重霾4类。随机选取其中5000个像元数据作为训练集,其余数据作为测试集。
4.2 网络参数选择实验
网络的深度对于识别的结果是有一定影响的。一般来说,在充分训练的情况下,网络深度越深越可以学习得到样本更本质的特征,识别的结果应该更好。但网络深度加深之后,训练难度加大,及时加大训练次数也一直处于欠拟合的状态,造成传统的堆砌网络(比如传统的CNN)在网络深度到某个值之后,性能反而随着层数的增加而下降。因此,探究网络深度对ResNet和CNN性能的影响是十分有必要的。
第3.2节中提到,用于霾监测的深度残差网络有13层,以下对选择13层的原因及层数的改变对识别精度的影响进行讨论。
由
图 8. 不同网络深度下的CNN和ResNet性能对比图
Fig. 8. Comparison of performance of CNN and ResNet with different network depths
4.3 不同方法霾识别性能对比
在之前的数据上进行支持向量机(SVM)、浅层反向传播(BP)神经网络、深度置信网络(DBN)、CNNs和深度残差网络(ResNet)的识别对比实验。
SVM采用径向基函数作为核函数,参数
由
表 1. 不同霾识别方法的对比实验结果
Table 1. Experimental results of haze recognition with different methods
|
在一开始就初始化为一个较好的值,从而使精度有了一定提高。CNNs因为提取了更深层的特征,略微优于SVM和BP,但因为网络加深,训练一致处于欠拟合状态,无法得到精确的模型,而深度残差网络残差捷径的加入,避免了训练欠拟合的问题,从而可得到较好的结果。
表 2. 霾分类混淆矩阵
Table 2. Confusion matrix of haze classification
|
4.4 大训练样本比例下霾识别性能对比
4.4.1 CNN-13与ResNet-13的大样本对比实验
第4.2、4.3节的实验都是基于训练样本数为5000得到的结果,但整个数据集共有517667的样本点,5000的样本数只是占了很小的比例,不到1%。本节讨论深度残差网络和卷积神经网络在大训练样本情况下的表现。本节研究中将训练样本数增加到2.5×105,约为总数据量的48.3%,其余的267667个样本为测试样本。
1) 在加大训练样本比例的情况下,模型趋于稳定所需要的训练次数更少。在样本数为5000的情况下,需要近200次迭代才能达到0.1的识别错误率;而在训练样本数为2.5×105下,只需要不到5次迭代就达到了相同的识别错误率,并且总共需要不到40次迭代就可使错误率趋于稳定,完成建模过程。当然,随着训练集的增大,单次迭代所需要花费的时间也大大增加,因此总训练时间相对于样本数为5000的情况的训练时间更长。
2) 大训练样本的错误率随迭代次数变化的曲线更平滑,不会出现小样本中剧烈振荡的状况。特别是训练误差曲线,几乎都是光滑的。因为训练样本的增大,一次迭代过程的权值调整可以根据大量的数据进行,因此随机性更小。而网络的调整目的是最小化训练集的代价函数,因此训练集平稳地持续下降。
3) 大训练样本最终可以获得更高的识别精度。在训练样本数为2.5×105 的情况下,ResNet最终可以达到0.981的精度,而CNN也可以达到0.977的精度,相对于小样本要高出许多。
图 10. 大训练样本下网络性能对比结果。(a)训练误差;(b)测试误差
Fig. 10. Comparison of network performance with large training sampling. (a) Training error; (b) test error
4.4.2 浅层网络与深层网络的对比实验
进行训练样本数为2.5×105时BP(198-50-4)网络与CNN-13、ResNEt-13的对比实验,前者为3层的浅层网络,后两者为13层的深层网络。
图 11. BP与CNN-13、Resnet-13的大训练样本对比实验结果
Fig. 11. Experiment results of large training samples of BP, CNN-13 and ResNet-13
4.5 监测效果图
4.5.1 苏州地区监测结果图
用训练好的模型对2015年1月26日苏州地区的高光谱图像进行霾监测,得到苏州地区2015年1月26日霾监测结果如
图 12. 苏州地区2015年1月26日霾监测结果。(a) 站点位置示意图;(b) SVM结果;(c) DBN结果;(d) Resnet结果
Fig. 12. Haze monitoring results of Suzhou on January 26, 2015. (a) Diagram of site location; (b) result of SVM; (c) result of DBN; (d) result of Resnet
4.5.2 上海地区监测结果图
为了测试各个模型对不同地区的泛化能力,同样用训练好的模型对2015年1月4日上海地区的高光谱数据进行霾监测。上海地区的数据由北至南横跨崇明、宝山、徐汇、闵行、奉贤和金山6个区。根据地面观测数据,当天奉贤站点和金山站点(即图像左下角的位置)的能见度分别为7 km和8 km,报轻霾;其余地区的能见度在10 km以上,为无霾。上海地区2015年1月4日霾监测结果图如
图 13. 上海地区2015年1月4日霾监测结果图。(a) 站点位置示意图;(b) SVM结果;(c) DBN结果;(d) Resnet结果
Fig. 13. Results of Shanghai haze monitoring on January 4, 2015. (a) Diagram of site location; (b) result of SVM; (c) result of DBN; (d) result of Resnet
5 结论
使用高光谱数据进行霾监测,克服了多光谱数据信息不足的问题。针对高光谱数据通道多的特点,提出了基于深度残差网络的高光谱数据霾监测算法,避免了人工经验提取特征带来的误差。该算法通过深层网络提取高光谱图像霾光谱曲线的内在特征,利用残差学习的捷径反馈降低了网络的训练难度。苏州地区的霾监测实验表明,与传统遥感霾识别算法相比,所提出的算法可得到更高的识别精度,证明利用高光谱数据监测霾是非常有效的。下一步将获取其他地域的高光谱数据,以进一步验证所提算法的适用性。
[1] 王中挺, 陈良富, 厉青, 等. 灰霾组分的多角度偏振反射特性模拟[J]. 光学学报, 2015, 35(9): 0901002.
王中挺, 陈良富, 厉青, 等. 灰霾组分的多角度偏振反射特性模拟[J]. 光学学报, 2015, 35(9): 0901002.
[2] 刘建国, 桂华侨, 谢品华, 等. 大气灰霾监测技术研究进展[J]. 大气与环境光学学报, 2015, 10(2): 93-101.
刘建国, 桂华侨, 谢品华, 等. 大气灰霾监测技术研究进展[J]. 大气与环境光学学报, 2015, 10(2): 93-101.
[4] GhauriB. Estimating area covered by Haze and fog in Pakistan and India during winters[C]. IEEE Conference on Geoscience and Remote Sensing Symposium (IGARSS), 2016: 16445492.
GhauriB. Estimating area covered by Haze and fog in Pakistan and India during winters[C]. IEEE Conference on Geoscience and Remote Sensing Symposium (IGARSS), 2016: 16445492.
[5] 戴羊羊, 李成范, 周时强, 等. 基于遥感的上海地区雾霾监测研究[J]. 测绘工程, 2015(12): 29-32.
戴羊羊, 李成范, 周时强, 等. 基于遥感的上海地区雾霾监测研究[J]. 测绘工程, 2015(12): 29-32.
Dai Yangyang, Li Chengfan, Zhou Shiqiang, et al. Haze monitoring of Shanghai area based on remote sensing[J]. Engineering of Surveying and Mapping, 2015(12): 29-32.
[6] 王中挺, 厉青, 李莘莘, 等. 基于环境一号卫星的霾监测应用[J]. 光谱学与光谱分析, 2012, 32(3): 775-780.
王中挺, 厉青, 李莘莘, 等. 基于环境一号卫星的霾监测应用[J]. 光谱学与光谱分析, 2012, 32(3): 775-780.
[7] . NOAA/AVHRR 卫星资料的北京地区霾识别研究[J]. 气象, 2014, 40(5): 619-627.
. NOAA/AVHRR 卫星资料的北京地区霾识别研究[J]. 气象, 2014, 40(5): 619-627.
Liu Yonghong. Research on haze identification in Beijing based on NOAA/AVHRR satellite data[J]. Meteorological Monthly, 2014, 40(5): 619-627.
[8] 牛志春, 姜晟, 李旭文, 等. 江苏省霾污染遥感监测业务化运行研究[J]. 环境监控与预警, 2014, 6(5): 15-18.
牛志春, 姜晟, 李旭文, 等. 江苏省霾污染遥感监测业务化运行研究[J]. 环境监控与预警, 2014, 6(5): 15-18.
Niu Zhichun, Jiang Sheng, Li Xuwen, et al. The remote sensing monitoring operational system of haze pollution in Jiangsu province[J]. Environmental Monitoring & Forewarning, 2014, 6(5): 15-18.
[9] KrizhevskyA, SutskeverI, Hinton GE. Imagenet classification with deep convolutional neural networks[C]. Neural Information Processing Systems Conference, 2012: 1097- 1105.
KrizhevskyA, SutskeverI, Hinton GE. Imagenet classification with deep convolutional neural networks[C]. Neural Information Processing Systems Conference, 2012: 1097- 1105.
[10] GirshickR, DonahueJ, DarrellT, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]. Proceedings of the IEEE conference on computer vision and pattern recognition, 2014: 580- 587.
GirshickR, DonahueJ, DarrellT, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]. Proceedings of the IEEE conference on computer vision and pattern recognition, 2014: 580- 587.
[11] 刘大伟, 韩玲, 韩晓勇. 基于深度学习的高分辨率遥感影像分类研究[J]. 光学学报, 2016, 36(4): 0428001.
刘大伟, 韩玲, 韩晓勇. 基于深度学习的高分辨率遥感影像分类研究[J]. 光学学报, 2016, 36(4): 0428001.
[12] 尹宝才, 王文通, 王立春. 深度学习研究综述[J]. 北京工业大学学报, 2015, 1(1): 48-59.
尹宝才, 王文通, 王立春. 深度学习研究综述[J]. 北京工业大学学报, 2015, 1(1): 48-59.
Yin Baocai, Wang Wentong, Wang Lichun. Review of deep learning[J]. Journal of Beijing University of Technology, 2015, 1(1): 48-59.
Yin Baocai, Wang Wentong, Wang Lichun. Review of deep learning[J]. Journal of Beijing University of Technology, 2015, 1(1): 48-59.
[13] He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition[C]. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016: 770- 778.
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition[C]. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016: 770- 778.
[14] 徐文斌, 郑小兵, 易维宁. 基于超光谱成像仪Hyperion的交叉定标方法[J]. 光学学报, 2013, 33(5): 0528002.
徐文斌, 郑小兵, 易维宁. 基于超光谱成像仪Hyperion的交叉定标方法[J]. 光学学报, 2013, 33(5): 0528002.
[15] IoffeS, SzegedyC. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]. Proceedings of the 32 nd International Conference on Machine Learning , 2015, 37: 448- 456.
IoffeS, SzegedyC. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]. Proceedings of the 32 nd International Conference on Machine Learning , 2015, 37: 448- 456.
[17] GlorotX, BordesA, BengioY. Deep sparse rectifier neural networks[C]. Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics, 2011, 15: 315- 323.
GlorotX, BordesA, BengioY. Deep sparse rectifier neural networks[C]. Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics, 2011, 15: 315- 323.
[18] BottouL. Large-scale machine learning with stochastic gradient descent[C]. 19 th International Conference on Computational Statistics , 2010: 177- 186.
BottouL. Large-scale machine learning with stochastic gradient descent[C]. 19 th International Conference on Computational Statistics , 2010: 177- 186.
Article Outline
陆永帅, 李元祥, 刘波, 刘辉, 崔林丽. 基于深度残差网络的高光谱遥感数据霾监测[J]. 光学学报, 2017, 37(11): 1128001. Yongshuai Lu, Yuanxiang Li, Bo Liu, Hui Liu, Linli Cui. Hyperspectral Data Haze Monitoring Based on Deep Residual Network[J]. Acta Optica Sinica, 2017, 37(11): 1128001.