声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2009|回复: 7

[其他] MUSIC方法识别特征频率,如何设置横轴频率与谱峰对应

[复制链接]
发表于 2015-12-8 10:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
matlab2014a 利用多重信号分类MUSIC的方法调用pmusic函数来辨识信号中的频率。程序如下:
  1. Fs=8000;   % 采样频率
  2. N=80000;  % 数据长度
  3. n=0:N-1;
  4. x=cos(0.257*pi*n)+sin(0.2*pi*n) + 0.01*randn(size(n));
  5. % [url]http://cn.mathworks.com/help/signal/ref/pmusic.html[/url]中example
  6. %x=0.23*cos(2*pi*38.6*n)+cos(2*pi*40*n)+0.01*randn(size(n));
  7. figure(1)
  8. plot(n,x)
  9. xlabel('采样数据');ylabel('幅值');title('采样信号时域波形')
  10. figure(2)
  11. pmusic(x,4)  
  12. [P,F]=pmusic(x,4,N,Fs); % [S,f]=pmusic(x,p,nfft,fs)
  13. k=(0:N/2)*Fs/N;
  14. figure(3)
  15. subplot(211)
  16. plot(F,20*log10(abs(P)))
  17. xlabel('频率 f/HZ');ylabel('幅值');title('MUSIC谱估计')
  18. subplot(212)
  19. plot(k,20*log10(abs(P)))
  20. xlabel('频率 f/HZ');ylabel('幅值');title('MUSIC谱估计')
复制代码


问题:如何设置横轴使特征频率和谱峰相对应
疑问:1.第一个信号取自pmusic函数的example,跑出的结果能明显看到有两个信号频率,如图1:

信号1的仿真结果

信号1的仿真结果


但是信号2跑出的结果却看不出有两个明显的信号频率,信号2的仿真结果如图2:

信号2的仿真结果

信号2的仿真结果

MUSIC方法具有高频率分辨力,为什么信号2的特征频率无法辨识?
2.信号2的仿真结果中0HZ处有明显的谱峰,有什么物理意义?
3.实际采集到的信号中并不清楚信号空间的维数p,请问p一般怎么取值?有什么算法可以确定吗?
希望有这方面经验的朋友指导一下,谢谢。


回复
分享到:

使用道具 举报

 楼主| 发表于 2015-12-9 08:50 | 显示全部楼层
希望了解的朋友给指点一下  谢谢
发表于 2015-12-9 09:15 | 显示全部楼层
你这里的信号1和信号2分别指的是什么信号?
发表于 2015-12-9 09:23 | 显示全部楼层
关于维数的确定可以参考我下面摘录的内容
001.JPG
002.JPG
003.JPG
 楼主| 发表于 2015-12-9 14:22 | 显示全部楼层
谢谢你的指点。
信号1是help pmusic中的example给出的信号,信号2是根据有关music方法文献中自己编的模拟输入信号。
关于信号源数目估计的AIC准则、MDL准则我再看看。非常感谢。
请问:1.music方法有很高的分辨率,为什么无法识别信号2中的38.6、40HZ信号频率?
         2.怎么样编程使横轴信号频率和纵轴谱峰对应,谱峰处显示实际频率?
希望你可以抽空解答一下,谢谢。
 楼主| 发表于 2015-12-9 14:23 | 显示全部楼层
Raspberry 发表于 2015-12-9 09:23
关于维数的确定可以参考我下面摘录的内容

谢谢你的指点。
信号1是help pmusic中的example给出的信号,信号2是根据有关music方法文献中自己编的模拟输入信号。
关于信号源数目估计的AIC准则、MDL准则我再看看。非常感谢。
请问:1.music方法有很高的分辨率,为什么无法识别信号2中的38.6、40HZ信号频率?
         2.怎么样编程使横轴信号频率和纵轴谱峰对应,谱峰处显示实际频率?
希望你可以抽空解答一下,谢谢。
发表于 2015-12-22 10:04 | 显示全部楼层
Cappuccinochou 发表于 2015-12-9 14:22
谢谢你的指点。
信号1是help pmusic中的example给出的信号,信号2是根据有关music方法文献中自己编的模拟 ...
  1. N=2048;  % 数据长度
  2. Fs=1/2048;   % 采样频率
  3. n=0:N-1;
  4. x=cos(0.257*pi*n)+sin(0.2*pi*n) + 0.01*randn(size(n));
  5. % [url]http://cn.mathworks.com/help/signal/ref/pmusic.html[/url]中example
  6. %x=0.23*cos(2*pi*38.6*n)+cos(2*pi*40*n)+0.01*randn(size(n));
  7. figure(1)
  8. plot(n,x)
  9. xlabel('采样数据');ylabel('幅值');title('采样信号时域波形')
  10. figure(2)
  11. pmusic(x,4,N)  
  12. [P,F]=pmusic(x,4,N,Fs); % [S,f]=pmusic(x,p,nfft,fs)
  13. k=(0:N/2)*Fs*2;
  14. figure(3)
  15. subplot(211)
  16. plot(F,20*log10(abs(P)))
  17. xlabel('频率 f/HZ');ylabel('幅值');title('MUSIC谱估计')
  18. subplot(212)
  19. plot(k,20*log10(abs(P)))
  20. grid on
  21. xlabel('频率 f/HZ');ylabel('幅值');title('MUSIC谱估计')
复制代码
发表于 2015-12-22 10:05 | 显示全部楼层
上面的很坐标单位是(*pi  rad/s)
如果要用赫兹的话采用k=(0:N/2)*Fs;
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-29 18:04 , Processed in 0.091033 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表