日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

维纳滤波器matlab程序,维纳滤波原理及其matlab实现

發布時間:2023/12/14 循环神经网络 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 维纳滤波器matlab程序,维纳滤波原理及其matlab实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

濾波技術是信號分析、處理技術的重要分支,無論是信號的獲取、傳輸,還是信號的處理和交換都離不開濾波技術,它對信號安全可靠和有效靈活地傳遞是至關重要的。信號分析檢測與處理的一個十分重要的內容就是從噪聲中提取信號,實現這種功能的有效手段之一是設計一種具有最佳線性過濾特性的濾波器,當伴有噪聲的信號通過這種濾波器的時候,它可以將信號盡可能精確地重現或對信號做出盡可能精確的估計,而對所伴隨噪聲進行最大限度地抑制。維納濾波器就是這種濾波器的典型代表之一。

1.維納濾波概述

因此維納濾波器又常常被稱為最佳線性過濾與預測或線性最優估計。這里所謂的最佳與最優是以最小均方誤差為準則的。

2.維納-霍夫方程的求解

3.FIR維納濾波器的matlab實現

3.1問題描述

假設一個點目標在x,y平面上繞單位圓做圓周運動,由于外界干擾,其運動軌跡發生了偏移。其中,x方向的干擾為均值為0,方差為0.05的高斯噪聲;y方向干擾為均值為0,方差為0.06的高斯噪聲。

1)產生滿足要求的x方向和y方向隨機噪聲500個樣本;

2)明確期望信號和觀測信號;

3)試設計一FIR維納濾波器,確定最佳傳遞函數:

,并用該濾波器處理觀測信號,得到其最佳估計。(注:自行設定誤差判定閾值,根據閾值確定濾波器的階數或傳遞函數的長度)。

4)分別繪制出x方向和y方向的期望信號、噪聲信號、觀測信號、濾波后信號、最小均方誤差信號的曲線圖;

5)在同一幅圖中繪制出期望信號、觀測信號和濾波后點目標的運動軌跡。

3.2Matlab仿真及運行結果

用Matlab實現FIR濾波器,并將先前隨機產生的500個樣本輸入,得到最佳估計。具體程序如下:

clear;

clf;

sita=0:pi/249.5:2*pi;

xnoise=sqrt(0.05)*randn(1,500);%產生x軸方向噪聲

ynoise=sqrt(0.06)*randn(1,500);%產生y軸方向噪聲

x=cos(sita) xnoise;%產生x軸方向觀測信號

y=sin(sita) ynoise;%產生y軸方向觀測信號

%產生維納濾波中x方向上觀測信號的自相關矩陣

rxx=xcorr(x);

for i=1:100

for j=1:100

mrxx(i,j)=rxx(500-i j);

end

end

xd=cos(sita);

%產生維納濾波中x方向上觀測信號與期望信號的互相關矩陣

rxd=xcorr(x,xd);

for i=1:100

mrxd(i)=rxd(499 i);

end

hoptx=inv(mrxx)*mrxd';%由維納-霍夫方程得到的x方向上的濾波器最優解

fx=conv(x,hoptx);%濾波后x方向上的輸出

nx=sum(abs(xd).^2);

eminx=nx-mrxd*hoptx;%x方向上最小均方誤差

%產生維納濾波中y方向上觀測信號的自相關矩陣

ryy=xcorr(y);

for i=1:100

for j=1:100

mryy(i,j)=ryy(500-i j);

end

end

yd=sin(sita);

%產生維納濾波中y方向上觀測信號與期望信號的互相關矩陣

ryd=xcorr(y,yd);

for i=1:100

mryd(i)=ryd(499 i);

end

hopty=inv(mryy)*mryd';%由維納-霍夫方程得到的y方向上的濾波器最優解

fy=conv(y,hopty);%濾波后y方向上的輸出

ny=sum(abs(yd).^2);

eminy=ny-mryd*hopty;%y方向上最小均方誤差

subplot(2,4,1)

plot(xd);

title('x方向期望信號');

subplot(2,4,2)

plot(xnoise);

title('x方向噪聲信號');

subplot(2,4,3)

plot(x);

title('x方向觀測信號');

subplot(2,4,4)

n=0:500;

plot(n,eminx);

title('x方向最小均方誤差');

subplot(2,4,5)

plot(yd);

title('y方向期望信號');

subplot(2,4,6)

plot(ynoise);

title('y方向噪聲信號');

subplot(2,4,7)

plot(y);

title('y方向觀測信號');

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('最終結果');

運行結果如下:

圖2

x方向及y方向的期望信號、噪聲信號、觀測信號以及濾波后的最小均方誤差如上圖2所示。

圖3

濾波后的到的信號與原始信號和噪聲信號的對比如上圖3所示,濾波后的結果與期望信號還是很接近的,整體上達到了最優濾波的效果。

總結

以上是生活随笔為你收集整理的维纳滤波器matlab程序,维纳滤波原理及其matlab实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。