matlab中傅里叶变换的问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 06:14:19
对于这么一个命令 [YY,FS,NBITS]=WAVREAD('Harley.wav');
然后对YY做快速傅里叶变换.

请问FS和傅里叶变换后的横坐标频率有什么关系.

或者说我想对YY做完FFT后,PLOT出一个转换完的函数关于频率的图像,该如何定义自变量?
该自变量能和YY的自变量t一样吗?
plot(abs(fft(YY)); 横坐标是sample而不是频率

fft(YY)这个命令默认是进行 N=length(YY)点数的傅里叶变换,对于离散傅里叶变换,N的位置就是fs 所以对于 Y(k)=fft(YY)中,k表示的频率点的位置是
fs*k/N

因此你如果要以频率为横坐标,可以这样写
N=length(YY);
f=(1:N)*fs/N;
plot(f,abs(fft(YY));

plot(abs(fft(YY)));是作出信号的幅度谱图,即强度与频率图像
plot(abs(unwrap(fft(YY))));是作出信号的相位谱图,即相位与频率图像
另外,要明白上述两个图的含义必须预先知道信号的抽样频率。。。
一般wav的都是22khz或者44khz的。。。