DSP(Digital Signal Processor,數(shù)字信號(hào)處理器)是在模擬信號(hào)變換成數(shù)字信號(hào)以后進(jìn)行高速實(shí)時(shí)處理的專(zhuān)用處理器件,DSP具有接口簡(jiǎn)單、方便;jing度高、運(yùn)算速度快、穩(wěn)定性好;編程方便,容易實(shí)現(xiàn)復(fù)雜的算法;集成方便等優(yōu)點(diǎn),已經(jīng)被廣泛的應(yīng)用于通信、雷達(dá)、語(yǔ)音、圖像、消費(fèi)類(lèi)電子產(chǎn)品等領(lǐng)域。DSP技術(shù)的發(fā)展和應(yīng)用,使得自適應(yīng)信號(hào)處理技術(shù)得以實(shí)現(xiàn)。自適應(yīng)噪聲消除是消除強(qiáng)背景噪聲的一種有效的技術(shù),在通常情況下,背景噪聲不是穩(wěn)定不變的,而是隨著時(shí)間的變化而變化。因此,噪聲消除應(yīng)該是一個(gè)自適應(yīng)噪聲處理過(guò)程:既可以在時(shí)變的噪聲環(huán)境下工作,還可以根據(jù)環(huán)境的改變而調(diào)整自身的工作參數(shù)。在本文中,利用DSP的優(yōu)越性能,在TI公司TMS320VC5416芯片上,分別實(shí)現(xiàn)LMS和RLS算法的自適應(yīng)強(qiáng)噪聲消除系統(tǒng),該系統(tǒng)經(jīng)過(guò)驗(yàn)證,能夠很好地消除背景噪聲,恢復(fù)出原始話音信號(hào)。
1 自適應(yīng)噪聲消除算法
自適應(yīng)噪聲消除算法的基本思想是將噪聲混雜的信號(hào)通過(guò)一個(gè)濾波器來(lái)達(dá)到抑制噪聲,并使信號(hào)本身無(wú)失真通過(guò)的這樣一個(gè)過(guò)程。并且,正如上面所述,這個(gè)自適應(yīng)處理過(guò)程不需要預(yù)先知道信號(hào)以及噪聲的特點(diǎn)。圖1為自適應(yīng)噪聲消除算法的原理框圖。
為了實(shí)現(xiàn)這個(gè)自適應(yīng)噪聲消除系統(tǒng),這里使用2個(gè)輸入源和1個(gè)自適應(yīng)濾波器。一個(gè)輸入源是混入了噪聲的信號(hào)(稱(chēng)之為主輸入源,用s十n0表示),另一個(gè)輸入源為背景噪聲,這個(gè)背景噪聲與主輸入源噪聲相關(guān),而與主輸入源中的信號(hào)無(wú)關(guān)(稱(chēng)之為噪聲參考輸入源,用n1表示),噪聲參考輸入源通過(guò)自適應(yīng)濾波器后輸出yo濾波器不斷地自我重新調(diào)整,使得y與n0的誤差達(dá)到很小。然后用主信號(hào)源減去輸出y得到系統(tǒng)的輸出z=s n0-y,z即去噪后的信號(hào)。

假設(shè)s,n0,n1,y是平穩(wěn)過(guò)程,并且均值為0,s與n0和n1無(wú)關(guān)聯(lián),而n1和n0相關(guān),則可以得出以下的表達(dá)式:

當(dāng)調(diào)整濾波器,使得E[z2]達(dá)到很小值時(shí),E[(n0-y)2]也是很小值,因此,系統(tǒng)輸出z可以作為自適應(yīng)濾波器的誤差信號(hào)。
文中的自適應(yīng)濾波器采用2種自適應(yīng)濾波算法:一種是很小均方算法(LMS),另一種是RLS算法。
很小均方算法(LMS)應(yīng)用很廣、算法很簡(jiǎn)單。LMS算法主要目的是使誤差信號(hào)的均方值達(dá)到很小。自適應(yīng)濾波器的系數(shù)由下式?jīng)Q定。

其中,P(i)是第i個(gè)自相關(guān)矩陣的逆;k(i)是第i個(gè)增益向量;λ是指數(shù)型遺忘因子。從算法中矩陣的運(yùn)算可以看出來(lái),RLS算法比LMS算法要復(fù)雜得多。對(duì)于一個(gè)N階的濾波器,LMS算法每次迭代需要O(N)次運(yùn)算,而RLS算法需要O(N2)此運(yùn)算。在DSK方式實(shí)現(xiàn)時(shí),發(fā)現(xiàn)在48 kHz的采樣率下,采用LMS算法設(shè)計(jì)的濾波器的階數(shù)很多20階,而在同樣的條件下,采用RLS算法設(shè)計(jì)的濾波器的階數(shù)只有5階左右。
2 DSP實(shí)現(xiàn)
本文的自適應(yīng)噪聲消除算法處理器件采用TI的TMS320VC5416型DSP處理器。該處理器采用改進(jìn)的哈佛結(jié)構(gòu),擁有專(zhuān)用的硬件乘法器和專(zhuān)門(mén)為數(shù)字信號(hào)處理而設(shè)計(jì)的指令系統(tǒng),快速的指令周期等優(yōu)點(diǎn)。由于聲音是模擬信號(hào),要使用DSP對(duì)其進(jìn)行處理,首先需要將模擬信號(hào)進(jìn)行模/數(shù)轉(zhuǎn)換,本文采用MAX197作為A/D轉(zhuǎn)換芯片。MAX 197是Maxim公司推出的8通道、12位的高速A/D轉(zhuǎn)換芯片,單次轉(zhuǎn)換時(shí)間僅為6μs,采樣速率可達(dá)100 kSa/s。經(jīng)過(guò)噪聲消除后的信號(hào)質(zhì)量可以通過(guò)音箱來(lái)辨別,因此,在噪聲消除后,還要將信號(hào)進(jìn)行數(shù)/模轉(zhuǎn)換。本文采用MX7541作為系統(tǒng)的D/A轉(zhuǎn)換芯片。MX7541是美國(guó)Maxim公司生產(chǎn)的高速高jing度12位數(shù)字/模擬轉(zhuǎn)換器芯片,由于MX7541轉(zhuǎn)換器件的功耗特別低,而且其線性失真可低達(dá)0.012%,因此,該D/A轉(zhuǎn)換器芯片特別適合于精密模擬數(shù)據(jù)的獲得和控制。
本文的自適應(yīng)噪聲消除系統(tǒng)結(jié)構(gòu)圖2所示。
麥克風(fēng)1用于采集帶有強(qiáng)烈背景噪聲的話音信號(hào)作為系統(tǒng)的輸入1,麥克風(fēng)2用于采集背景噪聲作為輸入2,輸入1和輸入2經(jīng)過(guò)音頻接口輸入到MAX197中進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換后的信號(hào)被送入TMS320VC5416中進(jìn)行自適應(yīng)噪聲消除處理,處理后的信號(hào)經(jīng)過(guò)MX7541的D/A轉(zhuǎn)換后,送入音箱進(jìn)行播放。另外,還可以通過(guò)計(jì)算機(jī)和Matlab軟件來(lái)比較自適應(yīng)噪聲消除系統(tǒng)的輸入/輸出信號(hào),驗(yàn)證自適應(yīng)噪聲消除系統(tǒng)工作情況。

圖3為3臺(tái)計(jì)算機(jī)記錄的自適應(yīng)噪聲消除系統(tǒng)的工作情況:
比較主輸入信號(hào)、參考噪聲輸入信號(hào)和濾波器輸出信號(hào),可以清楚地看出輸出與主輸入信號(hào)相比,噪聲成分被大大削弱,這與用音箱直接聽(tīng)到的聲音效果一致,以上結(jié)果證明用DSP成功地實(shí)現(xiàn)了實(shí)時(shí)的自適應(yīng)噪聲消除系統(tǒng)。
3 結(jié) 語(yǔ)
本文采用TI的TMS320VC5416型DSP成功地實(shí)現(xiàn)了自適應(yīng)噪聲消除系統(tǒng),試驗(yàn)的結(jié)果顯示LMS算法和RLS算法是去除噪聲的自適應(yīng)濾波器非常有效的方法,DSP板也是實(shí)現(xiàn)實(shí)時(shí)自適應(yīng)噪聲消除系統(tǒng)的好平臺(tái)。在整個(gè)系統(tǒng)工作過(guò)程中,仍有少量的背景噪聲不能完全從信號(hào)中去除掉,為了測(cè)試算法的效果,用Matlab產(chǎn)生一個(gè)白噪聲信號(hào)作為噪聲參考信號(hào),同時(shí)將參考噪聲信號(hào)進(jìn)行微小扭曲后與從麥克風(fēng)輸入的語(yǔ)音信號(hào)疊加后作為主輸入信號(hào),然后用前文所述的實(shí)現(xiàn)方式對(duì)主輸入信號(hào)和參考噪聲信號(hào)進(jìn)行自適應(yīng)噪聲去除算法處理。在處理后,噪聲完全從信號(hào)中去除掉了,由此,可以看出,背景噪聲不能完全從信號(hào)中去除掉問(wèn)題不是由算法造成的,而是由于試驗(yàn)設(shè)備造成的。麥克風(fēng)、電纜以及采樣造成會(huì)造成信號(hào)扭曲,而這些扭曲在噪聲去除算法中是無(wú)法補(bǔ)償?shù),因此其可能是造成這個(gè)問(wèn)題的很可能原因。 |