The wavelet transform, viewed from a filterbank perspective,
consists of iterated 2-channel analysis stages like the one in
Figure 1.

First consider a very long (i.e., practically infinite-length)
sequence
c
k
m
m∈Z
c
k
m
m
. For every pair of input samples
c
k
2n
c
k
2n−1
c
k
2
n
c
k
2
n
1
that enter the
k
th
k
th
filterbank stage, exactly one pair of output samples
c
k
+
1
n
d
k
+
1
n
c
k
+
1
n
d
k
+
1
n
are generated. In other words, the number of output
equals the number of input during a fixed time interval. This
property is convenient from a real-time processing
perspective.

For a short sequence
c
k
m
m∈0…M−1
c
k
m
m
0
…
M
1
, however, linear convolution requires that we make
an assumption about the tails of our finite-length sequence.
One assumption could be

c
k
m=0 ,
m∈0…M−1
m
m
0
…
M
1
c
k
m
0

(1)
In this case, the linear convolution implies that

MM nonzero inputs yield

M+N2−1
M
N
2
1
outputs from each branch, for a total of

2(M+N2−1)=M+N−2>M
2
M
N
2
1
M
N
2
M
outputs. Here we have assumed that both

Hz-1
H
z
and

Gz-1
G
z
have impulse response lengths of

N>2
N
2
, and that

MM and

NN are both even. The fact that
each filterbank stage produces more outputs than inputs is
very disadvantageous in many applications.

A more convenient assumption regarding the tails of
c
k
m
m∈0…M−1
c
k
m
m
0
…
M
1
is that the data outside of the time window
0…M−1
0
…
M
1
is a cyclic extension of data inside the time
window. In other words, given a
length-MM sequence, the points
*outside the sequence* are related to
points *inside the sequences* via

c
k
m=
c
k
m+M
c
k
m
c
k
m
M

(2)
Recall that a linear convolution with an

MM-cyclic input is equivalent to
a circular convolution with one

MM-sample period of the input
sequences. Furthermore, the output of this circular
convolution is itself

MM-cyclic,
implying our 2-downsampled branch outputs are cyclic with
period

M2
M
2
. Thus, given an

MM-length input sequence, the
total filterbank output consists of exactly

MM values.

It is instructive to write the circular-convolution analysis
fiterbank operation in matrix form. In Equation 3 we give an example for filter length
N=4
N
4
, sequence length
N=8
N
8
, and causal synthesis filters
Hz
H
z
and
Gz
G
z
.

c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3=(
h0h1h2h30000
00h0h1h2h300
0000h0h1h2h3
h2h30000h0h1
g0g1g2g30000
00g0g1g2g300
0000g0g1g2g3
g2g30000g0g1
)
c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7
c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3
h
0
h
1
h
2
h
3
0
0
0
0
0
0
h
0
h
1
h
2
h
3
0
0
0
0
0
0
h
0
h
1
h
2
h
3
h
2
h
3
0
0
0
0
h
0
h
1
g
0
g
1
g
2
g
3
0
0
0
0
0
0
g
0
g
1
g
2
g
3
0
0
0
0
0
0
g
0
g
1
g
2
g
3
g
2
g
3
0
0
0
0
g
0
g
1
c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7

(3)
where

c
k
+
1
d
k
+
1
=
c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3
c
k
+
1
d
k
+
1
c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3
H
M
G
M
=(
h0h1h2h30000
00h0h1h2h300
0000h0h1h2h3
h2h30000h0h1
g0g1g2g30000
00g0g1g2g300
0000g0g1g2g3
g2g30000g0g1
)
H
M
G
M
h
0
h
1
h
2
h
3
0
0
0
0
0
0
h
0
h
1
h
2
h
3
0
0
0
0
0
0
h
0
h
1
h
2
h
3
h
2
h
3
0
0
0
0
h
0
h
1
g
0
g
1
g
2
g
3
0
0
0
0
0
0
g
0
g
1
g
2
g
3
0
0
0
0
0
0
g
0
g
1
g
2
g
3
g
2
g
3
0
0
0
0
g
0
g
1
c
k
=
c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7
c
k
c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7
The matrices

H
M
H
M
and

G
M
G
M
have interesting properties. For example, the conditions

δm=∑nnhnhn−2m
δ
m
n
n
h
n
h
n
2
m
gn=-1nhN−1−n
g
n
-1
n
h
N
1
n
imply that

H
M
G
M
T
H
M
G
M
=
H
M
G
M
H
M
G
M
T=
I
M
H
M
G
M
H
M
G
M
H
M
G
M
H
M
G
M
I
M
where

I
M
I
M
denotes the

MMx

MM
identity matrix. Thus, it makes sense to define the

MMx

MM
DWT matrix as

T
M
=
H
M
G
M
T
M
H
M
G
M

(4)
whose transpose constitutes the

MMx

MM
inverse DWT matrix:

T
M
-1=
T
M
T
T
M
T
M

(5)
Since the synthesis filterbank (

Figure 2)

gives perfect reconstruction, and since the cascade of matrix
operations
T
M
T
T
M
T
M
T
M
also corresponds to perfect reconstruction, we
expect that the matrix operation
T
M
T
T
M
describes the action of the synthesis filterbank.
This is readily confirmed by writing the upsampled circular
convolutions in matrix form:

c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7=(
h000h2g000g2
h100h3g100g3
h2h000g2g000
h3h100g3g100
0h2h000g2g00
0h3h100g3g10
00h2h000g2g0
00h3h100g3g1
)
c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3
c
k
0
c
k
1
c
k
2
c
k
3
c
k
4
c
k
5
c
k
6
c
k
7
h
0
0
0
h
2
g
0
0
0
g
2
h
1
0
0
h
3
g
1
0
0
g
3
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
0
0
0
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
0
0
0
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
c
k
+
1
0
c
k
+
1
1
c
k
+
1
2
c
k
+
1
3
d
k
+
1
0
d
k
+
1
1
d
k
+
1
2
d
k
+
1
3

(6)
where

H
M
T
G
M
T=
T
M
T=(
h000h2g000g2
h100h3g100g3
h2h000g2g000
h3h100g3g100
0h2h000g2g00
0h3h100g3g10
00h2h000g2g0
00h3h100g3g1
)
H
M
G
M
T
M
h
0
0
0
h
2
g
0
0
0
g
2
h
1
0
0
h
3
g
1
0
0
g
3
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
0
0
0
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
0
0
0
h
2
h
0
0
0
g
2
g
0
0
0
h
3
h
1
0
0
g
3
g
1
So far we have concentrated on one stage in the wavelet
decomposition; a two-stage decomposition is illustrated in

Figure 3.

The two-stage analysis operation (assuming circular
convolution) can be expressed in matrix form as

c
k
+
2
d
k
+
2
d
k
+
1
=(
T
M
2
0
0
I
M
2
)
c
k
+
1
d
k
+
1
=(
T
M
2
0
0
I
M
2
)
T
M
c
k
c
k
+
2
d
k
+
2
d
k
+
1
T
M
2
0
0
I
M
2
c
k
+
1
d
k
+
1
T
M
2
0
0
I
M
2
T
M
c
k

(7)
Similarly, a three-stage analysis could be implemented via

c
k
+
3
d
k
+
3
d
k
+
2
d
k
+
1
=(
T
M
4
00
0
I
M
4
0
00
I
M
2
)(
T
M
2
0
0
I
M
2
)
T
M
c
k
c
k
+
3
d
k
+
3
d
k
+
2
d
k
+
1
T
M
4
0
0
0
I
M
4
0
0
0
I
M
2
T
M
2
0
0
I
M
2
T
M
c
k

(8)
It should now be evident how to extend this procedure to

3
3
stages. As noted earlier, the corresponding
synthesis operations are accomplished by transposing the
matrix products used in the analysis.