1
使用自迴歸(AR)濾波器在MATLAB一些隨機信號,如果我有一些信號x
讓利說濾波MATLAB
x = rand(1,1000)
,我想使用的自迴歸(AR)過濾器過濾x
產生y
訂單M
。我怎樣才能找到y(n)
?因爲自迴歸濾波器需要過去的輸出值進行計算,但我還沒有任何過去的輸出。我只有輸入樣本x
。
在移動平均線(MA)過濾器,我可以很容易地生成y(n)
因爲它只需要過去的投入,我可以很容易地提供,因爲我們有x
,如下
for n=1:1000
sum=0;
for k=1:M+1
if (n-k+1>0)
sum = sum + (1/M)*x(n-k+1); % MA depends on current & previous input
end
end
y(n)=sum;
end
任何人都可以請幫我生成相同的對於自迴歸濾波器?
謝謝,我知道了,請你回答我如何找到這些過濾水龍頭:a(k)? 是否有必要使用尤爾沃克公式找到(k)或有其他出路? –
查找水龍頭'a(k)'相當於[數字濾波器設計](https://en.wikipedia.org/wiki/Filter_design#Digital_filters)。從試驗和錯誤極點到最小二乘法有很多方法。 Yule-Walker方程是給定某個數據序列(也可以用作濾波器設計方法)來估計a(k)的一種方法。 – SleuthEye
@ SleuthEye:你能幫我回答一個類似的問題嗎?即使很少的提示將高度讚賞http://dsp.stackexchange.com/questions/27494/filtering-a-signal-using-autoregressive-ar-filter-and-finding-the-coeff-of-ar –