讓的說,我們有以下信號過濾器應用到給定信號
function [ x ] = generate1(N,m,A3)
f1 = 100;
f2 = 200;
T = 1./f1;
t = (0:(N*T/m):(N*T))'; %'
wn = randn(length(t),1); %zero mean variance 1
x = 20.*sin(2.*pi.*f1.*t) + 30.*cos(2.*pi.*f2.*t) + A3.*wn;
%[pks,locs] = findpeaks(x);
%plot(x)
end
與代碼
y=generate1(3,500,1);
現在假設我想這與下面則150頻率的所有組件,所以我需要低但如何應用在這種情況下?請告訴我,我是新的過濾器設計問題,我可以構建過濾器自己?提前致謝
查看MATLAB的butter()命令。您可以傳遞標準化頻率和截止頻率,並指定一個高通濾波器,它將返回濾波器係數。然後您可以使用filtfilt()函數應用過濾器。非常簡單。注意:如果你想要低於150的頻率,你實際上需要一個低通濾波器,但濾波器的設計方法應該是相同的。 – ewz
是的,你是對的,對不起,這是錯誤的 –
請僅舉例說明如何應用它,將其作爲回答 –