1. 引言
X射线衍射在研究金属和合金的晶体结构等方面具有广泛的应用,通过分析XRD图谱获得材料的成分,以及材料的内部原子或分子的结构等信息。但在XRD分析的信号脉冲和数据采集实验中,实验源干扰众多,存在噪声,在寻峰过程中出现假峰和丢失弱峰[1] ,对定性定量分析产生不利,因此需要对实验数据降噪处理。
小波阈值去噪算法已在诸多实践应用中得到良好的去噪效果,现在已成为主流的去噪方法之一[2] 。1995年,D.L. Donoho和Johnstone在小波变换的基础上提出了小波阈值去噪的概念[3] ,即软阈值和硬阈值去噪,此后,Gao和Bruce提出半软阈值函数去噪算法[4] 。但是硬阈值函数不连续,采用软阈值算法去噪后的信号方差较大。为了克服这些缺点,本文在文献[5] 和[6] 中阈值函数的基础上,提出了一种新的阈值函数。
2. 小波阈值去噪
小波阈值去噪的主要理论依据是:小波变换特别是正交小波变换具有很强的去系数相关性,它能够使信号的能量集中在一些大的小波系数中,噪声的能量分布于整个小波域中,也就是信号的小波系数幅值要大于噪声的系数幅值。因此,可以选用一个适当的阈值,把信号系数保留,而使大部分噪声系数减少至零。小波阈值去噪的过程分为下面三个步骤:
(1) 信号小波分解:选择合适的小波基函数和分解层数,对含噪信号作小波分解,得到小波系数。
(2) 高频系数阈值化:选择合适的阈值,对高频系数进行阈值处理,得到新的小波系数。
(3) 重构信号:用低频系数和阈值化后的高频系数进行小波重构,得到估计信号,即去噪后的信号。
传统的阈值函数主要有硬阈值和软阈值,如下:
(1) 硬阈值函数

(2) 软阈值函数

其中,阈值
的常用确定方法有:全局统一阈值,启发式阈值和stein无偏似然估计阈值等。虽然硬阈值和软阈值去噪算法在实际中有着广泛的应用,但它们本身存在着一些缺陷。硬阈值函数在
处不连续,所得到的估计信号会产生附加振荡,不具有同原始信号一样的光滑性。软阈值函数虽然连续,但当
时,
与
总存在恒定偏差,直接影响着信号的真实程度[7] 。
3. 新阈值函数的构建
为了克服硬阈值和软阈值函数的缺点,文献[5] [6] 提出了两种改进的阈值函数,如下所示:
(1) 函数1

其中

(2) 函数2

函数1和函数2中的阈值
为全局阈值,即
。
本文在阈值函数1和阈值函数2的基础上提出了一种新的阈值函数:

当
时,
,得到
,即此时
的值等于软阈值的估计值。
当
时,
,
,即
在
处是连续的。
当
时,
,
,克服了软阈值函数
与
总是存在恒定偏差的缺点。
同时为了克服全局阈值没有随着分解尺度变化而变化的缺点,新的阈值函数中采用自适应的阈值:

4. 仿真实验
为了验证新阈值函数的去噪效果,针对含噪的Droppler信号,用软阈值、硬阈值和新阈值函数进行MATLAB仿真实验。在去噪时,选取小波基为db4,分解层数为4,软、硬阈值函数选取全局阈值,新阈值函数选取上述自适应阈值。Droppler信号的去噪效果如图1所示。
信号去噪效果可以用信噪比(SNR)和均方误差(MSE)来描述,表1是各阈值函数去噪算法的信噪比和均方差。
为了进一步验证新阈值函数的去噪效果,选取分解层数2~8,比较三种去噪算法的信噪比和均方差,得到图2。
通过对Droppler信号的仿真实验表明,新阈值函数在信噪比和均方差方面都有提高。由图2看出,新阈值去噪算法在分解层数为6时达到最优效果,具有更高的应用价值,各阈值去噪算法的信噪比和均方差如表2所示。
将新的阈值函数用到FeN元素图谱去噪中,选用小波基为db4,分解层数为3,得到如图3结果。

Figure 1. Comparison of waves after denoising by three threshold functions
图1. 各阈值函数对Droppler信号去噪效果图

Figure 3. The signal denoised by the three denoising algorithms
图3. 各阈值函数对FeN元素图谱去噪结果
为了表明新阈值函数在FeN含噪图谱去噪中的优越性,我们做出含噪信号与去噪后信号的差值图,即在去噪过程中被当做噪声滤去的信号,如图4。
用新阈值去噪算法对图4中的信号进行去噪,判断三种去噪算法丢失的细节信息,得到图5。
从图3中可以看出,硬阈值函数去噪后的光谱图含有较多噪声,软阈值去噪后的光谱图中峰值减小。从图5中可以看出,软阈值和硬阈值算法在消噪中都丢失了一些细节信息,而采用新阈值函数去噪既消除了部分噪声,又保留了信号的原始峰形特征,并且没有丢掉细节信息,有利于光谱的定性和定量分析。
表1. 信噪比和均方差比较
表2. 三种去噪算法的信噪比和均方差比较

Figure 4. The denoised part of noisy signal
图4. 去噪中消去的信号部分

Figure 5. The lost signal details of the three denoising algorithms
图5. 三种去噪算法丢失的细节信息
5. 结论
本文提出的阈值函数既具有和软阈值函数一样的连续性,又能减少去噪误差,MATLAB的仿真实验表明了,新的阈值函数在SNR和MSE上都有改进。在XRD图谱的去噪中,有效消除了噪声,同时有用特征信息被很好的保留,为后面光谱的分析提供了有利条件。