資源簡介
小波變換的可用matlab例程,親測可用
代碼片段和文件信息
%應用db5作為小波函數進行3層分解
%利用無偏似然估計閾值
%對100.dat?from?MIT-BIH-DB的單導聯數據進行去噪處理
clear
clc
load(‘fangzhen.txt‘);
fangzhen=fangzhen(:1);
A=0.04:0.04:10.68;
fangzhen=fangzhen‘;
n=size(fangzhen);
s=fangzhen(1:267);
%小波分解
[C?L]=wavedec(fangzhen4‘db5‘);%?從c中提取尺度3下的近似小波系數?第一部分C爲小波分解係數(是一個矩陣形式),而L則是表示相應小波係數的個數(矩陣內係數的個數)。
cA3=appcoef(CL‘db5‘4);%從信號c中提取尺度CA3近似部分,低頻系數
cD1=detcoef(CL1);
cD2=detcoef(CL2);
cD3=detcoef(CL3);
cD4=detcoef(CL4);
%從信號c中提取尺度123下的細節小波系數
%使用stein的無偏似然估計原理進行選擇各層的閾值
%cD1cD2cD3為各層小波系數,?
%‘rigrsure’為無偏似然估計閾值類型
thr1=thselect(cD1‘rigrsure‘);
thr2=thselect(cD2‘rigrsure‘);
thr3=thselect(cD3‘rigrsure‘);
thr4=thselect(cD4‘rigrsure‘);
%各層的閾值
TR=[thr1thr2thr3thr4];
%‘s‘為軟閾值;‘h‘硬閾值。
SORH=‘s‘;
%---------去噪----------------
%XC為去噪后信號
%[CXCLXC]為的小波分解結構
%PERF0和PERF2是恢復和壓縮的范數百分比。
%‘lvd‘為允許設置各層的閾值
%‘gbl‘為固定閾值。
%3為閾值的長度
[XCCXCLXCPERF0PERF2]=wdencmp(‘lvd‘fangzhen‘db5‘4TRSORH);
%使用
- 上一篇:水準網平差程序源代碼
- 下一篇:4PAM的調制與解調
評論
共有 條評論