Matlab小波包分解后如何求各频带信号的能量值?
来源:互联网 发布:手机淘宝的扫一扫在哪 编辑:程序博客网 时间:2024/05/21 22:54
clear;
clc;
n=3;
wpname='db3';
% [b,a]=butter(8,[5/100 99/100]);
% load a1_1-1;
load k301_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt1=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt1,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
% disp('每个节点的能量E(i)');
% E
% disp('小波包分解总能量E_total');
E_total=sum(E); %求总能量
for i=1:2^n
pfir(i)= E(i)/E_total;%求每个节点的概率
end
pfir
% load a1_1-2;
load k302_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt2=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt2,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
E_total=sum(E); %求总能量
for i=1:2^n
psec(i)= E(i)/E_total;%求每个节点的概率
end
psec
% load a1_1-4;
load k303_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt3=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt3,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
E_total=sum(E); %求总能量
for i=1:2^n
pthi(i)= E(i)/E_total;%求每个节点的概率
end
pthi
clc;
n=3;
wpname='db3';
% [b,a]=butter(8,[5/100 99/100]);
% load a1_1-1;
load k301_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt1=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt1,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
% disp('每个节点的能量E(i)');
% E
% disp('小波包分解总能量E_total');
E_total=sum(E); %求总能量
for i=1:2^n
pfir(i)= E(i)/E_total;%求每个节点的概率
end
pfir
% load a1_1-2;
load k302_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt2=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt2,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
E_total=sum(E); %求总能量
for i=1:2^n
psec(i)= E(i)/E_total;%求每个节点的概率
end
psec
% load a1_1-4;
load k303_1-4;
% Data=filter(b,a,Data);
Data=Data-mean(Data);
Data=detrend(Data);
wpt3=wpdec(Data,n,wpname); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt1,[n,i-1])是求第n层第i个节点的系数
E(i)=norm(wpcoef(wpt3,[n,i-1]),2);%求第i个节点的范数平方,其实也就是平方和
end
E_total=sum(E); %求总能量
for i=1:2^n
pthi(i)= E(i)/E_total;%求每个节点的概率
end
pthi
格式:
y = detrend(x) % 消除时间序列中的线性趋势项
y = detrend(x,'constant') % 消除时间序列中的均值
y = detrend(x,'linear',bp) % 分段消除时间序列中的线性趋势项,bp为分段点向量
如
y = detrend(x) % 消除时间序列中的线性趋势项
y = detrend(x,'constant') % 消除时间序列中的均值
y = detrend(x,'linear',bp) % 分段消除时间序列中的线性趋势项,bp为分段点向量
如
detrend的一个实例
sig = [0 1 -2 1 0 1 -2 1 0]; % 无线性趋势的信号
trend = [0 1 2 3 4 3 2 1 0]; % 有两段线性的趋势
x = sig+trend; % 将上面趋势叠加到信号上
y = detrend(x,'linear',5) % 根据指定的分段点去除两段线性趋势
y =
-0.0000 1.0000 -2.0000 1.0000 0 1.0000 -2.0000 1.0000 0.0000
trend = [0 1 2 3 4 3 2 1 0]; % 有两段线性的趋势
x = sig+trend; % 将上面趋势叠加到信号上
y = detrend(x,'linear',5) % 根据指定的分段点去除两段线性趋势
y =
-0.0000 1.0000 -2.0000 1.0000 0 1.0000 -2.0000 1.0000 0.0000
阅读全文
0 0
- Matlab小波包分解后如何求各频带信号的能量值?
- Matlab小波包分解后如何求各频带信号的能量值?
- Matlab小波包分解后如何求各频带信号的能量值?
- 图像小波包分解后如何改变分解系数再重构呢?
- 小波包分解提取特征--生理信号
- 小波包分解
- 小波包分解树
- 小波包变换的入门 - - -MATLAB
- 小波包分解一例
- matlab——小波包变换
- 小波包变换入门——MATLAB
- 一种小波包的实例
- 代码:小波包分解与重构、小波包能量特征提取
- 代码:小波包分解与重构、小波包能量特征提取
- 多尺度小波分解与重构,matlab,对系数进行处理后,构造C,重构信号
- 自己动手编写小波信号分解与重构的Matlab程序
- 自己动手编写小波信号分解与重构的Matlab程序
- 数据信号的频带传输新
- 由opencv with qt的imshow源码的一部分联想到在arm上实现highgui
- Service得到配置更改通知
- 在Servlet中获取spring管理的bean
- POJ 1677 Girls' Day 笔记
- FZUOJ 2250 不可能弹幕结界【思维+Bfs】
- Matlab小波包分解后如何求各频带信号的能量值?
- vagrant+centos7 安装报错
- “玲珑杯”线上赛 Round #15 河南专场:E -- 咸鱼旅行
- 《我们仨》读感
- 如何设计短网址系统(TinyURL)
- STM32学习笔记(6): 启动代码(Startup Code)
- 问题 B: 情报传递
- python模拟sed操作haproxy配置文件
- Kotlin 资源大全 收集Kotlin有价值的资源