afb_sym.m

来自「Double Density Wavelet Soft」· M 代码 · 共 44 行

M
44
字号
function [lo, bp, hi] = afb_sym(x, af)

% ANALYSIS FILTER BANK
%    with symmetric extensions
%    for even-length h0, h1
% [lo, bp, hi] = afb_even(x, af)
% INPUT
%   x  : input signal (even-length)%   af : analysis filters% OUTPUT
%   lo : lowpass subband signal
%   bp : bandpass subband signal
%   hi : highpass subband signal
h0 = af{1};h1 = af{2};h2 = af{3};
N = length(x);              % length of input signal

% lowpass subband
L = length(h0);
A = L/2;
k = 0:A-1;
xe = [x(A-k) x x(N-k)];     % symmetric extension
lo = conv(xe, h0);          % filter
lo = lo(L+[1:2:N]);         % downsample

% bandpass subband
L = length(h1);
A = L/2;
k = 0:A-1;
xe = [x(A-k) x x(N-k)];     % symmetric extension
bp = conv(xe, h1);          % filter
bp = bp(L+[0:2:N]);         % downsample

% highpass subband
L = length(h2);
A = (L+1)/2;
k = 0:A-1;
xe = [x(A-k) x x(N-k)];     % symmetric extension
hi = conv(xe, h2);          % filter
hi = hi(L+[1:N]);           % downsample

⌨️ 快捷键说明

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