• 大小: 1KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-04-19
  • 语言: Matlab
  • 标签: RVM  MATLAB  

资源简介

基于墨西哥草帽小波函数进行连续小波变换的matlab变换程序。

资源截图

代码片段和文件信息

%  多个尺度连续小波变换的实现
clc;clear

%  下载信号
load vonkoch
vonkoch=vonkoch(1:510);

%  尺度1-32的连续小波变换
S_Min=1;S_Max=32;

index=0;
for scale=S_Max:-1:S_Min;
    index=index+1;
    cwt_coef(index:)=Singularity_Detection(scale32*(scale)vonkoch);
end

%  小波系数取模
cwtcoef_abs=abs(cwt_coef);

%  显示
for index=S_Min:S_Max
    max_coef=max(cwtcoef_abs(index:));  %  系数模最大
    min_coef=min(cwtcoef_abs(index:));  %  系数模最小
    ext=max_coef-min_coef;               %  系数模跨度
    cwtcoef_abs(index:)=64*(cwtcoef_abs(index:)-min_coef)/ext;  %  系数大小变换
end

figure(1)

subplot(211);
plot(vonkoch);
xlabel(‘时间‘)
ylabel(‘幅度‘)
title(‘分形信号‘)
axis([1 510 0 0.02])

subplot(212)
colormap(pink(64));
image(cwtcoef_abs)
set(gca‘YTick‘2:3:32)
set(gca‘YTickLabel‘32:-3:2)
title(‘连续小波变换时间尺度图‘)
xlabel(‘时间‘)
ylabel(‘尺度‘)

%  某个尺度的连续小波变换的M函数

%  delta 小波变换的尺度
%  N     小波函数的长度
%  s     原始信号
%  g     原始信号某个尺度下的小波变换系数

function g=Singularity_Detection(deltaNs);

%  原始信号长度
n=length(s);

%  构造墨西哥帽子小波函数
for index_x=1:N;
    x=index_x-(N+1)/2;
    phi_x(index_x)=((pi^(-1/4))*(2/sqrt(3)))*(1-x.*x/(delta^2))*exp(-(x.*x)/(2*delta^2));
end;
phi_x=phi_x/norm(phi_x);  %  能量归一化

%  对信号做卷积
g=conv(sphi_x);   %  卷积 这里为什么用的是卷积?小波变换不是信号和小波函数的乘积的积分吗
g=wkeep(gn);      %  保持信号长度

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1502  2013-06-30 09:37  CWT_mexh.m

----------- ---------  ---------- -----  ----

                 1502                    1


评论

共有 条评论