王晶
摘要:為了對非平穩(wěn)、非連續(xù)的語音信號進行降噪,提出一種基于VMD分解和小波閾值的語音降噪方法。通過仿真信號對比分析了VMD、EMD和EEMD算法對信號分解中存在的偽分量、模態(tài)混疊問題。先用VMD對語音信號進行分解,再利用小波閾值降噪。實驗結果表明,該降噪方法明顯優(yōu)于小波閾值的語音信號降噪、基于EMD和小波閾值的語音信號降噪以及基于EEMD和小波閾值的語音信號降噪。
關鍵詞:變分模態(tài)分解;小波閾值去噪;經驗模態(tài)分解;總體平均模態(tài)分解
DOIDOI:10.11907/rjdk.172283
中圖分類號:TP301文獻標識碼:A文章編號:16727800(2017)010001203
0引言
1998年,Huang N E.等[1]提出了經驗模態(tài)分解(Empirical Mode Decomposition,EMD)算法。EMD作為一種優(yōu)秀的時頻信號分析方法,不僅可以對線性、平穩(wěn)的信號進行分析,也同樣適合對非線性、非平穩(wěn)的信號進行分析。與其它時頻分析方法相比,EMD能更好地反映信號包含的物理意義。對于EMD本身存在的模態(tài)混疊、端點效應等問題,Huang等[2]于2009年提出了總體平均經驗模態(tài)分解(Ensemble Empirical Mode Decomposition,EEMD)算法。EEMD通過給信號添加高斯白噪聲的方法讓信號能均勻分布,雖然一定程度上克服了EMD的模態(tài)混疊問題,但存在嚴重的偽分量。Dragomiretskiy等[3]于2013年提出了一種自適應的、非遞歸的信號分解方法——變分模態(tài)分解(Viational Mode Decomposition,VMD)。實際上,VMD算法就是自適應的維納濾波組,具有有效減少偽分量、模態(tài)混疊現象不明顯等優(yōu)勢,相比于EMD和EEMD有更好的噪聲魯棒性。
國內外眾多研究人員對小波去噪[45]進行了大量研究。小波去噪的關鍵在于找到適合的小波基、分解層數和閾值,將含噪的信號在固定小波基和分解層數上進行小波分解,分解成多個小波系數。這些小波系數與閾值相比,認為大于閾值的小波系數主要由噪聲組成,需去掉;而小于閾值的小波系數主要為有用信號,需保留,對保留下來的小波系數進行重構得到去噪后的信號。
在獲取和傳輸語音信號時難免會被噪聲感染,被感染后的語音信號大大降低了語音識別的準確率。為了有效去除語音信號中的噪聲,本文結合VMD和小波去噪及信號處理優(yōu)勢提出基于VMD和小波閾值的語音信號去噪。仿真實驗結果表明,本文提出的方法在低信噪比的情況下去噪性能優(yōu)于直接用小波閾值去噪、基于EMD和小波閾值去噪以及基于EEMD和小波閾值去噪。
1去噪原理
1.1變分模態(tài)分解算法(VMD)
VMD是2013年由Dragomiretskiy等提出的自適應的、非遞歸的、將信號分解成有限個固有模態(tài)分量(Intrinsic Mode Function,IMF)之和的變分模態(tài)分解方法。
信號通過VMD算法處理被分解成K個IMF,這些固有模態(tài)均滿足文獻[6]中對固有模態(tài)的定義。
對每一個分解得到的模態(tài)都經過以下3個步驟:①通過Hilberthuang變換計算與該模態(tài)相關聯的解析信號;②加入指數項調整模態(tài)的中心頻率,將模態(tài)的頻譜換到基帶上;③將解調信號通過H1高斯平滑處理估計帶寬。
通過上述3個步驟得到一個變分約束問題,為了求得模型的最優(yōu)解引入二次罰函數項α和Lagrange乘子λ。
L({uk},{ωk},λ)=
α∑k‖t[(δ(t)+jπt*uk(t)]e-jωkt‖22+
‖f(t)-∑kuk(t)‖22+[λ(t),f(t)-∑kuk(t)](1)
其中,ωk(t)為uk(t)的瞬時頻率,δ(t)為Dirac分布,*代表卷積,k=1,2,…,K,f表示原始信號。
VMD對信號的具體分解過程如下:
(1)將{u1k},{ω1k},λ1和n的值初始化定義為0。
(2)定義n=n+1,執(zhí)行循環(huán)過程。
(3)定義k=0,k=k+1,當k un+1k(ω)= (f(ω)-∑i 2α(ω-ωnk)2(2) ωn+1k=∫∞0ωun+1k(ω)2dω/∫∞0un+1k(ω)2dω(3) 更新λ為: λn+1(ω)←λn(ω)+τ[f(ω)-∑kun+1k(ω)](4) (4)判斷是否滿足迭代停止條件∑k‖un+1k-unk‖22/‖unk‖22<ε),如果滿足,循環(huán)結束,輸出得到的若干個IMF分量;否則,重復步驟(2)-(4)。 1.2小波閾值去噪 小波去噪先要選取合適的小波基和分解層數,對帶有噪聲的信號進行小波分解,得到一組小波分解系數。設定一個閾值,認為大于該閾值的小波系數由信號產生,保留或收縮該小波系數;認為小于該閾值的小波系數由噪聲信號產生,舍去該小波系數。對保留下來的信號進行重構,得到去噪后的信號。 小波閾值去噪[7]基本原理:①設一個臨界閾值λ,信號x(t)通過小波變換到小波域上,得到一組小波分解系數;②將這些小波系數與λ進行比較,當小波系數小于λ,認為該系數主要由噪聲組成,舍去小波系數;當小波系數大于λ,則認為該系數主要由信號組成,保留或者收縮該小波系數;③對上述處理后的小波系數進行信號重構,得到的即是去噪后的信號。小波軟閾值的閾值函數為: f(x)=sgn(x)(x-λ)x>λ0x≤λ(5)
小波硬閾值的閾值函數為:
f(x)=xx≥λ0x<λ(6)
小波閾值去噪中除了閾值函數的選擇,閾值的選擇也很重要。常用的閾值選擇方法有以下4種[8]:
(1)固定閾值(sqtwolog準則)。它是實際應用中一種常用的閾值選擇方法。固定閾值的表達式為:
thr=σ×2lnN(7)
其中,N為信號的采樣長度,σ為估計的噪聲方差,σ=median(ωj,k)/0.674 5。ωj,k代表信號經小波分解后的小波系數,median函數是求小波系數絕對值的中間數。
(2)Stein無偏似然估計閾值(rigrsure準則)。設一個向量W,W中的元素按照小波系數的平方大小遞增排列,即:W=[ω21,ω22,ω23,…,ω2n],ω21<ω22<…<ω2n。ωk(k=1,2,3,…,n)是小波系數,n表示信號長度。
再定義一個風險向量R,R=[r1,r2,…,rn]。其中,第k個元素表示為:rk=[n-2k+(n-k)×ω2k+∑kj=1ω2j])/n。找到rmin,確定對應的k值,然后找到與之對應的ωk。閾值表達式為:thr=ω2k。
(3)啟發(fā)式閾值(heursure準則)。先定義兩個變量X和Y,X=(∑ni=1ω2i-n)/n,Y=(log2n)3/n。其中,ωi為小波系數,n表示信號長度。當X
(4)最大最小準則閾值(minimaxi準則)。該準則的閾值表達式為:
thr=0.393 6+0.182 9log2nn<320n≥32(8)
由文獻[9]可知,閾值如果選取過小,則去噪后信號依然有噪聲存在:反之,閾值選擇過大,信號中含有的重要數據特征就會被過濾掉,引起數據偏差。因此,本文采用Stein無偏似然估計閾值法選擇閾值。
2基于VMD的語音信號去噪方法
本文提出的去噪方法基本原理是先將語音信號進行VMD分解獲得IMF分量;然后分別對每一個分量進行小波閾值去噪,本文選取閾值用Stein無偏似然估計原理;最后,將去噪后的分量進行重構,得到去噪后信號?;赩MD的小波閾值語音信號去噪方法流程如圖1所示。
3仿真分析
為驗證VMD分解優(yōu)于EMD分解、EEMD分解和本文提出的去噪方法,使用MATLAB R2016a進行仿真實驗。
3.1仿真信號分析
用cos(2×π×2)、1/4×(cos(2×π×24))和1/16×(cos(2×π×288))這3個信號合成一個仿真信號,分別用VMD、EMD和EEMD對該信號進行分解(見圖2)。
圖2-圖5分別是仿真信號的源信號、仿真信號經VMD分解的分量、經EMD分解的分量和經EEMD分解的分量??梢钥闯觯珽MD和EEMD在分解時出現了模態(tài)混疊和偽分量的情況,而VMD有效地減少了偽分量,模態(tài)混疊現象也不明顯,與EMD和EEMD相比具有更好的噪聲魯棒性。
3.2仿真實驗
截取一段男生發(fā)音“啊”的音頻作為原始音頻信號。采樣頻率為8 000Hz,對原信號加入信噪比為10db的高斯白噪聲構成加噪信號。對噪聲信號進行VMD分解后用小波閾值去噪。圖6(a)為原始男生發(fā)音“啊”的語音信號,(b)是加入了信噪比為10db的高斯白噪聲的加噪語音信號,(c)是用本文提出的基于VMD分解的小波閾值去噪后的語音信號。
圖6仿真結果
使用信噪比作為評價信號去噪性能的評價指標。信噪比越大說明去噪效果越好,反之,信噪比越小說明去噪效果越不好。信噪比公式為:SNR=10×log10[∑ni=1y2i/∑ni=1(yi-y′i)2)]。其中,yi為原始語音信號,y′i為去噪后的估計信號。
對加噪信號分別用小波閾值去噪,基于EMD分解的小波閾值去噪,基于EEMD分解的小波閾值去噪和基于VMD的小波閾值去噪。選取sym8作為分解的小波基,分解層數為3時取得的去噪效果最佳。
從表1可看出,對同一個信號,在輸入信噪比相同情況下用小波閾值去噪、基于EMD的小波閾值去噪、基于EEMD的小波閾值去噪和基于VMD的小波閾值去噪這4種不同方法進行去噪處理,從去噪后的輸出信號信噪比看,基于VMD的小波閾值去噪明顯優(yōu)于其它3種方法。
4結語
仿真實驗表明,VMD在信號分解時相較于EMD和EEMD減少了偽分量、模態(tài)混疊不明顯的優(yōu)點。結合VMD算法和小波去噪原理,本文提出了基于VMD和小波閾值的語音信號去噪方法。實驗結果表明,本文提出的去噪方法在低信噪比時較小波閾值去噪、基于EMD和小波閾值的去噪以及基于EEMD和小波閾值的去噪有更好的去噪性能。如果是較長的語音信號,計算量也很大,所需運算時間也會很長,語音識別系統(tǒng)的時效性因此會受到影響。如何減少計算量、加快運算時間、提高時效性值得深入研究。
參考文獻參考文獻:
[1]NEHUANG,ZSHEN,SRLONG.A new view of nonlinear water waves: the Hilbert spectrum [J].Annu. Rev. Fluid Mech,1999,31(1):417457.
[2]ZWU,NEHUANG.Ensemble empirical mode decomposition:a noiseassisted data analysis method [J].Adv. Adapt. Data Anal.,2009,1(1):141.
[3]KDRAGOMIRETSKI,DZOSSO.Variational mode decomposition[J].IEEE Trans. SIGNAL Process,2014,62(3):531544.
[4]朱偉華,安偉,尤麗華,等.基于改進閾值函數的小波閾值去噪算法[J].計算機系統(tǒng)應用,2016,25(6):191195.
[5]唐鵬,郭寶平.改進型閾值函數尋優(yōu)法的小波去噪分析[J].信號處理,2017,33(1):102110.
[6]I DAUBECHIES,J LU,H T WU.Synchrosqueezed wavelet transforms: an empirical modedecompositionlike tool[J].Appl. Comput. Harmon. Anal.,2011,30(2):243261.
[7]邵鴻翔,高宏峰.改進小波閾值去噪方法處理FBG傳感信號[J].激光與紅外,2014,44(1):7376.
[8]盧仕澤,星野.新雙閾值函數下的小波去噪研究[J].計算機與數字工程,2015(9):16341639.
[9]代海波,單銳,王換鵬,等.基于改進閾值函數的小波去噪算法研究[J].噪聲與振動控制,2012(6):189193.
責任編輯(責任編輯:孫娟)