由于心電圖(ECG)信號的特點以及在采集過程中所受到的干擾影響,ECG信號去噪已成為ECG信號智能分析的基礎。本文在基于小波變換方法的基礎上,對閾值參數進行改進,提出了與噪聲更加匹配的閾值表達式。利用改進的閾值對離散分解后的小波系數進行處理,通過小波逆變換重構信號,能夠更加準確地去除噪聲的小波系數,保留更多原信號小波系數。采用MIT-BIH中的數據進行實驗,結果表明,改進方法較之現有小波閾值去噪方法,能夠達到更好的去噪效果。
引用本文: 劉秀玲, 喬磊, 楊建利, 董斌, 王洪瑞. 改進小波閾值法用于心電信號去噪. 生物醫學工程學雜志, 2014, 31(3): 511-515. doi: 10.7507/1001-5515.20140095 復制
引言
心臟病是威脅人類健康的最嚴重的疾病之一,其診斷分析依據主要是通過記錄心電信號的心電圖(electrocardiogram,ECG)。然而,ECG信號在采集過程中會受到噪聲干擾而產生失真變形,導致特征信息成分難以識別,從而影響疾病的診斷。因此,ECG信號的準確獲取成為了ECG信號智能分析的基礎。
大量的去噪方法已被應用到ECG信號去噪中,包括主成分分析(principal component analysis,PCA)、獨立成分分析(independent component analysis,ICA)、神經網絡(Neural Networks,NNs)、自適應濾波器和小波變換等 [1-9]。利用PCA、ICA或NNs方法,ECG信號和噪聲的統計模型首先被提出來,然后其他頻帶的噪聲就被相應地去除掉[10-13]。雖然PCA、ICA以及基于NNs的方法在帶內噪聲濾波方面有明顯的優勢,但其派生的統計模型不僅是隨機產生的而且對于ECG信號和噪聲的微小變化都非常敏感,所以不適合用于ECG信號的整個周期。自適應濾波器的局限在于參考信號同時也被加入到了ECG信號當中,相當于又添加了新的干擾[14]。相比較而言,小波變換在ECG信號去噪中更為有效,其在漸近最優性,空間適應性和計算效率方面有明顯優勢[15]。通常認為信號所對應的小波系數攜帶重要的信息且大于噪聲的小波系數,然后將小波系數逐層與選定的閾值作比較,將噪聲部分濾除,最后經過小波逆變換得到重構信號。
在重構過程中去噪重構特性直接決定重構信號與原信號的相似程度,而閾值的選擇也會影響去噪重構特性。在這一過程中,閾值參數的設定起著至關重要的作用。本文在前人研究的基礎上,對原有的閾值參數加以改進,提出了與噪聲更加匹配的閾值表達式,從而能夠更加準確地去除噪聲的小波系數,保留更多原信號小波系數。采用MIT-BIH中的心電數據進行了仿真和對比實驗,結果表明改進的閾值較之現有的閾值在ECG去噪方面能夠達到更好的去噪效果。
1 小波變換閾值去噪法
1.1 小波變換基本原理
小波變換是空間(時間)和頻率的局部變換,能夠有效地從信號中提取信息。通過伸縮和平移等運算功能可對函數或信號進行多尺度的細化分析,其定義為
${{\psi }_{i,k}}\left( x \right)={{2}^{-i2}}\psi ({{2}^{-i}}x-k),$ |
其中ψ(x)是小波函數,i和k都是整數,對于一個給定的信號f(x),其離散小波變換為
$\begin{align} & f\left( x \right)=\sum\limits_{k=-\infty }^{\infty }{{{A}_{j}}\varphi \left( {{2}^{-N}}x-k \right)}+ \\ & \sum\limits_{j=1}^{\infty }{\sum\limits_{k=-\infty }^{\infty }{{{D}_{j}}{{2}^{-j2}}\psi ({{2}^{-j}}x-k)~,}} \\ \end{align}$ |
通常用遞歸方法實現
${{D}_{j}}\left( n \right)=<f,{{\psi }_{j,n}}>=\frac{1}{\sqrt{2}}\sum\limits_{k}{g\left( 2n-k \right){{D}_{j-1}}\left( n \right)},$ |
${{A}_{j}}\left( n \right)=<f,{{\varphi }_{j,n}}>=\frac{1}{\sqrt{2}}\sum\limits_{k}{h\left( 2n-k \right){{D}_{j-1}}\left( n \right)}~,$ |
其中h(n)和g(n)分別是對應的尺度函數φ(x)和小波函數ψ(x)的低通和高通濾波器,分解得到的Dj(n) 和Aj(n)即為小波系數。圖 1是小波分解和重構濾波模型[16]。
1.2 基于小波變換的閾值去噪法
基于小波變換的閾值去噪方法應用最廣泛的是由Donoho等[17]提出的極大極小值閾值和通用閾值。
1.2.1 極大極小值閾值
極大極小值閾值是使用閾值估計值為極大極小風險估計一個函數,在上限允許的范圍內減少常數項的個數。雖然這個估計值不十分準確,但它具有良好的預見性。 極大極小值閾值的構造公式為
$t=\left\{ \begin{align} & {{\sigma }_{k}}\left( 0.3936+0.1829 \right)(log~\left( n \right))\text{ },n <3 \\ & 0\text{ },n>32 \\ \end{align} \right.$ |
其中t是閾值,σk是噪聲信號偏差,σk=,k=1,2,…,n是采樣點數。
1.2.2 通用閾值
通用閾值的目標函數光滑,而且實現了極大極小值閾值方法的高收斂率的特點。但它使均方差(mean square error,MSE)產生了差值和偏置,產生的差值要比偏置更為嚴重。換句話說,通用閾值對信號處理過于平滑[18-20],它的大小為
$t={{\sigma }_{k}}\sqrt{2log\left( n \right)}~,$ |
選定閾值后,采用軟閾值法對小波系數進行處理[21],即

$\hat{\delta }{{~}_{t}}\left( x \right)=\left\{ \begin{align} & sgn\left( x \right)\left| x \right|-t,\left| x \right|\ge {{t}_{i}} \\ & 0,\left| x \right|<{{t}_{i}} \\ \end{align} \right.$ |
其中 Aδ^G t(x)是閾值處理后的信號。
2 改進閾值法的設計
2.1 閾值參數的改進
設有如下觀測信號,即
$y=f({{x}_{i}})+{{\varepsilon }_{i}},i=1,2,\ldots ,n,$ |
其中f(xi)為原始干凈的ECG采樣信號,ε為加性高斯白噪聲,服從N(0,σ2)分布。MSE定義為
$MSE\left( \text{ }\hat{f},f \right)=\frac{1}{n}\sum\limits_{i=1}^{n}{E}\hat{f}\text{ }({{x}_{i}})-f{{({{x}_{i}})}^{2}},$ |
在通用閾值法中,存在與噪聲εj,k如下的關系為
當n→∞,j=0-(J-1),k=1-2j時,
$P\{max|{{\varepsilon }_{j,k}}|>\sqrt{2log\left( n \right)}\}\to \text{ }0,$ |
式(10)體現了閾值的去噪重構特性[17],同時也反映出該閾值決定了MSE,即風險,見式(9)。通用閾值對ECG信號進行了過平滑處理,即許多有用信號被過濾掉了。因此,改進的閾值ti應小于原閾值t,但改進值,若a<2則會破壞去噪重構特性,即
當 n→∞,j=0-(J-1) ,k=1-2j時,
$P\{max|{{\varepsilon }_{j,k}}|>2log\left( n \right)\}\xrightarrow{not}0$ |
去噪的最終目的就是使重構信號與原信號盡可能一樣,那么就要盡可能地減小MSE,又考慮到添加的噪聲服從高斯分布,是指數形式,因此采用指數形式的閾值目的是與噪聲更好的匹配,以達到去噪的效果。為使閾值具有邊帶自適應性,改進的閾值定義為
${{t}_{i}}=\frac{{{\sigma }_{i}}\sqrt{2log\left( n \right)}}{{{e}^{i-1}}},i=1,2,\ldots ,l,$ |
其中l為分解層數,e為自然常數。當i=1時,式(12)為通用閾值表達。
2.2 方法實現
改進小波閾值去噪法的實現過程如下:
(1)先對含噪聲信號y做基于某種小波基的小波變換。小波基的類型有Haar小波、Daubechies(db)小波、Symlets小波等[22-23]。小波基的選取沒有固定的原則,通常是根據經驗和實驗來選擇。考慮到小波基和要處理的ECG信號應具有類似的拓撲結構,本文采用的db6小波進行6尺度分解;
(2)利用本文提出的閾值參數,對小波系數進行軟閾值處理,得出估計小波系數;
(3)利用逆離散小波變換(inverse discrete wavelet transform,IDWT)重構信號,即得去噪后的信號。
3 實驗與結果
本文用到的信號是MIT-BIH ECG信號數據庫中的無噪聲信號,并加入高斯白噪聲作為干擾噪聲。
針對不同方法,在MATLAB環境中進行了多組實驗。圖 2給出了一條ECG信號附加高斯白噪聲后的波形曲線。

圖 2為附加噪聲后的ECG信號。圖 3為應用通用閾值法、極大極小值法和改進閾值法去噪后三者的ECG信號。從波形直觀分析可以看出,圖 3(b)通用閾值處理過的ECG信號與原ECG信號相比,波形已經出現失真,許多有用信號都被濾除掉了。圖 3(c)是極大極小值法,波形保留得比較完整,但與圖 3(d)改進閾值法相比,后者重構的信號更加完整,尤其在波峰波谷處與原ECG信號最為接近,能夠更好地還原原信號的波形。

(a)原始ECG信號;(b)通用閾值法; (c)極大極小值法;(d)改進閾值法
Figure3. ECG denoising by three different techniques(a) original ECG singnal; (b) universal threshold method; (c) minimax threshold method; (d) improved threshold method
為進一步分析,在MIT-BIH ECG信號數據庫中選取了5組ECG信號,編號分別為: 102、103、111、114 和203。對這5組信號分別用通用閾值法、極大極小值法和改進閾值法進行處理,并計算信噪比(signal to noise ratio,SNR)和MSE。從表 1中可以清楚地看出,在輸入SNR相同的情況下,改進閾值法計算的輸出SNR最大。表 2記錄的是在上述條件下得出的MSE,其中改進閾值法的MSE比前兩種都要小。表 1中的數據與圖 3中的圖形也是相吻合的,即具有最大SNR和最小MSE的重構信號,與原信號最接近。它們都為改進閾值法能夠更好的重構ECG信號提供了依據。

此外,本文從MIT-BIH心率失常數據庫中選取三組失真較為嚴重的ECG信號進行實驗,其編號分別為230、234和418。230信號基線漂移較為明顯,234信號P波與QRS波群相連處失真導致不能區分[24],418信號的R波被湮滅。這三組信號是較為典型的失真,也是實際檢測的ECG信號中存在最多的失真,計算SNR和MSE得到表 2中的數據。結果與表相一致,達到了預期的效果。表 2中的數據同時還說明改進閾值法對于這種復雜信號也能夠得到準確結果,具有普遍適用性。

4 結論
本文在小波閾值去噪方法研究的基礎上,對原有的閾值參數加以改進,提出了指數形式的閾值,其與噪聲更好的匹配。它不僅具有邊帶自適應性而且還保持了良好的去噪重構特性。基于MIT-BIH ECG信號數據庫的仿真和對比實驗表明,與通用閾值法和極大極小值法相比,改進閾值方法在SNR和MSE上都是明顯優勢,能夠達到更好的去噪效果。
引言
心臟病是威脅人類健康的最嚴重的疾病之一,其診斷分析依據主要是通過記錄心電信號的心電圖(electrocardiogram,ECG)。然而,ECG信號在采集過程中會受到噪聲干擾而產生失真變形,導致特征信息成分難以識別,從而影響疾病的診斷。因此,ECG信號的準確獲取成為了ECG信號智能分析的基礎。
大量的去噪方法已被應用到ECG信號去噪中,包括主成分分析(principal component analysis,PCA)、獨立成分分析(independent component analysis,ICA)、神經網絡(Neural Networks,NNs)、自適應濾波器和小波變換等 [1-9]。利用PCA、ICA或NNs方法,ECG信號和噪聲的統計模型首先被提出來,然后其他頻帶的噪聲就被相應地去除掉[10-13]。雖然PCA、ICA以及基于NNs的方法在帶內噪聲濾波方面有明顯的優勢,但其派生的統計模型不僅是隨機產生的而且對于ECG信號和噪聲的微小變化都非常敏感,所以不適合用于ECG信號的整個周期。自適應濾波器的局限在于參考信號同時也被加入到了ECG信號當中,相當于又添加了新的干擾[14]。相比較而言,小波變換在ECG信號去噪中更為有效,其在漸近最優性,空間適應性和計算效率方面有明顯優勢[15]。通常認為信號所對應的小波系數攜帶重要的信息且大于噪聲的小波系數,然后將小波系數逐層與選定的閾值作比較,將噪聲部分濾除,最后經過小波逆變換得到重構信號。
在重構過程中去噪重構特性直接決定重構信號與原信號的相似程度,而閾值的選擇也會影響去噪重構特性。在這一過程中,閾值參數的設定起著至關重要的作用。本文在前人研究的基礎上,對原有的閾值參數加以改進,提出了與噪聲更加匹配的閾值表達式,從而能夠更加準確地去除噪聲的小波系數,保留更多原信號小波系數。采用MIT-BIH中的心電數據進行了仿真和對比實驗,結果表明改進的閾值較之現有的閾值在ECG去噪方面能夠達到更好的去噪效果。
1 小波變換閾值去噪法
1.1 小波變換基本原理
小波變換是空間(時間)和頻率的局部變換,能夠有效地從信號中提取信息。通過伸縮和平移等運算功能可對函數或信號進行多尺度的細化分析,其定義為
${{\psi }_{i,k}}\left( x \right)={{2}^{-i2}}\psi ({{2}^{-i}}x-k),$ |
其中ψ(x)是小波函數,i和k都是整數,對于一個給定的信號f(x),其離散小波變換為
$\begin{align} & f\left( x \right)=\sum\limits_{k=-\infty }^{\infty }{{{A}_{j}}\varphi \left( {{2}^{-N}}x-k \right)}+ \\ & \sum\limits_{j=1}^{\infty }{\sum\limits_{k=-\infty }^{\infty }{{{D}_{j}}{{2}^{-j2}}\psi ({{2}^{-j}}x-k)~,}} \\ \end{align}$ |
通常用遞歸方法實現
${{D}_{j}}\left( n \right)=<f,{{\psi }_{j,n}}>=\frac{1}{\sqrt{2}}\sum\limits_{k}{g\left( 2n-k \right){{D}_{j-1}}\left( n \right)},$ |
${{A}_{j}}\left( n \right)=<f,{{\varphi }_{j,n}}>=\frac{1}{\sqrt{2}}\sum\limits_{k}{h\left( 2n-k \right){{D}_{j-1}}\left( n \right)}~,$ |
其中h(n)和g(n)分別是對應的尺度函數φ(x)和小波函數ψ(x)的低通和高通濾波器,分解得到的Dj(n) 和Aj(n)即為小波系數。圖 1是小波分解和重構濾波模型[16]。
1.2 基于小波變換的閾值去噪法
基于小波變換的閾值去噪方法應用最廣泛的是由Donoho等[17]提出的極大極小值閾值和通用閾值。
1.2.1 極大極小值閾值
極大極小值閾值是使用閾值估計值為極大極小風險估計一個函數,在上限允許的范圍內減少常數項的個數。雖然這個估計值不十分準確,但它具有良好的預見性。 極大極小值閾值的構造公式為
$t=\left\{ \begin{align} & {{\sigma }_{k}}\left( 0.3936+0.1829 \right)(log~\left( n \right))\text{ },n <3 \\ & 0\text{ },n>32 \\ \end{align} \right.$ |
其中t是閾值,σk是噪聲信號偏差,σk=,k=1,2,…,n是采樣點數。
1.2.2 通用閾值
通用閾值的目標函數光滑,而且實現了極大極小值閾值方法的高收斂率的特點。但它使均方差(mean square error,MSE)產生了差值和偏置,產生的差值要比偏置更為嚴重。換句話說,通用閾值對信號處理過于平滑[18-20],它的大小為
$t={{\sigma }_{k}}\sqrt{2log\left( n \right)}~,$ |
選定閾值后,采用軟閾值法對小波系數進行處理[21],即

$\hat{\delta }{{~}_{t}}\left( x \right)=\left\{ \begin{align} & sgn\left( x \right)\left| x \right|-t,\left| x \right|\ge {{t}_{i}} \\ & 0,\left| x \right|<{{t}_{i}} \\ \end{align} \right.$ |
其中 Aδ^G t(x)是閾值處理后的信號。
2 改進閾值法的設計
2.1 閾值參數的改進
設有如下觀測信號,即
$y=f({{x}_{i}})+{{\varepsilon }_{i}},i=1,2,\ldots ,n,$ |
其中f(xi)為原始干凈的ECG采樣信號,ε為加性高斯白噪聲,服從N(0,σ2)分布。MSE定義為
$MSE\left( \text{ }\hat{f},f \right)=\frac{1}{n}\sum\limits_{i=1}^{n}{E}\hat{f}\text{ }({{x}_{i}})-f{{({{x}_{i}})}^{2}},$ |
在通用閾值法中,存在與噪聲εj,k如下的關系為
當n→∞,j=0-(J-1),k=1-2j時,
$P\{max|{{\varepsilon }_{j,k}}|>\sqrt{2log\left( n \right)}\}\to \text{ }0,$ |
式(10)體現了閾值的去噪重構特性[17],同時也反映出該閾值決定了MSE,即風險,見式(9)。通用閾值對ECG信號進行了過平滑處理,即許多有用信號被過濾掉了。因此,改進的閾值ti應小于原閾值t,但改進值,若a<2則會破壞去噪重構特性,即
當 n→∞,j=0-(J-1) ,k=1-2j時,
$P\{max|{{\varepsilon }_{j,k}}|>2log\left( n \right)\}\xrightarrow{not}0$ |
去噪的最終目的就是使重構信號與原信號盡可能一樣,那么就要盡可能地減小MSE,又考慮到添加的噪聲服從高斯分布,是指數形式,因此采用指數形式的閾值目的是與噪聲更好的匹配,以達到去噪的效果。為使閾值具有邊帶自適應性,改進的閾值定義為
${{t}_{i}}=\frac{{{\sigma }_{i}}\sqrt{2log\left( n \right)}}{{{e}^{i-1}}},i=1,2,\ldots ,l,$ |
其中l為分解層數,e為自然常數。當i=1時,式(12)為通用閾值表達。
2.2 方法實現
改進小波閾值去噪法的實現過程如下:
(1)先對含噪聲信號y做基于某種小波基的小波變換。小波基的類型有Haar小波、Daubechies(db)小波、Symlets小波等[22-23]。小波基的選取沒有固定的原則,通常是根據經驗和實驗來選擇。考慮到小波基和要處理的ECG信號應具有類似的拓撲結構,本文采用的db6小波進行6尺度分解;
(2)利用本文提出的閾值參數,對小波系數進行軟閾值處理,得出估計小波系數;
(3)利用逆離散小波變換(inverse discrete wavelet transform,IDWT)重構信號,即得去噪后的信號。
3 實驗與結果
本文用到的信號是MIT-BIH ECG信號數據庫中的無噪聲信號,并加入高斯白噪聲作為干擾噪聲。
針對不同方法,在MATLAB環境中進行了多組實驗。圖 2給出了一條ECG信號附加高斯白噪聲后的波形曲線。

圖 2為附加噪聲后的ECG信號。圖 3為應用通用閾值法、極大極小值法和改進閾值法去噪后三者的ECG信號。從波形直觀分析可以看出,圖 3(b)通用閾值處理過的ECG信號與原ECG信號相比,波形已經出現失真,許多有用信號都被濾除掉了。圖 3(c)是極大極小值法,波形保留得比較完整,但與圖 3(d)改進閾值法相比,后者重構的信號更加完整,尤其在波峰波谷處與原ECG信號最為接近,能夠更好地還原原信號的波形。

(a)原始ECG信號;(b)通用閾值法; (c)極大極小值法;(d)改進閾值法
Figure3. ECG denoising by three different techniques(a) original ECG singnal; (b) universal threshold method; (c) minimax threshold method; (d) improved threshold method
為進一步分析,在MIT-BIH ECG信號數據庫中選取了5組ECG信號,編號分別為: 102、103、111、114 和203。對這5組信號分別用通用閾值法、極大極小值法和改進閾值法進行處理,并計算信噪比(signal to noise ratio,SNR)和MSE。從表 1中可以清楚地看出,在輸入SNR相同的情況下,改進閾值法計算的輸出SNR最大。表 2記錄的是在上述條件下得出的MSE,其中改進閾值法的MSE比前兩種都要小。表 1中的數據與圖 3中的圖形也是相吻合的,即具有最大SNR和最小MSE的重構信號,與原信號最接近。它們都為改進閾值法能夠更好的重構ECG信號提供了依據。

此外,本文從MIT-BIH心率失常數據庫中選取三組失真較為嚴重的ECG信號進行實驗,其編號分別為230、234和418。230信號基線漂移較為明顯,234信號P波與QRS波群相連處失真導致不能區分[24],418信號的R波被湮滅。這三組信號是較為典型的失真,也是實際檢測的ECG信號中存在最多的失真,計算SNR和MSE得到表 2中的數據。結果與表相一致,達到了預期的效果。表 2中的數據同時還說明改進閾值法對于這種復雜信號也能夠得到準確結果,具有普遍適用性。

4 結論
本文在小波閾值去噪方法研究的基礎上,對原有的閾值參數加以改進,提出了指數形式的閾值,其與噪聲更好的匹配。它不僅具有邊帶自適應性而且還保持了良好的去噪重構特性。基于MIT-BIH ECG信號數據庫的仿真和對比實驗表明,與通用閾值法和極大極小值法相比,改進閾值方法在SNR和MSE上都是明顯優勢,能夠達到更好的去噪效果。