基于卷积神经网络的光谱预处理方法
2022-01-12焦青亮刘子龙孔令琴董立泉赵跃进
焦青亮,刘 明*,于 坤,刘子龙,3,孔令琴,惠 梅,董立泉,赵跃进
1.北京理工大学光电学院,精密光电测试仪器与技术北京市重点实验室,北京 100081 2.河南师范大学物理学院,河南省红外光谱测量与应用重点实验室,河南 新乡 453007 3.中国计量科学研究院光学与激光计量科学研究所,北京 100013
引 言
光谱的定量分析是光谱应用的重要方面。实际应用中,由于温度、湿度和仪器自身等问题,未经预处理的光谱会导致定量分析出现误差、组分预测错误等问题,因此光谱预处理是光谱分析中重要的组成部分。
光谱预处理包括光谱去噪、基线校正和谱峰定位等。其中,光谱去噪算法包括高斯滤波,SG平滑,短时傅里叶变换,小波变换等算法。这些去噪算法可以移除光谱噪声,但是会损失光谱的精度,因为它们实质上是通过降低原始测量的光谱分辨率来消除噪声[1]。其中,高斯滤波和SG平滑[2]等算法原理简单,但是较小的窗口对噪声的移除效果有限,较大的窗口会严重的损失光谱数据,因此使用这些方法去噪时需要谨慎的选择参数;基于傅里叶变换和小波分析[3-4]等多尺度分析的方法是根据噪声的性质,将光谱数据分为高频分量和低频分量,通过截断高频分量的方法,减小噪声对光谱的影响。这些方法的效果大多取决于几个参数的选择,例如小波基选择和阈值权值选择方法,因此去噪结果会包含主观性。
光谱基线校正包括小波变换[5],多项式拟合,自适应迭代重权惩罚最小二乘[6],非对称最小二乘[7]等方法。这些方法大多可以有效的估计光谱基线,但是会扣除光谱的真实强度。其中多项式拟合、非对称最小二乘等方法对光谱的信噪比有一定要求,在重叠峰处可能无法取得光滑的基线。而基于小波变换的方法,通过对小波低频分量进行处理,估计光谱基线。这些算法可以满足大多数基线估计,但是由于小波基函数的问题,会出现基线畸变的现象。
光谱峰定位方法包括对称零面积法[8],多阶导数法和正弦余弦算法[9]等,这些方法虽然可以定位光谱峰,但对光谱质量有一定要求,并且在重叠峰的估计与定位上存在偏差。
上述方法大多只能完成单项预处理任务,在串行运行时会出现误差的积累。但是随着深度学习的不断发展,神经网络已经被证明可以有效的抑制噪声、校正基线[10-12]和估计谱峰,这使多项预处理任务同时处理成为可能。因此,本工作提出了一种卷积神经网络(CNN),该网络可以同时实现光谱去噪、基线校正和谱峰定位等任务,可以有效的提高重建光谱的质量。
1 算法原理及结构
1.1 光谱线型函数
在光谱的形成过程中,发光粒子不同的运动速度、能级结构和它们间的相互撞击会使光谱形成不同的线型,即Gauss线型、Lorenz线型和Voigt线型。假设λ0是光谱的中心波长,αL是Gauss线型或Lorenz线型的半峰全宽,α是高斯线型的峰值,a是一个取值范围在(0,1)之间的参数,所以上述三种线型的可以表示为
(1)
(2)
V(λ)=aG(λ)+(1-a)Q(λ)
(3)
在具体应用中,大部分实验得到的光谱峰均可以由三种光谱线型表示,因此在模拟实验和提出网络的训练中使用由上式合成的模拟光谱加入训练集和测试集,不仅可以有效的提高数据集中样本的多样性,而且会提高光谱预处理的效果。
1.2 一维卷积网络
卷积神经网络已经在计算机视觉领域取得成功。为了光谱预处理,本工作选择了一维卷积网络,在卷积神经网络中有多种操作算子。选择了卷积层(Conv),激活函数,批归一化层(batch normalization,BN),最大池化层(max pooling,MP),上采样层(up sample,US),多尺度融合层(multiscale fusion,MF)等算子。在CNN中,最重要的两个算子为Conv和MP。其中,Conv可以提取光谱特征,是CNN的基础;MP可以减少特征冗余,加快网络收敛。本文采用线性整流单元函数(rectified linear unit function,ReLU)作为激活函数。
1.3 网络结构
光谱噪声属于高通信号具有随机性,光谱基线属于低通信号,光谱特征峰属于高通信号且具有二阶稀疏性。根据这些特点,本工作提出的卷积神经网络的网络结构如图1所示。
图1 网络的结构Fig.1 The structure of proposed CNN
该网络由基线校正和去噪模块和光谱峰检测模块组成,基线校正和去噪模块目的是移除光谱中的噪声和基线,并为光谱峰值检测提供高质量光谱;光谱峰检测模块的是为了估计光谱峰位置,并依据光谱峰的位置反作用于去噪和基线校正模块。
图1红框是去噪和基线校正模块,该模块是一个前馈网络,由Conv,ReLu和BN构成。在实际测试中层数较深的网络可以获得较好的效果,但是会出现过拟合的现象并且运行时间较长。为了防止过拟合现象,加入Dropout策略;为了减少运行时间,通过多次实验确定了如图1所示的6层结构。如前所述,大部分光谱峰都是由三种线型函数组成,理论上可以根据光谱峰的位置、峰高和半峰宽等信息,通过拟合的方法得到无噪声无基线的光谱。因此在设计网络的时候,加入光谱峰的位置信息可以指导网络在光谱峰处尽可能多的保存光谱数据、防止过平滑和基线的过扣除,这样不仅会缩短训练时间,而且会防止网络产生过去噪、损失光谱精度等问题。相比于光谱峰的位置,光谱的峰高和半峰宽受噪声影响较大,为了防止错误估计带来的问题,在设计网络时仅加入光谱峰的位置信息。
图1黑框是光谱峰检测模块,该模块是多特征融合网络。因为光谱峰与噪声同属于高通信号,因此采用两种不同的尺度检测光谱峰。通过多次实验得到大尺寸网络和小尺寸网络的层数。大尺寸的网络运行速度较快,但是对弱峰和重叠峰存在一定误判和漏判,因此又使用最大池化来估计光谱峰位置;小尺度的网络精度较高,但运行时间较慢,因此使用卷积层,激活函数和批归一化来估计光谱峰位置。经过多尺度特征融合和卷积层后,可以获得光谱峰的位置。其中,在大尺度网络中加入上采样层,可以使各层得到的特征与原始光谱的尺寸一致,这样不仅可以减小对样本的预处理,而且可以减少训练时间。
2 实验部分
2.1 数据准备
网络训练时,将不同温度、湿度以及光谱仪预热时间得到的未处理的光谱作为受到噪声污染的光谱,在计量检定规程JJG1034指定的温度和湿度下,使用中国计量院标准装置获取的光谱作为理想光谱,并加入模拟光谱,对网络进行训练。
选择了离散小波硬阈值(DWT)和SG滤波来对比本网络的去噪效果,选择了文献[6]和文献[8]作为对比方法验证本网络的基线校正效果,选择了三阶导数法(TD)和文献[10]来说明光谱峰定位的效果。
为了简洁地表出去噪和基线校正方法,用DWT+[6]表示使用DWT去噪并使用文献[6]提出的方法移除基线;SG+[6]表示使用SG去噪和文献[6]的方法移除基线;DWT+[8]表示使用DWT去噪和文献[8]的方法移除基线;SG+[8]表示使用SG滤波去噪和文献[8]的方法移除基线。均方根误差(RMSE)和拟合优度(GFC)作为评价指标,RMSE越小,表示重建光谱质量越高,GFC越接近1,光谱重建质量越高。
2.2 仿真实验
因为实际中不存在理想光谱,因此根据式(1)、式(2)和式(3)获取的模拟光谱,并随机添加噪声和基线,可以精确的评估网络的性能。首先对网络的去噪能力进行分析。因为环境和仪器给光谱带来的噪声可以认为是相互独立的,根据中心极限定理,光谱噪声服从高斯分布,因此加入信噪比为50,40,30,20和10 dB的高斯白噪声,结果如图2。
图2 光谱去噪结果(a):RMSE;(b):GFCFig.2 The result of spectral denoising(a):RMSE;(b):GFC
图2(a)是去噪后的RMSE,(b)是GFC。可以看到随着添加噪声信噪比的增加,去噪后的光谱与理想光谱越吻合,本文提出的网络在光谱去噪任务中可以取得较好的结果。
因为高斯函数具有上升和下降两个过程,可以描述大多数基线,因此在模拟光谱中加入峰值分别为0.1,0.2,0.3,0.4,0.5和0.6的高斯基线。基线校正结果如图3所示。
图3 基线校正的结果(a):RMSE;(b):GFCFig.3 The result of baseline correction(a):RMSE;(b):GFC
如图3所示,图3(a)是去噪后的RMSE,(b)是GFC。可以看到随着基线峰值的增加,重建光谱与理想光谱越吻合,相比于文献[6]和文献[8],本文提出的网络在基线校正中可以取得较好的结果。
最后验证同时移除噪声和基线效果,在添加峰值为0.2的光谱基线后,分别添加信噪比为0,10,20,30和40 dB的高斯白噪声,使用DWT+[6],DTCWT+[8],SG+[6]和SG+[8]四种组合移除噪声和基线。结果如表1所示。
根据表1,DWT去噪算法效果较差,而提出的算法效果最优,尤其添加信噪比为0 dB的高斯白噪声和高斯基线时,本网络的RMSE比其他方法小了0.407,说明光谱峰定位在噪声抑制和基线校正的过程中有一定作用。为了更直观的表示噪声抑制和基线校正的能力,图4是添加0 dB的高斯噪声和基线后的结果。
图4 去噪和基线校正的效果(a):噪声和Ours对比;(b):DWT+[6],DWT+[8]和Ours;(c):SG+[6],SG+[8]和OursFig.4 Effect of denoising and baseline correction(a):Noise and Ours;(b):DWT+[6],DWT+[8] and Ours;(c):SG+[6],SG+[8] and Ouss
表1 去噪和基线校正结果(RMSEGFC)Table.1 The result of denoising and baseline correction(RMSEGFC)
在光谱峰定位方面,因为TD和文献[10]没有去噪和基线校正的过程,在强噪声和基线下,TD和文献[10]存在较大的误差,因此在无噪声的模拟光谱上进行光谱峰定位,结果如表2。
表2 光谱峰检测结果Table 2 The result of spectrum peak detection
根据表2,在理想无噪声无基线的情况下,TD在较弱的重叠峰识别中存在问题,文献[10]定位能力稍差,本文提出的网络效果最好。
综上,本文提出的网络不仅可以同时对光谱进行去噪、基线校正和光谱峰定位,而且相比于传统算法,该网络在去噪、基线校正和光谱定位等方面效果更好。
2.3 在实测光谱中的应用
使用偏最小二乘法对光谱进行定量分析,以标准仪器测量的玉米的近红外光谱和每条光谱对应的水分、油等成分的浓度为样本,共有80条光谱。实验中,对每条光谱添加信噪比为70 dB噪声和基线,使用估计浓度与测量浓度的均方根误差作为依据,结果如表3。
表3 定量分析的均方根误差Table 3 RMSE of quantitative analysis
根据表3,通过对水分、油等物质浓度估计可以看出,提出的网络在光谱的定量分析中,可以取得最好的结果。证明了提出网络具有较强的使用价值。
3 结 论
提出一种可以同时完成光谱去噪、基线校正和谱峰定位的卷积神经网络,不仅提高了预处理任务的精度,而且解决了光谱预处理中这些预处理算法的先后顺序的问题,避免了各种算法串行运行导致误差累积的问题。仿真实验证明,相比于传统的预处理算法,本文提出的网络不仅可以得到高质量的光谱,而且在光谱的定量分析中可以获得更准确的结果。