假设H
是一个向量,并且F = fft(H,nfft)
。
我不知道如何选择合适的nfft,这是fft序列的长度。以及如何获得fft序列中每个点的频率?我在
中读到了一个例子http://www.mathworks.de/help/matlab/math/fast-fourier-transform-fft.html
它说频率向量是:
fv = (0:nfft-1)*fs/nfft.
fs是采样频率。但是如何决定fs?
如果有人可以向我解释这些问题,我真的很感激。
PS:我想从图像中提取特征。特征是高阶矩定义如下:
M = sum (f_ j * |F(f_ j)| ) /sum ( |F(f_ j)| ) , j = 1:L/2
其中M
是时刻,n
是时刻的顺序,F
是FFT序列,L
是FFT序列的长度,{{1 } {是频率为F(f_ j)
的{{1}}的组件。但我不知道如何获得频率F
。
*****补充我的问题******
f_ j
基于运行长度直方图分析的分析“。 提交人在2.3节中提到了频率fj。如果有人能阅读那部分内容,我将非常感激。
答案 0 :(得分:0)
我不知道图像,但我为输出做了这个波形:
x=adc_out(3:1:16386);
f=abs(fft(x))/16384;
dbpsd=20*log10(x);
**freq= 256*linspace(0,0.5,16384);**
plot(freq,dbpsd(1:1:16384/2))
16384
是fft
点的数量,256
是我的采样频率。
答案 1 :(得分:0)
对于图像,采样频率取决于分辨率(每厘米点数或每英寸点数)。但是,人们通常不需要知道采样频率,因为它不会影响转换结果。
例如,每英寸分辨率为100点的10英寸×10英寸图片在数字上等同于放大到20英寸×20英寸但分辨率为每英寸50点的同一张图片。后者的采样频率是前者的一半,但是只要采样值相同,差异就不会影响它们各自的DFT结果。