李雨昕
(四川師范大學(xué) 成都學(xué)院,成都 611745)
語音通信在人類生活中扮演著極其重要的角色。為了保證語音信息的有效獲取,在實(shí)際應(yīng)用中需要對語音信號進(jìn)行去噪、增強(qiáng)、壓縮、編碼等一系列處理[1]。而這些處理的效果都依賴于信號的表示方式。通常的做法是將語音信號分解在一組完備的正交基上,該方法會導(dǎo)致用基的組合表示語音信號時(shí)表達(dá)的不簡潔性,即語音信號表示不是稀疏的。這將不利于語音信號的處理。Mallat S和Zhang Z首先提出信號在過完備庫上分解的思想[1]。信號在過完備庫上的分解,其分解結(jié)果將可以得到信號一個(gè)非常簡潔的表達(dá)(即:稀疏表示)。得到信號稀疏表示的過程稱為信號的稀疏分解。由于信號稀疏表示的優(yōu)良特性,該表示方法已經(jīng)被應(yīng)用到信號處理的多個(gè)方面,如信號去噪[2]、信號識別[3]、信號時(shí)頻分布[4]等。目前,大多數(shù)的稀疏分解研究都是基于Gabor原子庫進(jìn)行的,該原子庫上的信號稀疏分解計(jì)算量十分巨大,計(jì)算時(shí)間在現(xiàn)有計(jì)算條件下令人無法忍受。
針對此問題,本文在分析語音信號具有類似余弦信號周期性特性的基礎(chǔ)上,根據(jù)信號稀疏分解具有按照信號本身特點(diǎn)自適應(yīng)地選擇原子,使所選原子與信號的非線性逼近誤差最小化的特點(diǎn),選用余弦過完備原子庫,并在該原子庫上完成語音信號的稀疏分解。相比在Gabor過完備原子庫上的語音信號稀疏分解,在余弦過完備原子庫上的分解速度得到了一定程度的提高,同時(shí)對原子庫中原子個(gè)數(shù)的要求也有所降低。
圖1是從實(shí)際錄制的語音信號中截取N=256的一段語音信號(為語音信號的長度)。從圖1中可以明顯地看出語音信號具有類似余弦信號的周期特征。
根據(jù)語音信號具有類似余弦信號周期性特征,本文采用如下的過完備原子庫:
其中,n=0,1,…,N-1,N 為信號長度。也就是說原子 gγ的長度和語音信號的長度相同。原子應(yīng)作歸一化處理,即│gγ│ =1,其中│·│表示原子的范數(shù),其定義是在H=RN信號空間中信號到該空間坐標(biāo)原點(diǎn)的距離。fm為頻率參量,按照需要的搜索精度均勻取值,m=0,1,…,M-1,M 為整個(gè)原子庫中原子的個(gè)數(shù)。M應(yīng)遠(yuǎn)遠(yuǎn)大于語音信號的長度N,以保證原子庫的過完備性。原子參數(shù)γ由m單獨(dú)確定。當(dāng)搜索的間隔越小,M的值越大,即原子庫中原子的個(gè)數(shù)越多。圖2是N=256,M=10 240時(shí)隨機(jī)抽取的過完備原子庫中的3個(gè)原子樣本。
圖1 N=256長的實(shí)際語音信號
通過以上分析可知,余弦過完備原子庫中的原子更加貼近語音信號的周期特征,因此本文設(shè)計(jì)基于余弦過完備原子庫的語音信號MP稀疏分解算法為:
1)設(shè)置分解參數(shù)。構(gòu)造如式(1)所示的過完備原子庫。根據(jù)語音信號的長度N適當(dāng)?shù)剡x擇原子庫的大小M,保證M?N。
圖2 余弦過完備原子庫中的3個(gè)原子樣本
2)形成過完備原子庫。根據(jù)分解參數(shù)形成一系列的原子,最后形成整個(gè)過完備原子庫。
3)在過完備原子庫中尋找最為匹配的原子。算法采用常規(guī)的MP算法,求解如式代表的最優(yōu)化問題。求得在過完備原子庫中與語音信號或語音信號殘差最為匹配的原子。
圖3 余弦過完備原子庫和Gabor過完備原子庫對比實(shí)驗(yàn)1
4)完成一步分解。利用3)中尋找到的最佳原子,從語音信號或語音信號的殘差中去除其在該原子上的分量,完成一步分解。記錄此步最佳原子的參數(shù),作為該步分解的結(jié)果。
5)分解完成。利用分解步數(shù)(相對應(yīng)于原子的數(shù)目)判定分解是否完成。如果分解達(dá)到了事先規(guī)定的步數(shù),就停止分解。
仿真實(shí)驗(yàn)使用的信號是從錄制的語音信號中分別截取長度N=256的2段語音信號。實(shí)驗(yàn)中使用按式(1)構(gòu)造的過完備原子庫。根據(jù)語音信號的長度N=256選取M=10 240(M?N),即形成的過完備原子庫中原子的個(gè)數(shù)為10 240。圖3和圖4給出了在Matlab環(huán)境下原始語音信號及其分別在余弦過完備原子庫和Gabor過完備原子庫MP稀疏分解為30個(gè)原子后重建的語音信號和語音信號殘差。表1和表2分別為圖3和圖4相應(yīng)的語音信號基于2種原子庫MP稀疏分解為30個(gè)原子所用時(shí)間t及重建信號的MSE值比較,其中,為重建信號誤差的均方根值。
表1 基于2種原子庫的語音信號MP稀疏分解重建信號所用時(shí)間t和MSE值比較
圖4 余弦過完備原子庫和Gabor過完備原子率對比實(shí)驗(yàn)2
表2 基于2種原子庫的語音信號MP稀疏分解重建信號所用時(shí)間t和MSE值比較
仿真實(shí)驗(yàn)中僅用30個(gè)原子即可表示長度為256的語音信號,相對于正交分解需要使用256個(gè)基來說,充分說明該表示方法的稀疏性。
從圖3、圖4及表1、表2中可以看到重構(gòu)信號很好的近似了原始的語音信號,說明了基于余弦過完備原子庫的語音信號MP稀疏分解算法的有效性。同時(shí),還可以看到基于余弦過完備原子庫的語音信號MP稀疏分解后重建的語音信號比基于Gabor過完備原子庫的語音信號MP稀疏分解后重建的語音信號從信號的質(zhì)量來講要稍微好些。實(shí)驗(yàn)中所用的余弦過完備原子庫中原子的個(gè)數(shù)M=10 240。又因?yàn)镹=256,根據(jù)文獻(xiàn)[3]中提供的計(jì)算方法可計(jì)算出Gabor過完備原子庫中原子的個(gè)數(shù)約為12萬個(gè),其原子數(shù)量是余弦原子庫中原子數(shù)量的11.7倍。信號稀疏分解的計(jì)算量主要由形成原子庫的計(jì)算量和信號在過完備原子庫上分解的計(jì)算量這兩部分組成[5],該計(jì)算量巨大。而計(jì)算量過大、計(jì)算速度過慢和存儲空間要求過高也是制約信號稀疏分解應(yīng)用的主要瓶頸。如果過完備原子庫中原子的數(shù)量減少,則信號在過完備原子庫中分解的計(jì)算量將大大減少,計(jì)算的速度也將大大提高,同時(shí)算法所需要的存儲空間也將降低。
本文根據(jù)語音信號的特征選用余弦過完備原子庫,不僅能夠提高語音信號MP稀疏分解的速度,同時(shí)還降低算法所需的存儲空間,并提高了重構(gòu)信號的質(zhì)量。實(shí)驗(yàn)證明余弦過完備原子庫更適合具有類周期特性的語音信號。
[1]MALLAT S,ZHANG Z.Matching pursuit with time-frequency dictionaries[J].IEEE Trans.on Signal Processing.1993,41(12):3397-3415.
[2]韓紀(jì)慶,張磊,鄭鐵然.語音信號處理[M].北京:清華大學(xué)出版社,2005.
[3]ARTHUR P L,PHILIPOS C L.Voiced/unvoiced speech discrimination in noise using Gabor atomic decomposition[C]//Proceedings of IEEE ICASSP.Hong Kong:[s.n.],2003:820-828.
[4]鄒紅星,周小波,李衍達(dá).時(shí)頻分析:回溯與前瞻[J].電子學(xué)報(bào),2000,28(9):78-84.
[5]王建英,尹忠科,張春梅.信號與圖像的稀疏分解及初步應(yīng)用[M].成都:西南交通大學(xué)出版社,2006.