如下,根据小波局部模极大值求解李氏指数,程序如下,有错,大侠帮忙啊(照着论文中的做的,原信号编程有点差异,附件将论文传上了)
clc
T=0:0.001:3;
A=(1-(abs(0.16-T).^0.6)).*(T<=0.16&T>0)+(1-(abs(0.16-T).^0.2)).*(T<=0.32&T>0.16)+(1-(abs(0.56-T).^0.8)).*...
(T<=0.56&T>0.32)+(1-(abs(0.56-T).^0.4)).*(T<=0.72&T>0.56)+(1.8-(abs(0.72-T).^0)).*(T<=2&T>0.72)+((-0.8+(abs(0.72-T).^0)).*(T<=3&T>1));
plot(T,A)
% 参数设置, 把信号signal 进行连续小波变换、取绝对值。
startscale = 1; endscale = 20; cwtfunction = 'gaus1';
w = cwt( A, startscale:endscale, cwtfunction) ; f = abs (w ) ;
% 步骤1: 获取f 矩阵的局部模极大值暂存wtfm 矩阵。
% 步骤2: 归类极大值线。
tranm = wtfm'; [post, scat] = find ( tranm~= 1); % 利用FIND 命令, 搜索极大值点。
pos = post'; sca = scat'; index = 1