各種自適應濾波器總結


音質優化,回聲消除試聽:https://pan.baidu.com/s/1nvObNvz

時域:

----------------------------------------------------------------------------------------------------------------------

LMS濾波器

參數更新公式:

 

權重更新收到輸入信號的能量影響較大,輸入信號能量越大,步長取值應該較小,保證不容易發散。

步長太大,容易發散。

步長太小,穩定,但是收斂速度慢,相互矛盾。

缺點:

1.逐個點更新,計算量大

2.瞬時跟蹤能力較弱

 

NLMS濾波器

將輸入信號的能量融合入權重更新公式,則

 

優點:對於不太平穩的語音,相對LMS,也有較快的收斂性和平穩性。

 

計算量問題:

LMS算法:M階自適應濾波器作用,有M次乘法,權重因子更新,則有M+1次乘法。M階濾波器走一圈,則有2M+1次乘法。

NLMS算法:需要加上額外的能量乘法計算,則有3M+2次乘法。

計算量都正比於M階系數。

對於NLMS中能量的計算,可以用平均能量做平滑進行估計,減小計算量:

 

AP算法:NLMS的一般化

利用了P列歷史數據,后續的參數計算都是矩陣計算,不再是逐個點計算。有更好更快的收斂性,但是 計算量變大為

重復利用過去的數據來提高收斂速度,但數據重用也導致了計算復雜度的增大。

當P為1時,退化成NLMS。 

 

RLS算法:最小化加權重的均方誤差和。

越久的點,則占的權重就越小,符合實際情況,滿足非平穩的特性。

更新公式:

其中,

 

復雜度:

----------------------------------------------------------------------------------------------------------------------

可變步長:

 

----------------------------------------------------------------------------------------------------------------------

時延估計:

 

DTD檢測: 

http://www.docin.com/p-1263426732.html

http://www.docin.com/p-848898417.html&dpage=1&key=%E5%9B%9E%E9%9F%B3%E6%80%8E%E4%B9%88%E6%B2%BB

《一種新的回音消除的雙向通話檢測算法》

能量比較法

GEIGEL法    簡單誤判率高

 

 

相關函數法   計算量大

 

回聲路徑估計法   復雜

兩矢量夾角法  就是下面那個公式

 

 

如果v(n)由u(n)經過線性系統獲得,則該系數為1,表示兩者之間的線性關系,相關度。

 

 

 

NLP后處理:

----------------------------------------------------------------------------------------------------------------------

子帶自適應濾波器的若干問題

子帶濾波器要完美重建需要滿足一定條件,實際工程中,只需滿足現實需求即可。

優點:

1.分成子帶后,每個子帶的信號變得相對平坦,頻譜下采樣后,有利於濾波器收斂。

 

 

代碼中,對子帶頻域信號進行循環偏移(時域抽取),只取前面FS/D。

D決定了把頻譜分成幾個塊,把這幾個塊進行循環右移動0~D-1,疊加在第一個塊中。

Hz(i) 送入第幾個子帶信號,進行下采樣(頻譜下采樣最后得到 W/D帶寬的窄帶信號)。

 

子帶信號的時域和頻域做法

子帶時域,每隔D次更新      恢復,先通過FFT變換,變成頻域子帶信號(已經偏移好了),之后如頻域做法

頻域做法就是偏移疊加,取第一個塊。    恢復全帶過程:  重新組合,   頻域全帶   Ifft    時域全帶

 

相對於子帶,過采樣的好處,減少混疊。如果是嚴格下采樣,相鄰子帶有混疊。

將子帶信號進行頻譜下采樣后,可以重新排列,組合成全帶信號。

因為子帶 1,2,3 和 子帶 7,6,5  共軛對稱。所以僅需子帶0,1,2,3,4可以恢復出全帶信號。(i=1,2,...N/2-1)子帶  與   N-i子帶共軛對稱。

 

2.分成子帶后,濾波器的階數較低,計算量較小。

3.分成子帶后,有利於各個子帶的並行處理。

缺點:

下采樣會造成各個子帶有混疊,而且混疊不可避免。對於單個子帶來說,混疊相對於添加了噪聲,這個會干擾自適應的過程。 

為了減小混疊的影響,可以進行過采樣,但是這會造成許多小的特征值(自相關矩陣),這稱為子帶邊界效應。

過采樣的好處:減小混疊,均方誤差較小;但是相對於嚴格下采樣,一個快的初始收斂,慢的穩定收斂漸進線(邊界效應,小的特征值),如圖:

 

解決的思路:1.融合自適應cross-filter濾波器進行混疊補償。 2.采用MSAF。 3.采用閉環結構。最小化全局的均方誤差,而不是子帶。

fir1(127,1/4)低通原型濾波器,Hi(z) = 原型濾波器  指數調制,為復數,所以頻譜不會對稱。

     

四個子帶; 過采樣2倍,減小混疊,但是造成小的特征值;嚴格下采樣,還是包含不希望的混疊分量。

 

 

cross-filter,相鄰子帶之間相互影響的因素考慮進去:如圖

 

開環結構:

對輸入信號和期望信號都進行子帶分解,每個子帶濾波器都各自獨立的進行自適應收斂,它不是全局均方誤差最小化,而是

各個子帶均分誤差之和最小。

 

閉環結構:

對輸入信號和誤差信號進行子帶分解,最小化全局整頻帶的均方誤差最小,有利於減小邊界效應和混疊效應,合成時有時延對齊。

 

 

PNLMS 加快收斂,誤差較大

IPNLMS(improved proportionate) 擴展了NLMS算法,使用不同的步長,針對不同的系數,收斂率不依賴於信號的能量強度。

PMSAF 使用一系列子帶信號 用全帶濾波器

PMSAF在自適應階段使用子帶信號,這是與IPNLMS最主要的區別。

與之相似的是,步長的計算基於每個系數的幅度。

基本思想:剛開始用大步長,后面用小步長。梯度大時,用小步長,梯度小時,用大步長。

 

BLMS     分塊的LMS時域算法

FBLMS   分塊的LMS頻域實現算法,可能造成大的時延

PFBLMS  分塊頻域快速塊LMS,可以減小時延,處理長時回聲

PBFDAF  或者說FBLMS是MDF的特殊情況,h(n)不作分塊,或者說分塊為1.

又稱為MDF, 與FBLMS,不同的是,h(n)也做了分塊,分段塊頻域自適應濾波,處理長時回聲,時延小


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM