⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multisurethresh.m

📁 老外写的小波变换的工具箱
💻 M
字号:
function [thresh,magic,scale] = MultiSUREThresh(wcoef,L)
% MultiSUREThresh -- 
%  Usage
%     [thresh,magic,scale] = MultiSUREThresh(wcoef,L)
% 
%  Inputs
%     wcoef     wavelet coefficients from an orthogonal wavelet transform
%     L		Low-Frequency cutoff for calculating scales, thresholds etc
%
%  Outputs 
%     scale	Med Abs Dev of wav coeffs in each level (from L thru J-1)
%     magic     scale(i) * sqrt{ 2 log ni}  (ni = no. coeffs in level)
%     thresh 	scale(i) * SURE(i)  (NOTE, NOT hybrid value!!)
% 
%  Description
%     For each level from L thru J-1, first calculate the scale
%     of the wavelet coefficients on that level (using median absolute
%     deviation from median).
%     Then compute two thresholds: the "magic" threshold based on      
%     sqrt( 2* no. coeffs in level), and the "SURE" threshold based
%     on minimising an unbiased estimate of risk.
%     Note that output vectors have length J-1, with zeros in slots below L.

[n,J] = dyadlength(wcoef) ;

thresh  = zeros( size(1:(J-1)) );
magic  = zeros( size(1:(J-1)) );
scale  = zeros( size(1:(J-1)) );

for i = L:(J-1)
	ni = length(wcoef(dyad(i)));
%	scale(i) = std( wcoef(dyad(i)) );
	scale(i) = MAD( wcoef(dyad(i)) );
        magic(i) = scale(i) * sqrt( 2* log( ni) );
        [what, thr] = SUREThresh( wcoef(dyad(i))' ./ scale(i) );
        thresh(i) = scale(i) * thr;
end

    
    
  %%  Part of Wavelab Version 850%  Built Tue Jan  3 13:20:41 EST 2006%  This is Copyrighted Material%  For Copying permissions see COPYING.m%  Comments? e-mail wavelab@stat.stanford.edu 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -