%内含2种最优小波基计算
clear;
close all;
clc;
load('M.mat');
[max_M,index]=max(M);%找到每列最大值和每列最大值所在的行数
%[phi,g1,xval]=wavefun('haar',10);%获得参数,以得到小波时域图
for i=1:7
M(:,i)=M(:,i)/max_M(i);
end%归一化
[phi,g1,xval]=wavefun('db2',15);%建议使用10次以上迭代计算,比较精确
[m,p]=max(g1);%找到最大值和最大值所在的行数
d=fix(length(g1)/1000);%带余除法取商,确定采样间隔
a=mod(p,d);%确定能取到最大值的首个位置
if a==0
a=d;
end
l=(g1(a:d:length(g1))/m)';%采样后的小波,归一化
wavelet=l([1:1000]);%取前1000个点
[m,p]=max(wavelet);
plot(wavelet);
%相似性计算
%b=circshift(a',[2,0]);%列向量向下循环位移2个
% for i=1:7
% b=circshift(wavelet,[index(i)-p,0]);
% k=corrcoef(b,M(:,i));
% gamma(i)=k(1,2)%相关计算
% end
s=0;x1=0;x2=0;m1=mean(M);m2=mean(wavelet);
for i=1:7
b=circshift(wavelet,[index(i)-p,0]);
for k=1:1000
s=s+abs(M(k,i)-m1(i))*abs(wavelet(k)-m2);
x1=x1+(M(k,i)-m1(i))^2;
x2=x2+(wavelet(k)-m2)^2;
end
%方法1
gamma(i)=abs(s)/sqrt(x1*x2);
%方法2
%k=corrcoef(b,M(:,i));
%gamma(i)=k(1,2)%相关计算
end
% subplot(2,1,1);
% plot(xval,g1,'LineWidth',2);xlabel('t');title('db4?时域');
% g2=fft(g1);g3=abs(g2);
% subplot(2,1,2);
% plot(g3,'LineWidth',2);xlabel('f');title('db4?频域');
没有合适的资源?快使用搜索试试~ 我知道了~
MATLAB_两种算法_matlab信号处理_小波基_最优小波基_
共2个文件
m:1个
png:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 22 浏览量
2021-10-04
13:22:38
上传
评论 3
收藏 1.53MB ZIP 举报
温馨提示
适用于MATLAB小波滤波过程中选用最佳小波基。针对一维声音信号。图片无用。
资源推荐
资源详情
资源评论
收起资源包目录
MATLAB.zip (2个子文件)
zuiyouxiaoboji.m 1KB
-2.5.png 1.52MB
共 2 条
- 1
资源评论
- weixin_423249072022-03-25用户下载后在一定时间内未进行评价,系统默认好评。
- 吾垚2022-09-20感谢资源主分享的资源解决了我当下的问题,非常有用的资源。
耿云鹏
- 粉丝: 61
- 资源: 4760
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功