资源简介
小波包降噪、提取能量特征值,用于振动信号处理、故障诊断等。有经典的例子
代码片段和文件信息
%%小波包程序:能量-特征向量算法一
tic
clear
clc
a=15; b=0.5; f=200; m=pi/3; %设定初始值
N=400; flag=1;
%下面代码是分段绘制信号,时间间隔为0.001,数据点数是1001个
t1=linspace(0.3010.5200);
xt1=9*sin(100*pi*t1)+5*sin(180*pi*t1)+sin(240*pi*t1);
t2=linspace(0.5010.7200);
xt2=9*sin(100*pi*t2)+5*sin(180*pi*t2)+sin(240*pi*t2)+sin(2*pi*f*t2+m.*exp(-a*(t2-b)));
t=[t1t2];
xt=[xt1xt2];
figure(1);
plot(txt);
title(‘原始信号图‘); xlabel(‘时间(t)‘); ylabel(‘幅值‘);
T=wpdec(xt3‘db2‘); %进行小波包分解
plot(T); figure(2);
%计算小波包分解系数
x1=wpcoef(T[10]);
x2=wpcoef(T[11]);
z1=wpcoef(T[20]);
z2=wpcoef(T[21]);
z3=wpcoef(T[22]);
z4=wpcoef(T[23]);
y1=wpcoef(T[30]);
y2=wpcoef(T[31]);
y3=wpcoef(T[32]);
y4=wpcoef(T[33]);
y5=wpcoef(T[34]);
y6=wpcoef(T[35]);
y7=wpcoef(T[36]);
y8=wpcoef(T[37]);
figure(3);
subplot(321); plot(x1);
subplot(322); plot(x2);
subplot(323); plot(z1);
subplot(324); plot(z2);
subplot(325); plot(z3);
subplot(326); plot(z4);
figure(4);
subplot(421); plot(y1);
subplot(422); plot(y2);
subplot(423); plot(y3);
subplot(424); plot(y4);
subplot(425); plot(y5);
subplot(426); plot(y6);
subplot(427); plot(y7);
subplot(428); plot(y8);
%重构小波包系数
xx1=wprcoef(T[10]);
xx2=wprcoef(T[11]);
zz1=wprcoef(T[20]);
zz2=wprcoef(T[21]);
zz3=wprcoef(T[22]);
zz4=wprcoef(T[23]);
yy1=wprcoef(T[30]);
yy2=wprcoef(T[31]);
yy3=wprcoef(T[32]);
yy4=wprcoef(T[33]);
yy5=wprcoef(T[34]);
yy6=wprcoef(T[35]);
yy7=wprcoef(T[36]);
yy8=wprcoef(T[37]);
figure(5);
subplot(321); plot(txx1); title(‘第一层分解低频段‘);
subplot(322); plot(txx2); title(‘第一层分解高频段‘);
subplot(323); plot(tzz1); title(‘第二层分解低频段1‘);
subplot(324); plot(tzz2); title(‘第二层分解低频段2‘);
subplot(325); plot(tzz3); title(‘第二层分解高频段1‘);
subplot(326); plot(tzz4); title(‘第二层分解高频段2‘);
figure(6);
subplot(421); plot(tyy1); title(‘第三层分解低频段1‘);
subplot(422); plot(tyy2); title(‘第三层分解低频段2‘);
subplot(423); plot(tyy3); title(‘第三层分解低频段3‘);
subplot(424); plot(tyy4); title(‘第三层分解低频段4‘);
subplot(425); plot(tyy5); title(‘第三层分解高频段1‘);
subplot(426); plot(tyy6); title(‘第三层分解高频段2‘);
subplot(427); plot(tyy7); title(‘第三层分解高频段3‘);
subplot(428); plot(tyy8); title(‘第三层分解高频段4‘);
%计算各个频段的能量
a=pow2(1); %计算第一次分解后的能量
aa=xx1.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a)=bb(1i+a)+bb(1i);
end
E1= bb(1i+a);
aa=xx2.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a)=bb(1i+a)+bb(1i);
end
E2= bb(1i+a);
a=pow2(2); %计算第二次分解后的能量
aa=zz1.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a)=bb(1i+a)+bb(1i);
end
E3= bb(1i+a);
aa=zz2.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a)=bb(1i+a)+bb(1i);
end
E4= bb(1i+a);
aa=zz3.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a)=bb(1i+a)+bb(1i);
end
E5= bb(1i+a);
aa=zz4.^2; bb=(aa.*a)/(N-a);
for i=1:a:N-a-1
bb(1i+a
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4422 2012-08-12 09:49 小波包程序\xiaobobao.m
文件 1249 2012-08-12 09:49 小波包程序\xiaobobao2.m
文件 4719 2012-08-12 09:50 小波包程序\xiaobobao3.m
文件 547 2012-08-12 10:00 小波包程序\xiaobobao4.m
目录 0 2014-02-24 11:47 小波包程序\
- 上一篇:MATLAB实现协同过滤算法
- 下一篇:matlab实现加权最小二乘拟合
相关资源
- Matlab实现音频降噪
- 图像处理功能
- 滑动窗口的一维曲线平滑及降噪
- 车桥耦合振动的相关学术论文
- 奇异值分解降噪
- 振动信号频域特征提取算法
- 基于MATLAB谱减法,改进的谱减法语音
- 美版《机械振动》matlab源文件
- 轴承故障检测(bearing envelope analysis
- matlab EMD 降噪方法
- 含UI界面的三种降噪
- EWT 经验小波分解
- emd分解重构信号实现降噪
- mckd 最大相关峭度解卷积
- lbjz 用matlab做的基于小波降噪和自适应
- CEEMD-Noise
- CNN code 处理一维振动信号
- svd 对一个信号进行奇异值分解
- KSVD
- wavepage 小波包分析提取振动信号中的
- SVD 对lorenz信号的(svd)奇异值分解降
- matlab--program 1.纽马克算法
- matlab振动信号频谱分析
- 振动理论与应用 matlab 程序
-
PCA降噪在Raw域(PCA-ba
sed Spatially Ad - matlab与ansys振动仿真-用MATLAB和ANSYS进行
- emd程序对机械振动信号分解
- 二自由度模型振动模型频域分析matl
- 振动分析分岔图matlab程序
-
Simuli
nk机械振动仿真简例
评论
共有 条评论