Analysis of Mie scattering spectrum based on guided filtering
-
摘要: 为提高白光散射法反演粒子粒径精度,消除散射谱噪声,使用一维引导滤波对不同角度的Mie散射光谱数据进行滤波,并分析了引导滤波的特性。为解决引导数据引起的局部噪声问题,提出了小波-引导滤波联合算法。在小散射角时,引导滤波的结果与小波滤波类似,但在大散射角时,引导滤波的效果要比小波滤波好,并且滤除了脉冲噪声。小波-引导联合滤波的结果在15°附近与引导滤波相同,在45°到90°时的滤波效果明显比单独的小波滤波或引导滤波效果好,并且去除了由引导数据引起的局部噪声。Abstract: In order to improve the accuracy of particle size inversion, eliminate the scattering spectrum noise, the Mie scattering spectrum data of different angles were filtered by one dimensional guided filter, and the characteristics of the guided filter were analyzed. In order to solve the problem of local noise caused by the guidance data, a wavelet-guided filtering algorithm was proposed. The results show that the filtering result is similar to that of the wavelet filter in the small scattering angle, but the filtering effect is better than the wavelet filter in the large scattering angle, and the pulse noise may be filtered out. The result of wavelet-guided joint filtering is the same as that of the guided filter at 15°, the filtering effect is better than that of the wavelet filter or the guided filter at 45° to 90°, and the local noise caused by the guidance data can be removed.
-
引言
在光谱数据处理技术中,一般要对原始信号进行滤波,通常采用的滤波算法是傅里叶变换、低通滤波、卡尔曼滤波、中值滤波、高斯滤波、双边滤波和小波滤波等。其中,傅里叶变换在差分吸收光谱的滤波中广泛应用,但不适用于Mie散射的光谱数据;低通滤波器的设计虽然比较简单,但会引起严重失真,低通滤波器适用于滤除脉冲噪声的环境;卡尔曼滤波不适用于静态的光谱数据;中值滤波[1]和高斯滤波[2]也只适用于平滑滤波;双边滤波[3]可以在消除噪声的同时保持数据的局部特征,但它在数据信噪比过小的情况下也会失效;小波滤波的滤波效果比以上各种算法更具有优越性[4],利用小波滤波不仅保持了傅里叶变换的优点而且也满足了局部性的要求。肖锦蓉[5]用小波滤波法处理颗粒散射光谱信号,反演颗粒分布,取得较好效果,在大散射角情况下,小波滤波效果仍不是很好。以上各种滤波算法都无法在大的散射角下(75°)给出良好的滤波效果。He等人[6]在2010年提出了引导滤波(Guided filter),利用它对大量的室外无雾图像进行分析得到一种简单有效的规律,在去雾图像处理中取得了良好的效果。引导滤波可以在平滑图像的同时保持图像的边缘特性[7-8],在二维图像滤波上得到广泛使用[9-11]。基于此,我们利用引导滤波对光谱数据进行处理,并将小波滤波与引导滤波结合成小波-引导联合滤波算法,这种联合滤波法比小波滤波与引导滤波单独处理的结果更为有效。
1 引导滤波算法
本文目的是对颗粒的原始散射光谱数据进行处理,从而提高颗粒粒径反演的精度。光谱数据与一般的二维图像有很大不同,光谱数据是一维数据,其一维像素坐标对应着波长,光谱强度对应着图像的亮度。
假设光谱数据函数的输出与输入在一个一维窗口内满足如下局部线性关系:
$$ {q_i} = {a_k}{I_i} + {b_k}, \forall i \in {w_k} $$ (1) 其中:q是输出数据的光谱强度值; I是输入引导数据的光谱强度值; i和k是波长索引; wk是中心位于第k波长处的窗口域; ak和bk是当窗口中心位于第k波长时局部线性函数的斜率和截距。
我们利用线性回归法来求局部线性函数的系数,期望拟合的局部函数输出值q与真实待滤波数据p之间的差距最小。定义误差函数如下:
$$ E({a_{kp}}, {b_k}) = \sum\limits_{i \in {w_k}} {({{({a_k}{I_i} + {b_k} - {P_i})}^2} + {\rm{ \mathsf{ ε} }}a_k^2)} $$ (2) (2) 式中:Pi是待滤波数据的光谱强度值; ak之前的系数ε是调节滤波器滤波效果的重要参数,为了防止ak过大。上式分别对ak与bk求导:
$$ \left\{ \begin{array}{l} \frac{{\partial E}}{{\partial {a_k}}} = \sum\limits_{i \in {w_k}} {2(I_i^2 + {\rm{ \mathsf{ ε} }}){a_k} + 2{I_i}{b_k} - 2{I_i}{P_i}} \\ \frac{{\partial E}}{{\partial {b_k}}} = \sum\limits_{i \in {w_k}} {2{a_k}{I_i} + 2{b_k} - 2{P_i}} \end{array} \right. $$ (3) 为求极小值,令
$$ \left\{ \begin{array}{l} \frac{{\partial E}}{{\partial {a_k}}} = 0\\ \frac{{\partial E}}{{\partial {b_k}}} = 0 \end{array} \right. $$ (4) 解得:
$$ \left\{ \begin{array}{l} {a_k} = \frac{{\frac{1}{{\left| w \right|}}\sum\limits_{i \in {w_k}} {{I_i}{P_i} - {\mu _k}{{\bar p}_k}} }}{{{\sigma ^2}_k + {\rm{ \mathsf{ ε} }}}}\\ {b_k} = {{\bar p}_k} - {a_k}{\mu _k} \end{array} \right. $$ (5) 其中:μk是引导函数光谱强度I在窗口wk中的平均值; σk2是I在窗口wk中的方差; |w|是窗口wk中波长的的数量; pk是待滤波光谱强度P在窗口wk中的平均值。
实际计算每个窗口的拟合函数的系数时,一个波长点会被多个窗口包含,即每个波长的强度会被多个拟合函数赋值[12]。因此,要具体求某一波长点的输出强度值时,只需将所有包含该波长的拟合函数值平均,由此得到第i波长的光强度值:
$$ {q_i} = \frac{1}{{\left| w \right|}}\sum\limits_{k:i \in {w_k}} {({a_k}{I_i} + {b_k})} = {{\bar a}_k}{I_i} + {{\bar b}_k} $$ (6) 2 基于Mie散射的水溶液光谱数据
Mie散射法测量水质的实验中测得的散射光谱数据如下图 1所示,图 1中三坐标轴分别代表波长、散射角和光强。图 1中的数据是2 μm球形粒子在15°、30°、45°、60°、75°、90°下测得的散射光谱图。从图 1中可以看出,随着散射角的增大,信噪比也随之减小,散射角接近于90°时,信号的曲线特征被噪声掩盖。在每个角度下的第1个波峰附近都有一个脉冲噪声,它们的幅值在同一数量级下,此噪声不随散射角而变化,这是由实验设备本身引起的噪声。如果直接对采样的数据进行粒径反演分析,得到结果的误差是很大的,所以对此数据进行预先滤波是非常有必须的。
3 滤波结果及分析
3.1 引导滤波结果
图 2的光谱图对应图 1中散射角为15°时的光谱曲线,图 3的数据是由散射角为0°时,即透射光的光谱数据进行一定的处理得到。对光谱仪初始测得的数据,经压缩平移后得出图 3所示的引导数据曲线,引导数据的噪声相比原始数据的噪声要小很多。利用图 3中的引导数据对图 2中光谱数据进行不同窗口尺度下的滤波,其滤波效果如图 4所示。
从图 2中可以看出光谱仪捕获的原始数据有严重的噪声,在散射测量中,光强随着方位角的增大而减弱,随机噪声也随之突显出来。比较图 2与图 4可知,图 4中的三组数据滤波后比图 2要光滑,达到了滤波效果。从图 4中可以看出,随着窗口尺寸的减小,数据的细节突显得越明细。尤其是在550 nm~600 nm之间的一个小峰,在窗口尺寸为100 nm时不明显,当窗口尺寸为50 nm时,小峰有些凸起,当窗口尺寸为20 nm时,小峰可以清晰地看到。由此说明窗口的尺寸影响了最终数据的光滑程度。图 5是相同窗口尺寸下不同步长(窗口在计算时每次移动的距离)滤波后的数据。
从图 5中可以看出,在同样窗口尺寸下,步长越小越容易体现出数据的局部特征,而在算法上大的步长容易忽略400 nm与740 nm处的边缘数据,这点从90 nm的步长的滤波数据中就可以体现出来。如果步长过小则无法滤除局部数据噪声,如果步长过大则容易忽略局部特征,对于边缘数据处理不当。
3.2 算法比较
图 1中的散射角为15°、60°和90°的原始光谱数据具有不同的噪声等级,对它们进行小波滤波与引导滤波,分别得到图 6、7、8对应的效果。
图 6中的原始数据为15°下散射光强的光谱数据,其对应图 1中的15°谱线,噪声比较低。小波滤波与引导滤波的结果大致相同,但在引导滤波下的细节要比小波滤波明显。这是由于引导滤波具有更好的局部特征效果, 即当输入光谱曲线有导函数时,输出也有类似的导函数,说明引导滤波具有边缘保持特性。
图 7的原始数据为60°下散射光强的光谱图,其对应图 1中的60°谱线,此图中的信噪比相比15°时要低些。从图上看小波滤波的曲线更光滑些,而引导滤波的曲线更粗糙,主要体现在550 nm~600 nm之间的一段区域。这是由于图 3中的引导数据在此区域内也是粗糙的,但在其他部分可以看出小波滤波没有的细节。更重要的是,小波滤波没能滤去450 nm~500 nm之间的一个脉冲噪声,而引导滤波可以滤去,体现了小波滤波与引导滤波之间的差距。
图 8中的原始数据是在90°下测量到的散射光谱,其对应图 1中的90°谱线,这是个极端的情况,噪声已将原有的信号淹没了。这里,小波滤波未能体现出信号的局部特征,而引导滤波可以将信号各部分特征提取出来,尤其是在500 nm附近的波谷与500 nm~550 nm附近的波峰,在450 nm~500 nm处的小波峰也能体现出来,这时候引导滤波能体现明显的优势。
从图 6~8可以看出,引导滤波在低信号高噪声的情况下比小波滤波更有优势,对信号的局部特征提取更明显,小波滤波在信噪比较低时会引入脉冲噪声。
3.3 小波修正的引导滤波
从图 7与图 8可以看出,引导滤波效果对于引导数据的选取有一定的依赖性。图 7~8中的曲线在550 nm~600 nm处会有一小段噪声信号,这里并不是体现了数据的局部特征,而是引导数据引入的噪声,在图 3中可以看出引导数据在550 nm~600 nm处比较粗糙。对于引导数据先用小波变换处理,使得引导数据形成的曲线更光滑,再将其作为新的引导数据,代入(5)式与(6)式计算,得出滤波结果,不妨称这种方法为小波-引导联合滤波。
图 3经过小波滤波后得出新的引导数据,如图 9所示。对比图 3与图 9,图 9中的曲线要比图 3的曲线更光滑,并且将550 nm~600 nm段的噪声也滤去了。对于散射角为15°、60°、90°的原始数据采用小波引导滤波后的结果分别如图 10、11、12所示。
图 10中的原始数据是15°下测得的散射光谱,经过小波-引导滤波后得出了新的滤波效果图。对比图 6,经过小波-引导滤波的数据更为光滑,这点在图 11中更能够体现出来。
在图 11中,原始数据为60°下测得的散射光谱。对比图 11中的小波-引导滤波与图 7中的引导滤波数据,550 nm~600 nm之间的一段噪声没有在图 11中体现出来。经过小波滤波处理后的引导数据对最终的滤波效果在局部的影响是很大的。引导数据的局部光滑程度决定着最终滤波数据的局部光滑程度。
图 12为90°的原始数据经过小波-引导滤波后的光谱数据。与图 11相同的一点就是经过小波滤波后的引导滤波数据在550 nm~600 nm处的噪声消失了,数据更为光滑。对比图 8,数据的局部特征仍被保留,但引导数据引起的局部噪声消失了。相比小波滤波与引导滤波,小波-引导滤波数据更光滑。
图 13是2 μm粒子各散射角光谱的引导滤波结果,图 14是2μm粒子各散射角光谱的小波-引导联合滤波结果;图 15是5μm粒子的散射光谱原始数据,图 16和图 17分别是5μm粒子各散射角光谱的引导滤波结果和小波-引导联合滤波结果;图 18是8μm粒子的散射光谱原始数据,图 19和图 20分别是8μm粒子各散射角光谱的引导滤波结果和小波-引导联合滤波结果。
从图 10、11、12中和图 13、16、17、19、20都可以看出,在数据的信噪比很高时,引导数据引起的局部噪声在滤波后的数据中影响很小。随着数据的信噪比降低,引导数据的局部噪声在滤波数据中逐步体现出来,所以对于不同的数据,选择合适的引导数据是必要的。
在反演实验中,已知三种粒径(2 μm、5 μm、8 μm)的粒子浓度比例是1:1:1。针对其在90°下的原始数据,分别进行小波滤波、引导滤波和小波-引导滤波,从得出的数据中选取(450 nm、500 nm、550 nm)三波长下的数值,使用Chahine[13]算法分别反演出粒子浓度比, 反演结果列于表 1中。小波滤波下的三种粒径粒子浓度比为0.67:1.08:0.53,与已知比例比较,相对误差为-35%、15%和-55%;引导滤波下的粒子浓度比为0.76:1.19:0.61,相对误差为-24%、19%和-39%;小波-引导滤波反演的粒子浓度比为0.77:1.20:0.62,相对误差分别为-23%、20%和-38%。从误差的结果可以看出,引导滤波在90°下的滤波数据的反演误差比小波滤波要小,小波-引导滤波反演的误差与引导滤波几乎一样。用同样方法,在同样波长下,根据15°和60°的散射光谱数据反演了粒子的浓度比例,结果也列于表 1中。表 2给出了小波滤波、引导滤波和小波-引导滤波三种方法反演粒子浓度比的相对误差。
表 1 三种滤波方法反演的浓度比Table 1. Concentration ratio inverted by 3 filtering methods滤波方法 15°浓度比例 60°浓度比例 90°浓度比例 小波 1.07:1.74:0.71 1.18:1.73:0.84 0.65:1.15:0.45 引导 0.97:1.47:0.74 0.80:1.22:0.65 0.76:1.19:0.61 小波-引导 0.98:1.48:0.75 0.81:1.23:0.66 0.77:1.20:0.62 表 2 反演浓度的相对误差Table 2. Relative error of inversion concentration滤波方法 15°相对误差/% 60°相对误差/% 90°相对误差/% 小波 7 74 -29 18 73 -16 -35 15 -55 引导 -3 47 -26 -20 22 -35 -24 19 -39 小波-引导 -2 48 -25 -19 23 -34 -23 20 -38 4 结论
在散射光谱分析中,使用引导滤波不仅在小散射角下能够达到小波滤波的效果,而且能在较大的散射角下(90°)获得较好的滤波效果,并且能滤除脉冲噪声。在引导滤波中,窗口大小对滤波效果影响较大,窗口尺寸小时,则无法滤除原本的噪声,如果窗口尺寸过大,则会忽略局部特征。窗口移动的步长对滤波效果影响较大,过大的步长不能显示局部特征,过小的步长会使曲线更粗糙,一般步长选择在窗口尺寸一半的附近比较合适。在数据信噪比较低时, 引导滤波后的数据也会较粗糙,利用小波-引导滤波的结果比引导滤波更好,消除了低信噪比下的局部噪声。根据引导滤波和小波-引导滤波的数据反演粒子浓度的误差明显比小波数据反演的误差小。
-
表 1 三种滤波方法反演的浓度比
Table 1 Concentration ratio inverted by 3 filtering methods
滤波方法 15°浓度比例 60°浓度比例 90°浓度比例 小波 1.07:1.74:0.71 1.18:1.73:0.84 0.65:1.15:0.45 引导 0.97:1.47:0.74 0.80:1.22:0.65 0.76:1.19:0.61 小波-引导 0.98:1.48:0.75 0.81:1.23:0.66 0.77:1.20:0.62 表 2 反演浓度的相对误差
Table 2 Relative error of inversion concentration
滤波方法 15°相对误差/% 60°相对误差/% 90°相对误差/% 小波 7 74 -29 18 73 -16 -35 15 -55 引导 -3 47 -26 -20 22 -35 -24 19 -39 小波-引导 -2 48 -25 -19 23 -34 -23 20 -38 -
[1] Nodes T, Gallagher N C.Median filters: some modifications and their properties[J].IEEE Transactions on Acoustics Speech and Signal Processing, 1982, 30(5):739-746. doi: 10.1109/TASSP.1982.1163951
[2] Ito K, Xiong K.Gaussian filters for nonlinear filtering problems[J].IEEE Transactions on Automatic Control, 2000, 45(5):910-927. doi: 10.1109/9.855552
[3] Zhang B, Allebach J P.Adaptive bilateral filter for sharpness enhancement and noise removal[J].IEEE Transactions on Image Processing, 2008, 7(5):664-678. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=17422170a42e4b0fab2a3af40e93a2d5
[4] Cheng Hailin, Sun Jie, Ma Ranran, et al.Noise reducing filter design for the spectra data processing[J].Journal of Tianjin University of Technology, 2012, 28(1):45-50. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=tjlgxyxb201201011
[5] 肖锦荣.悬浮颗粒物粒径分布光学测量及反演方法研究[D].南京: 南京信息工程大学, 2016. Xiao Jinrong.Study on optical measurement and inversion method for particle size distribution of suspended particles[D].Nanjing: Nanjing University of Information Science & Technology, 2016.
[6] Daniilidis K, Maragos P, Paragios N, et al.ECCV 2010, Part Ⅰ, LNCS 6311[C].Berlin : Springer-Verlag, 2010.
[7] 钱小燕.引导滤波的红外图像预处理算法[J].科学技术与工程, 2015, 15(21):32-37. doi: 10.3969/j.issn.1671-1815.2015.21.007 Qian Xiaoyan.Infrared preprocessing method based on guided image filtering[J].Science Technology and Engineering, 2015, 15(21):32-37. doi: 10.3969/j.issn.1671-1815.2015.21.007
[8] 龙鹏, 鲁华祥.LOG边缘算子改进的加权引导滤波算法[J].计算机应用, 2015, 35(9): 2661-2665. http://d.old.wanfangdata.com.cn/Periodical/jsjyy201509049 Long Peng, Lu Huaxiang.Weighted guided image filtering algorithm using Laplacian-of-Gaussian edge detector[J].Journal of Computer Applications, 2015, 35(9): 2661-2665. http://d.old.wanfangdata.com.cn/Periodical/jsjyy201509049
[9] 王卫星, 肖翔, 陈良琴.结合最小滤波和引导滤波的暗原色去雾[J].光学精密工程, 2015, 23(7): 2100-2108. http://d.old.wanfangdata.com.cn/Periodical/gxjmgc201507037 Wang Weixing, Xiao Xiang, Chen Liangqin.Image dark channel prior haze removal based on minimum filtering and guided filtering[J].Optics and Precision Engineering, 2015, 23(7): 2100-2108. http://d.old.wanfangdata.com.cn/Periodical/gxjmgc201507037
[10] 方华猛, 易本顺, 赵继勇.基于主成分分析和引导滤波的色调映射算法[J].光电子·激光, 2014, 25(12): 2423-2429 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=gdzjg201412026 Fang Huameng, Yi Benshun, Zhao Jiyong.A tone mapping algorithm based on PCA and guided filter[J].Journal of Optoelectronics · Laser, 2014, 25(12): 2423-2429. http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=gdzjg201412026
[11] 王峰.图像引导滤波器在单幅图像复原中的应用[D].合肥: 合肥工业大学, 2012. Wang Feng.The application of guided image filter in single image restoration[D].Hefei: HeFei University of Technology, 2012.
[12] 王新磊, 何凯, 王晓文.引导滤波算法的CUDA加速实现[J].吉林大学学报:信息科学版, 2016, 34(1): 104-110. http://d.old.wanfangdata.com.cn/Periodical/ccydxyxb201601017 Wang Xinlei, He Kai, Wang Xiaowen.Speed-up implementation of guided filtering approach based on CUDA[J].Journal of Jilin University:Information Science Edition, 2016, 34(1): 104-110. http://d.old.wanfangdata.com.cn/Periodical/ccydxyxb201601017
[13] 曹丽霞, 赵军, 孔明.基于改进的Chahine迭代算法的粒径分布反演[J].红外与激光工程, 2015, 44(9): 2837-2843. doi: 10.3969/j.issn.1007-2276.2015.09.051 Cao Lixia, Zhao Jun, Kong Ming, et al.Inversion of particle size distribution based on improved Chahine algorithm[J].Infrared and Laser Engineering, 2015, 44(9): 2837-2843. doi: 10.3969/j.issn.1007-2276.2015.09.051
-
期刊类型引用(1)
1. 付健,赵建辉,李帆,张馗. 基于水幕的舰船红外干扰策略研究. 应用光学. 2021(03): 404-412 . 本站查看
其他类型引用(0)