濾波技術(shù)是信號(hào)分析、處理技術(shù)的重要分支,無(wú)論是信號(hào)的獲取、傳輸,還是信號(hào)的處理和交換都離不開(kāi)濾波技術(shù),它對(duì)信號(hào)安全可靠和有效靈活地傳遞是至關(guān)重要的。信號(hào)分析檢測(cè)與處理的一個(gè)十分重要的內(nèi)容就是從噪聲中提取信號(hào),實(shí)現(xiàn)這種功能的有效手段之一是設(shè)計(jì)一種具有最佳線性過(guò)濾特性的濾波器,當(dāng)伴有噪聲的信號(hào)通過(guò)這種濾波器的時(shí)候,它可以將信號(hào)盡可能精確地重現(xiàn)或?qū)π盘?hào)做出盡可能精確的估計(jì),而對(duì)所伴隨噪聲進(jìn)行最大限度地抑制。維納濾波器就是這種濾波器的典型代表之一。 1.維納濾波概述 因此維納濾波器又常常被稱為最佳線性過(guò)濾與預(yù)測(cè)或線性最優(yōu)估計(jì)。這里所謂的最佳與最優(yōu)是以最小均方誤差為準(zhǔn)則的。 2.維納-霍夫方程的求解
3.FIR維納濾波器的matlab實(shí)現(xiàn) 3.1問(wèn)題描述 假設(shè)一個(gè)點(diǎn)目標(biāo)在x,y平面上繞單位圓做圓周運(yùn)動(dòng),由于外界干擾,其運(yùn)動(dòng)軌跡發(fā)生了偏移。其中,x方向的干擾為均值為0,方差為0.05的高斯噪聲;y方向干擾為均值為0,方差為0.06的高斯噪聲。 1) 產(chǎn)生滿足要求的x方向和y方向隨機(jī)噪聲500個(gè)樣本; 2) 明確期望信號(hào)和觀測(cè)信號(hào); 3) 試設(shè)計(jì)一FIR維納濾波器,確定最佳傳遞函數(shù): 4) 分別繪制出x方向和y方向的期望信號(hào)、噪聲信號(hào)、觀測(cè)信號(hào)、濾波后信號(hào)、最小均方誤差信號(hào)的曲線圖; 5) 在同一幅圖中繪制出期望信號(hào)、觀測(cè)信號(hào)和濾波后點(diǎn)目標(biāo)的運(yùn)動(dòng)軌跡。 3.2 Matlab仿真及運(yùn)行結(jié)果 用Matlab實(shí)現(xiàn)FIR濾波器,并將先前隨機(jī)產(chǎn)生的500個(gè)樣本輸入,得到最佳估計(jì)。具體程序如下: clear; clf; sita=0:pi/249.5:2*pi; xnoise=sqrt(0.05)*randn(1,500);%產(chǎn)生x軸方向噪聲 ynoise=sqrt(0.06)*randn(1,500);%產(chǎn)生y軸方向噪聲 x=cos(sita) xnoise;%產(chǎn)生x軸方向觀測(cè)信號(hào) y=sin(sita) ynoise;%產(chǎn)生y軸方向觀測(cè)信號(hào) %產(chǎn)生維納濾波中x方向上觀測(cè)信號(hào)的自相關(guān)矩陣 rxx=xcorr(x); for i=1:100 for j=1:100 mrxx(i,j)=rxx(500-i j); end end xd=cos(sita); %產(chǎn)生維納濾波中x方向上觀測(cè)信號(hào)與期望信號(hào)的互相關(guān)矩陣 rxd=xcorr(x,xd); for i=1:100 mrxd(i)=rxd(499 i); end hoptx=inv(mrxx)*mrxd';%由維納-霍夫方程得到的x方向上的濾波器最優(yōu)解 fx=conv(x,hoptx);%濾波后x方向上的輸出 nx=sum(abs(xd).^2); eminx=nx-mrxd*hoptx;%x方向上最小均方誤差 %產(chǎn)生維納濾波中y方向上觀測(cè)信號(hào)的自相關(guān)矩陣 ryy=xcorr(y); for i=1:100 for j=1:100 mryy(i,j)=ryy(500-i j); end end yd=sin(sita); %產(chǎn)生維納濾波中y方向上觀測(cè)信號(hào)與期望信號(hào)的互相關(guān)矩陣 ryd=xcorr(y,yd); for i=1:100 mryd(i)=ryd(499 i); end hopty=inv(mryy)*mryd';%由維納-霍夫方程得到的y方向上的濾波器最優(yōu)解 fy=conv(y,hopty);%濾波后y方向上的輸出 ny=sum(abs(yd).^2); eminy=ny-mryd*hopty;%y方向上最小均方誤差 subplot(2,4,1) plot(xd); title('x方向期望信號(hào)'); subplot(2,4,2) plot(xnoise); title('x方向噪聲信號(hào)'); subplot(2,4,3) plot(x); title('x方向觀測(cè)信號(hào)'); subplot(2,4,4) n=0:500; plot(n,eminx); title('x方向最小均方誤差'); subplot(2,4,5) plot(yd); title('y方向期望信號(hào)'); subplot(2,4,6) plot(ynoise); title('y方向噪聲信號(hào)'); subplot(2,4,7) plot(y); title('y方向觀測(cè)信號(hào)'); subplot(2,4,8) plot(n,eminy); title('y方向最小均方誤差'); figure; plot(xd,yd,'k'); hold on; plot(x,y,'b:'); hold on; plot(fx,fy,'g-'); title('最終結(jié)果'); 運(yùn)行結(jié)果如下: 圖2 x方向及y方向的期望信號(hào)、噪聲信號(hào)、觀測(cè)信號(hào)以及濾波后的最小均方誤差如上圖2所示。 圖3 濾波后的到的信號(hào)與原始信號(hào)和噪聲信號(hào)的對(duì)比如上圖3所示,濾波后的結(jié)果與期望信號(hào)還是很接近的,整體上達(dá)到了最優(yōu)濾波的效果。 |
|
來(lái)自: roseforgreat > 《電子工程》