向各位大牛请教!!
本帖最后由 wdhd 于 2016-9-2 13:47 编辑我刚接触MATLAB,使用MATLAB的FFT函数,对y=sin(2*pi*t)进行变换时,得到的频域信号如下:
在频域中不仅1Hz附近有能量,其他频率上(0~2Hz)之间,也有能量分布,如何理解呢?
另外,频域上的信号单位是什么?为什么幅值是5??
谢谢大家了。
图没粘上!
频域图如下: 把程序帖出来看看。 你的信号 频率 为1HZ采样频率为 5HZ
我觉的 没有问题 程序的代码很简单,如下:
t = 0:0.1:1;
x = sin(2*pi*t);
figure(1);
plot(t,x);
Y = fft(x,10);
y=abs(Y);
f = 10*(0:5)/10;
figure(2);
plot(f,y(1:6));
上图中,变换后的纵坐标单位是什么?另外,为什么幅值是5呢??
谢谢了。 原帖由 mofei 于 2007-1-8 22:30 发表
我刚接触MATLAB,使用MATLAB的FFT函数,对y=sin(2*pi*t)进行变换时,得到的频域信号如下:
file:///C:/DOCUME%7E1/ff/LOCALS%7E1/Temp/msohtml1/01/clip_image002.jpg
在频域中不仅1Hz附近有能量,其他频率 ...
请搜索本版精华贴 这是由于谱分析中泄漏(leakage)所造成的,是正常现象。
回复 #6 mofei 的帖子
增加采样点数。效果会好一些。。 原帖由 mofei 于 2007-1-9 19:36 发表
程序的代码很简单,如下:
t = 0:0.1:1;
x = sin(2*pi*t);
figure(1);
plot(t,x);
Y = fft(x,10);
y=abs(Y);
f = 10*(0:5)/10;
figure(2);
plot(f,y(1:6)); ...
采样点才10个,
采频为10,
频率分辨率fs/n=1 Hz,
所以在0-2hz都会有能量出现。
建议增加采样点数,提高频率分辨率。。。
我认为没有问题
信号 频率为1Hz 而采样率为 10Hz 采样率没有问题没有必要 提高采样点数
而且是整周期采样 变换结果没有泄露
至于 为什么幅值 是 5这是 由fourier 级数 和 离散fourier 变换 的相互关系 产生的
DFT 变换后 是以 N采样点为周期 所以 fourier 级数展开式的幅值 是 DFT变换后 得到X(n)/N;
5除以10为0.5,觉得 还有问题 ,其实变换后是双边谱所以 就只有一半了
回复 #11 xuefei01 的帖子
0到2上 是没有能量分布的这是由于 你用plot 作图命令造成的 另外要注意FFT 是离散 fourier 变换的快速算法谢谢了。
plot明白了,但楼上您说“是以 N采样点为周期 所以 fourier 级数展开式的幅值 是 DFT变换后 得到X(n)/N”能否再解释一下呢。回复 #13 mofei 的帖子
建议 看一下 数字信号 处理 连续 fourier变换CFT 和 离散fourier变换DF之间的关系
页:
[1]