[問題]如何提高快速傅立葉轉換(FFT)的解析度
想請問各位大大
因研究fmcw rader碰到需要將取樣訊號利用FFT分析
希望在不增加取樣點數下,利用時域內插增加頻域解析度
那我的做法如下:
1.原始訊號(128點)經由一次線性內插到(255點)
2.再將內插後訊號FFT
但結果是有無內插的頻率誤差都相同(46.875 vs 46.875)(117.1875 vs 117.1875)
是小弟頻域軸刻度取錯,還是?...
小弟對訊號處理方面實在是外行
提高頻域解析度除了增加取樣點數之外,還有什麼方式可以增加呢?
希望可以有高手大大可以指點一下
clc;
clear;
Fs = 1000;
T = 1/Fs;
L = 128;
t = (0:L-1)*T;
y = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
t1 = (0:1/2:L-1)*T;
y1 = interp1(t,y,t1,'linear');
Y = fft(y,L);
Y1 = fft(y1,256);
f = linspace(0,Fs,L+1);
f1 = linspace(0,2*Fs,257);
figure(1);
subplot(2,1,1)
stem(f(1:128),abs(Y))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
subplot(2,1,2)
stem(f1(1:256),abs(Y1))
title('Single-Sided Amplitude Spectrum of y(t) with interpolation')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.234.147.93
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1431584266.A.240.html
推
05/14 19:10, , 1F
05/14 19:10, 1F
大大我了解在時域補零等同取樣時間拉長,可以提高頻域解析度,但是原本訊號不就
走鐘了嘛?這樣fft後還是不準>.<
※ 編輯: pttercake (36.234.147.93), 05/16/2015 17:12:26
自回一下,後來發現取樣頻率不變下,增加取樣時間(取樣數目增加),頻域解析度就
會提高!
※ 編輯: pttercake (36.232.132.202), 06/05/2015 08:02:19