1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > matlab db5是什么小波 3 代码 - matlab小波分析步骤是什么

matlab db5是什么小波 3 代码 - matlab小波分析步骤是什么

时间:2019-03-12 12:38:58

相关推荐

matlab db5是什么小波 3 代码 - matlab小波分析步骤是什么

3、代码

%含噪声的三角波与正弦波的组合

%利用db5小波对信号进行7层分解

%生产正弦信号

clc;close all;clear all;

N=1000;

t=1:N;

sig1=sin(0.3*t);

%生成三角形波形

sig2(1:500)=((1:500)-1)/500;

sig2(501:N)=(1000-(501:1000))/500;

figure(1);

subplot(211);

plot(t,sig1,‘linewidth’,2);

xlabel(‘样本序号 N’);

ylabel(‘幅值A’);

subplot(212);

plot(t,sig2,‘linewidth’,2);

xlabel(‘样本序号 N’);

ylabel(‘幅值A’);

%叠加信号

x=sig1+sig2+randn(1,N);

figure(2);

plot(t,x,‘linewidth’,2);

xlabel(‘样本序号 N’);

ylabel(‘幅值A’);%一维小波分解

[c,l]=wavedec(x,7,‘db5’);%重构第1-7层逼近系数

a7=wrcoef(‘a’,c,l,‘db5’,7);

a6=wrcoef(‘a’,c,l,‘db5’,6);

a5=wrcoef(‘a’,c,l,‘db5’,5);

a4=wrcoef(‘a’,c,l,‘db5’,4);

a3=wrcoef(‘a’,c,l,‘db5’,3);

a2=wrcoef(‘a’,c,l,‘db5’,2);

a1=wrcoef(‘a’,c,l,‘db5’,1);%显示逼近系数

figure(3)

subplot(711)

plot(a7,‘linewidth’,2);

ylabel(‘a7’);

subplot(712)

plot(a6,‘linewidth’,2);

ylabel(‘a6’);

subplot(713)

plot(a5,‘linewidth’,2);

ylabel(‘a5’);

subplot(714)

plot(a4,‘linewidth’,2);

ylabel(‘a4’);

subplot(715)

plot(a3,‘linewidth’,2);

ylabel(‘a3’);

subplot(716)

plot(a2,‘linewidth’,2);

ylabel(‘a2’);

subplot(717)

plot(a1,‘linewidth’,2);

ylabel(‘a1’);

xlabel(‘样本序号 N’);%重构第1-7层细节系数

d7=wrcoef(‘d’,c,l,‘db5’,7);

d6=wrcoef(‘d’,c,l,‘db5’,6);

d5=wrcoef(‘d’,c,l,‘db5’,5);

d4=wrcoef(‘d’,c,l,‘db5’,4);

d3=wrcoef(‘d’,c,l,‘db5’,3);

d2=wrcoef(‘d’,c,l,‘db5’,2);

d1=wrcoef(‘d’,c,l,‘db5’,1);

%显示细节系数

figure(4)

subplot(711)

plot(d7,‘linewidth’,2);

ylabel(‘d7’);

subplot(712)

plot(d6,‘linewidth’,2);

ylabel(‘d6’);

subplot(713)

plot(d5,‘linewidth’,2);

ylabel(‘d5’);

subplot(714)

plot(d4,‘linewidth’,2);

ylabel(‘d4’);

subplot(715)

plot(d3,‘linewidth’,2);

ylabel(‘d3’);

subplot(716)

plot(d2,‘linewidth’,2);

ylabel(‘d2’);

subplot(717)

plot(d1,‘linewidth’,2);

ylabel(‘d1’);

xlabel(‘样本序号 N’);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。