日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

matlab 小波 cdd,[Matlab] 单导联心电数据的小波(包)消噪及压缩

發布時間:2023/12/1 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab 小波 cdd,[Matlab] 单导联心电数据的小波(包)消噪及压缩 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

% 用小波(包)對MitbihCmprTstExample_08730_01(軟硬閾值)進行消噪與壓縮

clear all;clc;close all;

disp('用小波(包)對MitbihCmprTstExample_08730_01(軟硬閾值)進行消噪和壓縮');

load MitbihCmprTstExample_08730_01.mat;

count=length(sig);

x=sig(:,1); y=sig(:,2); z=sig(:,3);

TS=x(2)-x(1); Freq=1/TS; % 心博周期和頻率

% 畫出原始信號

subplot(3,2,1),plot(y),title('原始信號'),grid;

%用db1小波對原始信號進行3層分解并提取系數

[c,l]=wavedec(y,3,'db1');

ca3=appcoef(c,l,'db1',3); % 1-D approximation coefficients一維近似系數

cd3=detcoef(c,l,3); %提取第3層細節系數;1-D detail coefficient

cd2=detcoef(c,l,2); %提取第2層細節系數

cd1=detcoef(c,l,1); %提取第1層細節系數

% 對信號進行強制去噪

cdd3=zeros(length(cd3),1);

cdd2=zeros(length(cd2),1);

cdd1=zeros(length(cd1),1);

c1=vertcat(ca3,cdd3,cdd2,cdd1); % 垂直方向的矩陣連接

y1=waverec(c1,l,'db1');

subplot(3,2,2),plot(y1),grid;

axis([0 5000 -1 1]);

title('強制去噪后的信號');

% 用默認閾值對信號進行去噪

[thr, sorh, keepapp] = ddencmp('den','wv',y);%獲得信號的默認閾值

[y2,CXC,LXC,PERF0,PERFL2] =wdencmp('gbl',c,l,'db1',3,thr,sorh,keepapp);%---perf0=80.4

% y2=wdencmp('gbl',c,l,'db1',3,thr,sorh,keepapp);

subplot(3,2,3),plot(y2),grid;

axis([0 5000 -1 1]);

title('用默認閾值去噪后的信號');

% 用給定的軟閾值進行去噪

cd1soft=wthresh(cd1,'s',1.465);

cd2soft=wthresh(cd2,'s',1.823);

cd3soft=wthresh(cd3,'s',2.768);

c2=vertcat(ca3,cd3soft,cd2soft,cd1soft);

y3=waverec(c2,l,'db1');

subplot(3,2,4),plot(y3),grid;

axis([0 5000 -1 1]);

title('用軟閾值去噪后的信號');

% 用默認閾值對信號進行(小波)壓縮

[thr_cmp,sorh_cmp,keepapp_cmp] = ddencmp('cmp','wv',y);

[y4,CXC_cmp,LXC_cmp,PERF0_cmp,PERFL2_cmp] = wdencmp('gbl',c,l,'db1',3,thr_cmp,sorh_cmp,keepapp_cmp);

%---PERF0_cmp=32.66

subplot(3,2,5),plot(y4),grid,axis([0 5000 -1 1]);

title('用默認閾值進行小波壓縮');

%%

%用默認閾值對信號進行小波(包)壓縮

% [thr_cmp2,sorh_cmp2,keepapp_cmp2,crit_cmp2] = ddencmp('cmp','wp',y);

% [y5,TREED_cmp2,PERF0_cmp2,PERFL2_cmp2] = ...

% wpdencmp(y,sorh_cmp2,3,'db1',crit_cmp2,thr_cmp2,keepapp_cmp2);

% %---PERF0_cmp2=37.62

% subplot(3,2,6),plot(y5),grid,axis([0 5000 -1 1]);

% title('用默認閾值進行小波包壓縮');

% 這與采用默認閾值進行小波壓縮效果非常接近

總結

以上是生活随笔為你收集整理的matlab 小波 cdd,[Matlab] 单导联心电数据的小波(包)消噪及压缩的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。