wzhnh2005:
隨著DSP技術的高建發展,人們對信號處理的實時性、準確性和靈活性的要求越來越高,DSP技術在信號處理中的地位也越來越重要。自適應濾波器是一種復雜的算法,設計它是為了在均衡信道,抵消回波,增強譜線,抑制噪聲等方面有所應用。而自適應濾波器的實現主要采用最小均方誤差算法完成。自適應算法通過調整濾波器系數來實現可以更好地跟蹤信號的變化,最終實現自適應濾波。 濾波是電子信息處理領域的一種最基本而又極其重要的技術。在有用信號的傳輸過程中,通常會受到噪聲或干擾的污染。利用濾波技術可以從復雜的信號中提取所需要的信號,同時抑制噪聲或干擾信號,以便更有效地利用原始信號。濾波器實際上是一種選頻系統,它對某些頻率的信號予以很小的衰減,讓該部分信號順利通過;而對其他不需要的頻率信號則予以很大的衰減,盡可能阻止這些信號通過。在電子系統中濾波器是一種基本的單元電路,使用很多,技術也較為復雜,有時濾波器的優劣直接決定產品的性能,所以很多國家非常重視濾波器的理論研究和產品開發。 1自適應濾波器簡介 自適應濾波器是能夠根據輸入信號自動調整性能進行數字信號處理的數字濾波器。作為對比,非自適應濾波器有靜態的濾波器系數,這些靜態系數一起組成傳遞函數。對于一些應用來說,由于事先并不知道所需要進行操作的參數,例如一些噪聲信號的特性,所以要求使用自適應的系數進行處理。在這種情況下,通常使用自適應濾波器,自適應濾波器使用反饋來調整濾波器系數以及頻率響應。總的來說,自適應的過程涉及到將價值函數用于確定如何更改濾波器系數從而減小下一次迭代過程成本的算法。價值函數是濾波器最佳性能的判斷準則,比如減小輸入信號中的噪聲成分的能力。隨著數字信號處理器性能的增強,自適應濾波器的應用越來越常見,時至今日它們已經廣泛地用于手機以及其它通信設備、數碼錄像機和數碼照相機以及醫療監測設備中。 2自適應濾波原理 自適應濾波器主要有無限沖激響應(IIR)和有限沖激響應(FIR)兩種類型,濾波器結構的選擇對算法的處理起著重要的影響。IIR型結構濾波器的傳輸函數既有零點又有極點,他可以用不高的階數實現具有陡峭通帶特性,缺點是穩定性不好,且相位特性難于控制。FIR濾波器是全零點濾波器,他是穩定的,且能實現線性的相位特性[2],因此,自適應濾波器的結構通常采用FIR型濾波器的橫向結構。 自適應濾波器的特性變化是由自適應算法通過調整濾波器系數來實現的。一般而言,自適應濾波器由兩部分組成,一是濾波器結構,二是調整濾波器系數的自適應算法。自適應濾波器的結構采用FIR或IIR結構均可,由于IIR濾波器存在穩定性問題,因此一般采用FIR濾波器作為自適應濾波器的結構。圖1給出了自適應濾波器的一般結構。 [圖片] 圖1為自適應濾波器結構的一般形式,圖中x(n)為輸入信號,通過參數可調的數字濾波器后產生輸出信號y(n),將輸出信號y(n)與標準信號(或者為期望信號)d(n)進行比較,得到誤差信號e(n)。e(n)和x(n)通過自適應算法對濾波器的參數進行調整,調整的目的使得誤差信號e(n)最小。 自適應濾波器設計中最常用的是FIR橫向型結構。圖2是橫向型濾波器的結構示意圖。 [圖片] 其中:x(n)為自適應濾波器的輸入;w(n)為自適應濾波器的沖激響應:w(n)={w(O),w(1),…,w(N-1)};y(n)為自適應 [圖片] 3自適應濾波算法 自適應濾波器除了包括一個按照某種結構設計的濾波器,還有一套自適應的算法。自適應算法是根據某種判斷來設計的。自適應濾波器的算法主要是以各種判據條件作為推算基礎的。通常有兩種判據條件:最小均方誤差判據和最小二乘法判據。LMS算法是以最小均方誤差為判據的最典型的算法,也是應用最廣泛的一種算法。 最小均方誤差(LeaST MeanSquare,LMS)算法是一種易于實現、性能穩健、應用廣泛的算法。所有的濾波器系數調整算法都是設法使y(n)接近d(n),所不同的只是對于這種接近的評價標準不同。LMS算法的目標是通過調整系數,使輸出誤差序列e(n)=d(n)-y(n)的均方值最小化,并且根據這個判據來修改權系數,該算法因此而得名。誤差序列的均方值又叫“均方誤差”(MeanSqluare Error,MSE)。 理想信號d(n)與濾波器輸出y(n)之差e(n)的期望值最小,并且根據這個判據來修改權系數wi(n)。由此產生的算法稱為LMS。均方誤差ε表示為: [圖片] 對于橫向結構的濾波器,代入y(n)的表達式: [圖片] 其中:R=E[X(n)XT(n)]為N×N的自相關矩陣,它是輸入信號采樣值間的相關性矩陣。P=E[d(n)X(n)]為N×1互相關矢量,代表理想信號d(n)與輸入矢量的相關性。在均方誤差ε達到最小時,得到最佳權系數[圖片]它應滿足下式:[圖片] 這是一個線形方程組,如果R矩陣為滿秩的,R-1存在,可得到權系數的最佳值滿足:W*=R-1p。用完整的矩陣表示為:[圖片] 顯然φx(m)=E[x(n)x(n-m)]為x(n)的自相關值,φxd(R)=E[x(n)d(n一k)]為x(n)與d(n)互相關值。在有些應用中,把輸入信號的采樣值分成相同的一段(每段稱為一幀),再求出R,P的估計值得到每幀的最佳權系數。這種方法稱為塊對塊自適應算法。如語音信號的線性預測編碼LPC就是把語音信號分成幀進行處理的。R,P的計算,要求出期望值E,在現實運算中不容易實現,為此可通過下式進行估計:[圖片] 用以上方法獲得最佳W*的運算量很大,對于一些在線或實時應用的場合,無法滿足其時間要求。大多數場合使用迭代算法,對每次采樣值就求出較佳權系數,稱為采樣值對采樣值迭代算法。迭代算法可以避免復雜的R-1和P的運算,又能實時求得近似解,因而切實可行。LMS算法是以最快下降法為原則的迭代算法,即W(n+1)矢量是W(n)矢量按均方誤差性能平面的負斜率大小調節相應一個增量:W(n+1)=W(n)-μ▽(n),這個“是由系統穩定性和迭代運算收斂速度決定的自適應步長。▽(n)為n次迭代的梯度。對于LMS算法▽(n)為下式E[e2(n)]的斜率:[圖片] 由上式產生了求解最佳權系數W*的兩種方法,一種是最陡梯度法。其思路為:設計初始權系數W(0),用W(n+1)=W(n)一μ▽(n)迭代公式計算,到W(n+1)與W(n)誤差小于規定范圍。其中▽(n)計算可用估計值表達式: [圖片] 上式K取值應足夠大。如果用瞬時一2e(n)X(n)來代替上面對-2E[e(n)X(n)]的估計運算,就產生了另一種算法——隨機梯度法,即Widrow-Hoft的LMS算法。此時迭代公式為: W(n+1)=W(n)+2ue(n)X(n) 以后討論的LMS算法都是基于WidrOW-Hoff的LMS算法。上式的迭代公式假定濾波器結構為橫向結構。對于對稱橫向型結構也可推出類似的迭代公式: W(n+1)=W(n)+2ue(n)[X(n)+X(n一N+1)] 4自適應濾波算法的理論仿真 使用Matlab編程,采用自適應濾波器技術實現信噪分離,也就是去噪。程序如下:[圖片] 程序運行的結果如圖3所示。[圖片] 通過CCS軟件環境,把濾波程序燒錄到DSP芯片中,在CCSDSK C5000環境下輸出仿真結果:輸入信號為余弦信號和隨機噪聲的疊加。程序正確運行后,觀察運行結果,得出如圖4,圖5所示的仿真圖。[圖片][圖片]