matlab一維離散的數(shù)據(jù)序列如何進行低通濾波?
-
有一個離散的一維數(shù)據(jù)序列X,想要進行低通濾波,是不是要用 y = filter(B, A, X)?那么其中B和A兩個參數(shù)是如何確定的呢? 如何確定該列數(shù)據(jù)頻域范圍,用FFT嗎? 頻譜圖是用abs(fft(X))進行繪制嗎?怎么判斷頻譜圖中哪部分是噪聲呢?
全部評論(1條)
-
- love_xue_58 2017-05-16 18:34:06
- 樓主你好 濾波要先設(shè)計濾波器,b,a代表濾波器設(shè)計的參數(shù)。一般可以使用巴特沃斯濾波器。 例如低通濾波器的設(shè)計代碼為: data = importdata('t2.txt'); Time = data(:,1); SA = data(:,2); dtt=diff(Time); dt=sum(dtt)/length(dtt); Fs=round(1/dt);%采樣頻率 Wp = 5/(Fs/2); %通帶截止頻率,這個自定大致定義 Ws = 10/(Fs/2);%阻帶截止頻率,這個自定大致定義 Rp = 2; %通帶內(nèi)的衰減不超過Rp,這個自定大致定義 Rs = 40;%阻帶內(nèi)的衰減不小于Rs,這個自定大致定義 [n,Wn] = buttord(Wp,Ws,Rp,Rs);%巴特沃斯數(shù)字濾波器Z小階數(shù)選擇函數(shù) [b,a] = butter(n,Wn);%巴特沃斯數(shù)字濾波器 [h,w]=freqz(b,a,512,F(xiàn)s); %計算濾波器的頻率響應(yīng) plot(w,abs(h))%,'LineWidth',1繪制濾波器的幅頻響應(yīng)圖 %************************************************************************** %對輸入的信號進行濾波 RollAf=filtfilt(b,a,RollA);%filtfilt這個函數(shù)是0相位濾波,沒有偏移。filter有偏移。 ************************************************************************** %% 濾波結(jié)果繪圖 figure subplot(2,2,1) H=plot(Time,RollA,Time,RollAf,'r--');%,'linewidth',3 set(H(2),'linewidth',2) 其中;Wp,Ws是一元向量時,則設(shè)計的是低通或高通濾波器,若Wp,Ws是二元向量,則設(shè)計帶通或帶阻濾波器。 可以使用fft函數(shù)。 希望對你有幫助,
-
贊(15)
回復(fù)(0)
熱門問答
- matlab一維離散的數(shù)據(jù)序列如何進行低通濾波?
- 有一個離散的一維數(shù)據(jù)序列X,想要進行低通濾波,是不是要用 y = filter(B, A, X)?那么其中B和A兩個參數(shù)是如何確定的呢? 如何確定該列數(shù)據(jù)頻域范圍,用FFT嗎? 頻譜圖是用abs(fft(X))進行繪制嗎?怎么判斷頻譜圖中哪部分是噪聲呢?
2017-05-16 11:25:45
929
1
- matlab 低通濾波
- 我有采集了一組加速度數(shù)據(jù),需要對這些數(shù)據(jù)進行10Hz低通高頻濾波,可是我一點思路都沒有,請高手指教!
2018-11-25 05:08:26
396
0
- matlab ,已有數(shù)據(jù),如何濾波?
- 我有一組數(shù)據(jù):A: 0.000500 0.001000 0.001500 0.002000 0.002500 0.003000 0.003500 0.004000 0.004500 0.005000 B: 1281.242606 1281.241405 1281.240573 1281.239272 1281.239636 1281.242237 1281.242333 1281.242881 1281.241772 1281.241039 這只是一... 我有一組數(shù)據(jù):A: 0.000500 0.001000 0.001500 0.002000 0.002500 0.003000 0.003500 0.004000 0.004500 0.005000 B: 1281.242606 1281.241405 1281.240573 1281.239272 1281.239636 1281.242237 1281.242333 1281.242881 1281.241772 1281.241039 這只是一部分,全部數(shù)據(jù)用plot(A,B)畫圖為類似方波的形式,它含有大概50Hz以上雜波分量,如何除去雜波,得到方波,具體思路是什么?因為這不是具體函數(shù),本人無從下手。求解,謝謝 展開
2013-05-16 04:56:42
379
4
- 已知離散序列的頻譜和低通濾波器的系數(shù),如何濾波
- 已知原始信號的頻譜S,和濾波器系數(shù)hn,做濾波 我的做法是,把hn進行DFT得到Hk,然后用S與Hk做乘法,但感覺是所有頻率都進行濾波了,我不知道是不是這么做還是濾波器沒涉及好,求指教!
2013-10-20 05:24:01
365
1
- 低通平滑濾波
- 什么是低通平滑濾波,在對什么數(shù)據(jù)采集后需要低通平滑濾波?
2017-09-27 20:35:28
538
1
- 離散時間序列的幾種頻譜分析方法的MATLAB實現(xiàn)
2013-08-25 21:44:21
553
1
- 對壓力傳感器得到的信號應(yīng)進行怎樣的濾波,高通還是低通?
- 用來檢測氣墊床壓力,Z大壓力大概是30kpa,選了個0-50kpa的傳感器MPX2050D,截止頻率設(shè)為多少比較好... 用來檢測氣墊床壓力,Z大壓力大概是30kpa,選了個0-50kpa的傳感器MPX2050D,截止頻率設(shè)為多少比較好 展開
2011-04-06 04:26:45
369
3
- 離散的信號數(shù)據(jù)如何通過matlab分析它的頻譜?跪求程序
2012-12-05 19:04:28
301
2
- 隧道超前地質(zhì)雷達分析中的高通濾波和低通濾波怎么搞
2018-11-17 10:24:37
305
0
- matlab中如何對正弦函數(shù)的采樣序列進行頻譜分析
- clear; Fs=100; N=64; t=(0:1/Fs:1); y=sin(2*pi*10*t); stem(t(1:N),y(1:N)); 用上面的語句采樣,之后用Y=fft()進行FFT計算頻譜,那括號中應(yīng)該是什么?還有FFT之后如何將橫坐標轉(zhuǎn)換成頻率。謝謝!
2018-03-28 23:07:28
500
1
- matlab怎么用以設(shè)計好濾波器進行濾波
2014-12-28 15:48:19
434
2
- 如何利用matlab對很大的數(shù)據(jù)進行頻譜分析
2017-08-18 04:47:28
382
1
- 如何利用matlab對很大的數(shù)據(jù)進行頻譜分析
2016-07-17 23:09:49
428
1
- 卡爾曼濾波如何進行多次濾波
- 如果我已經(jīng)進行了一次卡爾曼濾波,但是還想進行第二次第三次看看效果,怎么做,Z好是有MATLAB程序
2017-07-26 17:05:51
366
1
- labview采集數(shù)據(jù)進行中位值平均濾波或者算術(shù)平均濾波
- 我用labview和NI公司的硬件進行溫度量采集,用labview數(shù)據(jù)采集助手進行連續(xù)采樣,先用濾波VI對數(shù)據(jù)采集助手出來的信號進行了低通濾波,現(xiàn)在想再加上中位值平均濾波或者算術(shù)平均濾波。... 我用labview和NI公司的硬件進行溫度量采集,用labview數(shù)據(jù)采集助手進行連續(xù)采樣,先用濾波VI對數(shù)據(jù)采集助手出來的信號進行了低通濾波,現(xiàn)在想再加上中位值平均濾波或者算術(shù)平均濾波。 labview沒怎么用過,請問怎么樣可以實現(xiàn)這樣濾波,能不能說的詳細點,或者大致編下程序截下圖,謝謝了。 我試了統(tǒng)計VI,不知道統(tǒng)計VI是計算信號哪段的中值,可不可以用來算術(shù)平均濾波。 請知道的幫下忙,感激啊.. 展開
2013-08-25 20:05:05
542
2
- 如何將示波器采集到的離散信號導(dǎo)入Matlab來進行頻譜分析?
2012-11-06 16:02:49
331
1
- 求用matlab實現(xiàn)fir濾波器(低通、高通,帶通)
- 要求輸入信號帶有噪聲,無論用那種設(shè)計方法實現(xiàn),只要濾波效果好就行了。急急急
2009-03-23 06:36:04
337
3
- 如何采用matlab對單片機采集的數(shù)據(jù)進行頻譜分析?
- 我用單片機采集到電動機的振動信號,并通過ad轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號。但是,這些數(shù)字信號如何移植到matlab中,進行頻譜分析?
2012-09-14 15:50:27
580
3
- 使用matlab中fdatool導(dǎo)出的高通butterworth IIR濾波器系數(shù)如何在程序中進行濾波
- 導(dǎo)出的系數(shù)為 const int NL = 10; const real64_T NUM[10] = { 0.8558457777315, -7.702611999584, 30.81044799834, -71.89104532945, 107.8365679942, -107.8365679942, 71.89104532945, -30.81044799834, 7.702611999584, ...
導(dǎo)出的系數(shù)為
const int NL = 10;
const real64_T NUM[10] = {
0.8558457777315, -7.702611999584, 30.81044799834, -71.89104532945,
107.8365679942, -107.8365679942, 71.89104532945, -30.81044799834,
7.702611999584, -0.8558457777315
};
const int DL = 10;
const real64_T DEN[10] = {
1, -8.688722481439, 33.55806880257, -75.61737954546,
109.553642522, -105.8293351142, 68.16455775223, -28.22860996292,
6.820250022448, -0.7324719952609
};
在程序中進行差分計算得到濾波結(jié)果,如下:
pWave為輸入波形,pFilter的內(nèi)容也復(fù)制為輸入波形
for(i=16; i
32768) { float_Value = 32768; } if (float_Value<-32768) { float_Value = -32768; } *(pFilter+i) = (float)(float_Value);//濾波 } 得到的結(jié)果波形不對。 請教問題在哪里? 展開
2013-07-18 13:57:09
554
2
- multisim中要檢驗電路是否實現(xiàn)低通濾波功能
2017-05-25 10:11:25
612
2
4月突出貢獻榜
推薦主頁
最新話題





參與評論
登錄后參與評論