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

📄 fwt2_sbs.sci

📁 小波分解源代码
💻 SCI
字号:
function wc = FWT2_SBS(x,L,qmf,dqmf)
// FWT2_SBS -- 2-dimensional wavelet transform
//              (symmetric extension, bi-orthogonal)
//  Usage
//    wc = FWT2_SBS(x,L,qmf,dqmf)
//  Inputs
//    x     2-d image (n by n array, n arbitrary)
//    L     coarsest level
//    qmf   low-pass quadrature mirror filter
//    dqmf  high-pass dual quadrature mirror filter
//  Output
//    wc    2-d wavelet transform
//  Description
//    A two-dimensional Wavelet Transform is computed for the
//    matrix x. To reconstruct, use IWT2_SBS.
//
//  Copyright Aldo I Maalouf

[m,J] = dyadlength(x(:,1));
[n,K] = dyadlength(x(1,:));
wc = x;
mc = m;
nc = n;

J = min([J,K]);

for jscal=J-1:-1:L

    if modulo(mc,2)==0 then
        top = ((mc/2)):mc;
        bot = 1:(mc/2);
    else
        top = (((mc+1)/2)):mc;
        bot = 1:((mc+1)/2);
    end
    if modulo(nc,2)==0 then
        right = ((nc/2)):nc;
        left = 1:(nc/2);
    else
        right = (((nc+1)/2)):nc;
        left = 1:((nc+1)/2);
    end

    for ix=1:mc
        row = wc(ix,1:nc);
        [beta,alpha] = DownDyad_SBS(row,qmf,dqmf);
        wc(ix,left) = beta;
        wc(ix,right+1) = alpha;
    end
    for iy=1:nc
        column = wc(1:mc,iy)';
        [beta,alpha] = DownDyad_SBS(column,qmf,dqmf);
        wc(bot,iy) = beta';
        wc(top,iy) = alpha';
    end
    mc = bot(length(bot));
    nc = left(length(left));
end
endfunction

⌨️ 快捷键说明

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