hhx 发表于 2007-7-31 01:06

请问:如何由小波脊线求得瞬时频率?

提取小波系数的模极大值,可得到小波脊线,如何由小波脊线求信号的瞬时频率与瞬时振幅呢?恳请指点!

破凰 发表于 2007-7-31 13:38

原帖由 hhx 于 2007-7-31 01:06 发表 http://www.chinavib.com/forum/images/common/back.gif
提取小波系数的模极大值,可得到小波脊线,如何由小波脊线求信号的瞬时频率与瞬时振幅呢?恳请指点!

g(t)是所选小波的对称窗函数,w0是小波的中心频率。

xuxuesan 发表于 2012-10-2 22:23

请问楼主你是怎么提取小波脊的啊?

noki0323 发表于 2012-10-10 18:23

matlab有函数,好像是某某2freq,具体忘记了。就是小波系数转换成频率,您可以查查。

青霜 发表于 2012-10-17 13:13

xuxuesan 发表于 2012-10-2 22:23 static/image/common/back.gif
请问楼主你是怎么提取小波脊的啊?

同学,你问题解决了么,我也遇到同样问题,提取的小波脊不对,希望能交流下

xuxuesan 发表于 2012-10-17 14:57

好,我qq是714324960

周文静 发表于 2014-10-9 15:36

小波脊线怎么提取的啊{:{19}:}

Mrchen 发表于 2018-4-2 21:12

破凰 发表于 2007-7-31 13:38
g(t)是所选小波的对称窗函数,w0是小波的中心频率。

请问,我在论坛看到您发的关于小波脊的提取程序,有两个不明白的地方。
clc;
clear all;
a(1)=25;
Te=0.001;
t=0:0.001:1;
s=cos(2*pi*(30*(t.^2)+40*t));%改了一下原信号
%s=hilbert(s);
%hudu=4*pi;
%用morlet小波进行分析;
kk=length(t);
k=0;
aa=0;
bb=0;
w0=2*pi;%cmor2-1小波的中心频率为2pi
for j=2:kk
    while 1
      wa=cwt(s,a(1),'cmor2-1');   
      fai=angle(wa);
      fai=unwrap(fai);
      dfa=abs(fai(j)-fai(j-1));
      a0=w0*1/dfa;
      if abs((a0-a(1))/a(1))<0.02%阈值不宜过小
            ar(j-1)=a(1);
            a(1)=a0;
            break;
      end
      a(1)=a0;
    end
end
f=1./(ar*Te);
plot(t(1:kk-1),f);
这里面的a(1)=25;是为什么,如果我换了分析对象,改如何设置?
还有就是具体应该怎么从得到的小波脊线中求取信号的瞬时幅值?
页: [1]
查看完整版本: 请问:如何由小波脊线求得瞬时频率?