基于RLS算法的多麥克風(fēng)降噪_第1頁(yè)
基于RLS算法的多麥克風(fēng)降噪_第2頁(yè)
基于RLS算法的多麥克風(fēng)降噪_第3頁(yè)
基于RLS算法的多麥克風(fēng)降噪_第4頁(yè)
基于RLS算法的多麥克風(fēng)降噪_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程設(shè)計(jì)任務(wù)書(shū)學(xué)生姓名: 專(zhuān)業(yè)班級(jí): 指導(dǎo)教師: 工作單位: 題 目: 基于RLS算法的多麥克風(fēng)降噪 設(shè)計(jì)任務(wù): 給定主麥克風(fēng)錄制的受噪聲污染的語(yǔ)音信號(hào)和參考麥克風(fēng)錄制的噪聲,實(shí)現(xiàn)語(yǔ)音增強(qiáng)的目標(biāo),得到清晰的語(yǔ)音信號(hào)。設(shè)計(jì)要求:(1)閱讀參考資料和文獻(xiàn),明晰算法的計(jì)算過(guò)程,理解RLS算法基本過(guò)程;(2)主麥克風(fēng)錄制的語(yǔ)音信號(hào)是RLSprimsp.wav,參考麥克風(fēng)錄制的參考噪聲是RLSrefns.wav,用matlab指令讀??;(3)根據(jù)算法編寫(xiě)相應(yīng)的MATLAB程序;(4)算法仿真收斂以后,得到增強(qiáng)的語(yǔ)音信號(hào);(5)用matlab指令回放增強(qiáng)后的語(yǔ)音信號(hào);(6)分別對(duì)增強(qiáng)前后的語(yǔ)音信號(hào)作頻譜分

2、析。指導(dǎo)教師簽名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日摘 要MATLAB功能強(qiáng)大、簡(jiǎn)單易學(xué)、編程效率高,可以很方便地進(jìn)行信號(hào)分析、處理和設(shè)計(jì)。自適應(yīng)濾波器經(jīng)過(guò)幾十年的發(fā)展和完善,已逐漸成為人們常用的語(yǔ)音去噪技術(shù),而MATLAB的出現(xiàn)又為其提供了更為方便快捷的方法來(lái)對(duì)語(yǔ)音信號(hào)進(jìn)行去噪處理。而遞推最小二乘(RLS,Recusive Least-Squares)算法是其中一種常用的線(xiàn)性自適應(yīng)濾波算法。標(biāo)準(zhǔn)RLS算法是通過(guò)輸入數(shù)據(jù)的相關(guān)矩陣來(lái)完成權(quán)向量的計(jì)算,矩陣來(lái)完成最小二乘向量的計(jì)算。QR-RLS算法則是基于脈沖響應(yīng)數(shù)字濾波器(FIR),其實(shí)現(xiàn)是通過(guò)直接處理經(jīng)QR分解的輸入數(shù)據(jù)矩陣來(lái)

3、完成權(quán)向量的計(jì)算,在數(shù)值上比標(biāo)準(zhǔn)的RLS算法更穩(wěn)定。MATLAB的工具箱中包含RLS自適應(yīng)濾波器的兩個(gè)應(yīng)用函數(shù)。關(guān)鍵詞:MATLAB,自適應(yīng)濾波,RLS算法AbstractMATLAB is powerful, easily learned, programming, and high-efficiency.It can be analyse, processed and design easily. After decades of development and perfection, adaptive filter has gradually commonly used for spee

4、ch sound denoising technology, and the emergence of MATLAB has provided a more convenient way to deal with the noise speech signal. Meanwhile,the recursive Least Squares (RLS, Recusive further - Squares) algorithm is one of the commonly used linear adaptive filter algorithm.Through dealing with the

5、input data, Standard matrix RLS algorithm can complete the calculation of weight vector,and the matrix is to complete the least squares vector calculation. QR - RLS algorithm is based on impulse response (FIR) digital filter, its implementation is through direct processing by the input data matrix Q

6、R decomposition to complete the calculation of weight vector, the RLS algorithm is more stable than the standard value. MATLAB toolbox contains two applications of RLS adaptive filter function.Key words: MATLAB, adaptive filtering, RLS algorithm,目錄摘 要1Abstract2目錄31 基本原理41.1 基于RLS算法的自適應(yīng)濾波器41.2 RLS算法原

7、理41.3 RLS算法的步驟72 原始語(yǔ)音信號(hào)采集82.1 語(yǔ)音信號(hào)的采樣理論依據(jù)82.2 語(yǔ)音信號(hào)的分析83、基于RLS算法的多麥克風(fēng)降噪的方法論證103.1 自行編寫(xiě)B(tài)LS算法程序塊103.2 直調(diào)用的RLS算法函數(shù)設(shè)計(jì)程序114 提取語(yǔ)音信號(hào)115 調(diào)試程序125.1環(huán)境噪聲中的語(yǔ)音波形分析125.2 RLS算法的濾波效果:145.3分別對(duì)增強(qiáng)前后的語(yǔ)音信號(hào)做頻譜分析15心得體會(huì)16參考文獻(xiàn)17附錄:程序清單181 基本原理1.1 基于RLS算法的自適應(yīng)濾波器 所謂自適應(yīng)實(shí)現(xiàn)是指利用前一時(shí)刻獲得的濾波器參數(shù),根據(jù)估計(jì)誤差自動(dòng)調(diào)節(jié)現(xiàn)時(shí)刻的參數(shù),使得某個(gè)代價(jià)函數(shù)達(dá)到最小,從而實(shí)現(xiàn)最優(yōu)濾波。

8、如圖所示的是自適應(yīng)干擾抵消器的基本結(jié)構(gòu),它有著很廣泛的應(yīng)用。期望響應(yīng)是信號(hào)和噪聲之和,即,自適應(yīng)處理器的輸入是與相關(guān)的另一個(gè)噪聲。當(dāng)與不相關(guān)時(shí),自適應(yīng)處理器將調(diào)整自己的參數(shù),以力圖使成為的最佳估計(jì)。這樣,將逼近信號(hào),且其均方值為最小。噪聲就得到了一定程度的抵消 + 自適應(yīng)處理器 圖1 自適應(yīng)干擾抵消原理圖 1.2 RLS算法原理RLS算法的收斂特性較LMS算法優(yōu)越,但相應(yīng)的復(fù)雜度也要高許多,考慮到收斂時(shí)間的影響,從起始時(shí)間到收斂時(shí)間經(jīng)濾波器處理得到到輸出誤差依然很大,故直接將前32項(xiàng)去掉,先通過(guò)兩輸入作差得到預(yù)期值,再將所有預(yù)期值與對(duì)應(yīng)時(shí)刻的實(shí)際輸出值作差求平方,將這些平方值相加可以得到一個(gè)變

9、量為W的函數(shù),取W是函數(shù)的值最小。另外,顯然距離n最近的量與Y(n)最接近,引入遺忘因子使得從n-1到0,相關(guān)程度逐漸減小。最后求得相關(guān)偏差,反饋給濾波器以矯正輸出,達(dá)到減小誤差的目的。 RLS算法的關(guān)鍵是用二乘方的時(shí)間平均的最小化準(zhǔn)則取代最小均方準(zhǔn)則,并按時(shí)間迭代計(jì)算。具體來(lái)說(shuō),是要對(duì)初始時(shí)刻到當(dāng)前時(shí)刻所有誤差的平方進(jìn)行平均并使其最小化,即使得誤差的平方和最小。使用指數(shù)加權(quán)的誤差平方和,其代價(jià)函數(shù)為:(0<<1,稱(chēng)為遺忘因子) 引入遺忘因子作用是離n時(shí)刻近的誤差附較大權(quán)重, 離n時(shí)刻遠(yuǎn)的誤差賦較小權(quán)重,確保在過(guò)去某一段時(shí) 間的觀(guān)測(cè)數(shù)據(jù)被“遺忘”,從而使濾波器可以工作在非 平穩(wěn)狀態(tài)

10、下。 估計(jì)誤差定義: 可取濾波器的實(shí)際輸入d*(i)作為期望響應(yīng)d(i)。將誤差代入代價(jià)函數(shù)得到加權(quán)誤差平方和的完整表達(dá)式為了使代價(jià)函數(shù)取得最小值,可通過(guò)對(duì)權(quán)向量求導(dǎo)解得:其中:(公式1)(公式2)由此可見(jiàn)指數(shù)加權(quán)最小二乘法的解轉(zhuǎn)化為Wiener濾波器的形式:下面研究它的自適應(yīng)更新過(guò)程。由公式1可得:則原式可化為由矩陣求逆引理得令:其中k(n)為增益向量又由 式中: 先驗(yàn)誤差 內(nèi)積表示在n1時(shí)刻對(duì)u(n)所得濾波器的實(shí)際輸出 圖2 RLS算法功能示意圖如圖指數(shù)加權(quán)的RLS算法功能示意圖。1.3 RLS算法的步驟(1)初始化:w(0)=0,R(0)=。(2)更新:對(duì)于n=1、2.計(jì)算:設(shè)R(0)

11、=,一般取0.001。2 原始語(yǔ)音信號(hào)采集2.1 語(yǔ)音信號(hào)的采樣理論依據(jù)(1)采樣頻率采樣頻率是指計(jì)算機(jī)每秒鐘采集多少個(gè)聲音樣本,采樣頻率越高,即采樣的間隔時(shí)間越短,則在單位時(shí)間內(nèi)計(jì)算機(jī)得到的聲音樣本數(shù)據(jù)就越多,對(duì)聲音波形的表示夜月精確。根據(jù)奈奎斯特定理,只有采樣頻率高于聲音信號(hào)最高頻率的兩倍時(shí),才能把數(shù)字信號(hào)表示的聲音還原成為原來(lái)的聲音。(2) 采樣位數(shù)采樣位數(shù)即采樣值,用來(lái)衡量聲音波動(dòng)變化的參數(shù)。理論上,采樣的位數(shù)決定了音頻數(shù)據(jù)最大的力度范圍。沒(méi)增加一個(gè)采樣位數(shù)相當(dāng)于力度范圍增加了6dB。采樣位數(shù)越多則捕捉到的信號(hào)越精確。(3)采樣定理 在進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換過(guò)程中,當(dāng)采樣頻率fsma

12、x大于信號(hào)最高頻率fmax的2倍時(shí),即:fsmax>=fmax,則采樣后的數(shù)字信號(hào)完整地保留了原始信號(hào)中的信息,一般實(shí)際應(yīng)用中保證采樣頻率為信號(hào)最高頻率的510倍,采樣定理又稱(chēng)奈奎斯特定理。2.2 語(yǔ)音信號(hào)的分析 在MATLAB軟件平臺(tái)下,利用wavread函數(shù)對(duì)語(yǔ)音信號(hào)進(jìn)行采集,記住采樣頻率和采樣點(diǎn)數(shù),wavread函數(shù)調(diào)用格式如下:y=wavread(file)%讀取file所規(guī)定的wav文件,返回采樣值放在向量y中y,fs,bits=wavread(file)%采樣值放在向量y中,fs表示采樣頻率,bits表示采樣位數(shù)對(duì)語(yǔ)音信號(hào)RLSprimsp.wav進(jìn)行采樣,程序如下:y,fs

13、,nbits=wavread(RLSprimsp.wav) ;畫(huà)出語(yǔ)音信號(hào)的時(shí)域波形,在對(duì)語(yǔ)音信號(hào)進(jìn)行頻譜分析。MATLAB提供了快速傅里葉變換算法FFT計(jì)算DFT的函數(shù)fft,其調(diào)用格式如下:參數(shù)為變換的時(shí)域序列向量,N是DFT變換區(qū)間長(zhǎng)度,當(dāng)N大于的長(zhǎng)度2,fft函數(shù)自動(dòng)在后面補(bǔ)零。當(dāng)N小于的長(zhǎng)度時(shí),fft函數(shù)計(jì)算的前N個(gè)元素。利用fft對(duì)語(yǔ)音信號(hào)進(jìn)行快速傅里葉變換,就可以得到信號(hào)的頻譜特性。程序如下:y,fs,nbits=wavread(RLSprimsp.wav) %語(yǔ)音信號(hào)的采集sound(y,fs,nbits); %語(yǔ)音信號(hào)的播放n=length(y);Y=fft(y,n); %快

14、速傅里葉變換figure;subplot(2,1,1);plot(y);title(原始信號(hào)波形,fontweight,bold);grid;subplot(2,1,2);plot(abs(Y);title(原始信號(hào)頻譜,fontweight,bold);axis(0 150000 0 4000);grid;程序結(jié)果如下圖:圖3 原始語(yǔ)音信號(hào)波形、頻譜圖3、基于RLS算法的多麥克風(fēng)降噪的方法論證3.1 自行編寫(xiě)B(tài)LS算法程序塊 理解RLS算法的基本原理,自行編寫(xiě)RLS算法程序塊,RLS算法可以理解為將輸出反饋給濾波器來(lái)調(diào)整相關(guān)參數(shù),達(dá)到校正誤差的目的。算法實(shí)現(xiàn)代碼如下所示:Worder=32;

15、 %濾波器階數(shù) lambda=1 ; % 設(shè)置遺忘因子Delta=0.001 ; p=(1/Delta) * eye ( Worder,Worder ) ;w=zeros(Worder,1); output=primary; %主語(yǔ)音輸出 loopsize=max(size(primary); for i=1+Worder:loopsize %寫(xiě)RLS算法公式z=primary(i)-w'*(fref(i-Worder+1:i)'n2=fref(i-Worder+1:i)'k=(1/lambda)*p*n2;K=k/(1+n2'*k); w = w + K*z;

16、 p0=K*n2' p = (p-p0*p)/lambda; output(i-Worder)=z; disp(i); end; 3.2 直調(diào)用的RLS算法函數(shù)設(shè)計(jì)程序  Hadapt = adaptfilt.rls(M,lam,P0,w0,Zi);Hadapt.ResetBeforeFiltering = 'off';y,e = filter(Hadapt,fref,primary);  MATLAB自帶的RLS算法adaptfilt.rls(L,lambda,invcov,coeffs,states),L指濾波器的長(zhǎng)度,必須為正數(shù),默認(rèn)

17、值為10;lambda指RLS的遺忘因子,為標(biāo)量,取值范圍 0 1 ,默認(rèn)值為1;invcov指輸入矩陣的協(xié)方差的逆,為使濾波器性能最佳,常將其初始化為正定矩陣;coeffs指初始化濾波器系數(shù)向量,長(zhǎng)度必須為濾波器的階數(shù),默認(rèn)下所有元素全零;states指矢量自適應(yīng)濾波器的初始過(guò)濾狀態(tài),長(zhǎng)度必須為階數(shù)減1,默認(rèn)下所有元素全零。 該方案運(yùn)用現(xiàn)成的RLS算法函數(shù),操作簡(jiǎn)單,易實(shí)現(xiàn),但不能深入了解RLS算法的根本原理,不利于RLS算法的掌握。所以本文選用方案一。4 提取語(yǔ)音信號(hào)用MATLAB中的wavread指令分別讀取被噪聲污染后的語(yǔ)音文件RLSprimsp.wav和噪聲文件RLSrefns.wa

18、v后,進(jìn)行RLS算法處理,濾除噪聲后,得到語(yǔ)音文件,先由plot指令繪出語(yǔ)音文件波形,再通過(guò)MATLAB中的sound命令播放語(yǔ)音文件。代碼如下所示: figure; %作圖 subplot(2,3,1); plot(primary); %畫(huà)主麥克風(fēng)語(yǔ)音波形title('primary input');subplot(2,3,2); plot(fref); %畫(huà)參考麥克風(fēng)語(yǔ)音波形 title('fref noise'); subplot(2,3,3); plot(output); %畫(huà)降噪后的語(yǔ)音波形 title('output'); wavwr

19、ite(output,fs,'lym0'); %生成降噪后的語(yǔ)音波形 sound(output,fs,bits); 5 調(diào)試程序5.1環(huán)境噪聲中的語(yǔ)音波形分析 (1)麥克風(fēng)主噪音RLSprimsp.wav信號(hào)波形如下: 圖4 麥克風(fēng)主噪音波形圖(2)參考噪音RLSrefns.wav 信號(hào)波形如下: 圖5 參考噪音波形圖 5.2 RLS算法的濾波效果: 算法仿真收斂以后,得到增強(qiáng)的語(yǔ)音信號(hào) 如下圖所示:圖6 增強(qiáng)的語(yǔ)音信號(hào)波形圖 5.3分別對(duì)增強(qiáng)前后的語(yǔ)音信號(hào)做頻譜分析 對(duì)于時(shí)域信號(hào),我們往往難以找出其中蘊(yùn)含的規(guī)律,僅從時(shí)域角度完成特征信號(hào)的提取、噪聲信號(hào)的濾除和信號(hào)的分割不僅十

20、分困難,有時(shí)甚至根本無(wú)法實(shí)現(xiàn),這時(shí)如果從頻域角度來(lái)看,問(wèn)題就變得簡(jiǎn)單許多,首先將時(shí)域信號(hào)經(jīng)傅里葉變換得到對(duì)應(yīng)頻域信號(hào)。 傅里葉變換,即將滿(mǎn)足一定條件的某個(gè)函數(shù)表示成三角函數(shù)(正弦和/或余弦函數(shù))或者它們的積分的線(xiàn)性組合。在不同的研究領(lǐng)域,傅里葉變換具有多種不同的變體形式,如連續(xù)傅里葉變換和離散傅里葉變換。對(duì)于離散信號(hào),通常采用離散福利葉變換,為提高計(jì)算機(jī)的運(yùn)算速度又衍生出快速離散傅里葉變換,接下來(lái)頻譜信號(hào)的繪制即是直接調(diào)用MATLAB中指令fft先得到對(duì)應(yīng)的頻譜信號(hào),再通過(guò)plot命令得到的。 心得體會(huì)這次的課程設(shè)計(jì),我再一次認(rèn)識(shí)到了MATLAB軟件的強(qiáng)大,能夠進(jìn)行語(yǔ)音信號(hào)的各種處理。通過(guò)這次

21、課程設(shè)計(jì),我明白了基于RLS算法的多麥克風(fēng)降噪的過(guò)程,也對(duì)RLS算法有了深一層的理解。通過(guò)MATLAB編程與仿真,實(shí)現(xiàn)了語(yǔ)音信號(hào)的去噪,通過(guò)對(duì)去噪前后語(yǔ)音信號(hào)的波形及頻譜的對(duì)比,形象地認(rèn)識(shí)到RLS算法的作用。 這次的課程設(shè)計(jì),我第一次接觸到了語(yǔ)音去噪的相關(guān)知識(shí)。語(yǔ)音識(shí)別以語(yǔ)音我研究對(duì)象,是語(yǔ)音信號(hào)處理的一個(gè)重要研究方向,是模式識(shí)別的一個(gè)分支。語(yǔ)音識(shí)別的研究工作迄今已有幾十年,但仍未有突破性進(jìn)展,其主要原因有:(1)語(yǔ)音識(shí)別系統(tǒng)的適應(yīng)性差;(2)在強(qiáng)噪聲干擾環(huán)境下語(yǔ)音識(shí)別難;(3)基元的選擇問(wèn)題;(4)端點(diǎn)檢測(cè)問(wèn)題等。但自適應(yīng)信號(hào)處理的理論和技術(shù)日益完善,加之MATLAB的出現(xiàn),使實(shí)驗(yàn)室研究語(yǔ)音

22、識(shí)別技術(shù)成為可能。參考文獻(xiàn)2 鄭寶玉. 自適應(yīng)濾波器原理M. 北京:電子工業(yè)出版社,2006年.3 Steven W. Smith, 實(shí)用數(shù)字信號(hào)處理,人民郵電出版社,2010年.4 何振亞,自適應(yīng)信號(hào)處理,科學(xué)出版社出版,2003年.附錄:程序清單primary=wavread('RLSprimsp.wav'); %讀入主麥克風(fēng)語(yǔ)音信號(hào) n=length(primary);Y=fft(primary,n); %快速傅里葉變換figure;subplot(2,1,1);plot(primary);title('原始信號(hào)波形','fon

23、tweight','bold');grid;subplot(2,1,2);plot(abs(Y);title('原始信號(hào)頻譜','fontweight','bold');axis(0 15000 0 4000);grid;primary=primary'fref=wavread('RLSrefns.wav'); %讀入?yún)⒖颊Z(yǔ)音信號(hào)n1=length(fref);Y1=fft(fref,n1); %快速傅里葉變換figure;subplot(2,1,1);plot(fref);title('參考麥克風(fēng)信號(hào)波形','fontweight','bold');grid;subplot(2,1,2);plot(abs(Y);title('參考麥克風(fēng)信號(hào)頻譜','fontweight','bold');axis(0 15000 0 4000);grid;fref= fref'% 初始化Worder=32; %濾波器階數(shù)lambda=1 ; % 設(shè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論