我想知道我的程序为什么出现四个峰,不是只有60和90的频率么?
我想知道我的程序为什么出现四个峰,不是只有60和90的频率么?clear
fs=200 ;
t=0:1/fs:0.6;
x=1.23*sin(2*pi*90*t+5)+1.46*sin(2*pi*60*t);
n=1024;
y=fft(x,n);
n=0:length(y)-1;
f=fs*n/length(y);
plot(f,abs(y))
麻烦高手运行一下
[ 本帖最后由 江河之北 于 2008-6-25 17:14 编辑 ] 只需取频率0-100之间,而100-200之间对应的是负频率。
回复 2楼 的帖子
谢谢您老师 :handshake :handshake回复 2楼 的帖子
宋老师,如果我再计算这个频谱图的功率谱该如何计算呢,需要调用psd这个命令么?或者就是幅值的平方呢?回复 楼主 的帖子
对普通信号做傅里叶变换得到的谱图是对称的,要得到单边谱的话可以先对信号做希尔伯特变换使信号成为解析信号,这时再做傅里叶变换就是单边谱了。功率谱估计有多种方法,对应的matlab命令也有多个,你可以用psd,pwelch,periodogram等,具体格式用help看一下就行了回复 5楼 的帖子
我是想知道在频谱的基础上怎么求功率谱,psd好像是对顶楼的x来求功率谱的吧回复 5楼 的帖子
对信号做希尔伯特变换使信号成为解析信号,能否给出具体的程序,小弟不是学信号处理的呀 用hilbert(x)对x做希尔伯特变换,并作为解析信号的虚部,x作为解析信号的实部,然后再做傅里叶变换就行了。呵呵,有些事情还是得自己动手啊。
页:
[1]