1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tài liệu 35 Wavelets and Filter Banks docx

16 371 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Wavelets and filter banks
Tác giả Cormac Herley
Chuyên ngành Signal Processing
Thể loại Chương sách
Năm xuất bản 2000
Định dạng
Số trang 16
Dung lượng 163,28 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Wavelets and Filter BanksCormac Herley Hewlett Packard Laboratories 35.1 Filter Banks and Wavelets Deriving Continuous-Time Bases From Discrete-Time Ones •Two-Channel Filter Banks and Wa

Trang 1

Cormac Herley “Wavelets and Filter Banks.”

2000 CRC Press LLC <http://www.engnetbase.com>.

Trang 2

Wavelets and Filter Banks

Cormac Herley

Hewlett Packard Laboratories

35.1 Filter Banks and Wavelets Deriving Continuous-Time Bases From Discrete-Time Ones

•Two-Channel Filter Banks and Wavelets•Structure of

Two-Channel Filter Banks•Putting the Pieces Together References

35.1 Filter Banks and Wavelets

The methods of designing bases that we will employ draw on ideas first used in the construction of multirate filter banks The idea of such systems is to take an input system and split it into subsequences using banks of filters This simplest case involves splitting into just two parts using a structure such

as that shown in Fig.35.1 This technique has a long history of use in the area of subband coding: first of speech [1,2] and more recently of images [3,4] In fact, the most successful image coding schemes are based on filter bank expansions [5,6,7] Recent texts on the subject are [8,9,10] We will consider only the two-channel case in this section If ˆX(z) = X(z), then the filter bank has the

perfect reconstruction property

FIGURE 35.1: Maximally decimated two-channel multirate filter bank

It is easily shown that the output ˆX(z) of the overall analysis/synthesis system is given by:

ˆX(z) = 1

2[G0(z) G1(z)]



H0(z)ψH0(−z) H1(z)ψH1(−z)

 

X(z) X(−z)



(35.1)

2[H0(z)G0(z) + H1(z)G1(z)] · X(z)

Trang 3

2[H0(−z)G0(z) + H1(−z)G1(z)] · X(−z).

Call the above 2× 2 matrix Hm (z) This gives that the unique choice for the synthesis filters is



G0(z) G1(z)



=



H0(z) H0(−z) H1(z) H1(−z)

−1

·



2 0



1 m (z)



H1(−z)

−H0(−z)



where1 m (z) = det H m (z).

If we observe that1 m (z) = −1 m (−z)anddefineP (z) = 2·H0(z)H1(−z)/1 m (z) = H0(z)G0(z),

it follows from (35.2) thatG1(z)H1(z) = 2 · H1(z)H0(−z)/1 m (−z) = P (−z) We can then write

that the necessary and sufficient condition for perfect reconstruction (35.1) is:

Since this condition plays an important role in what follows, we will refer to any function having this

property as valid The implication of this property is that all but one of the even-indexed coefficients

ofP (z) are zero That is

P (z) + P (−z) = X

n

(p(n)z −n + p(n)(−z) −n )

n

2· p(2n)z −(2n+1)

For this to satisfy (35.3) requiresp(2n) = δ n; thus, one of the polyphase components ofP (z) must

be the unit sample By polyphase components we mean the set of even-indexed samples, and the set

of the odd-indexed samples Such a function is illustrated in Fig.35.2(a)

FIGURE 35.2: Zeros of the correlation functions (a) AutocorrelationH0(−z)H0(z−1) (b)

Cross-correlationH0(−z)H1(z−1).

Constructing such a function is not difficult In general, however, we will wish to impose additional constraints on the filter banks So,P (z) will have to satisfy other constraints in addition to (35.3) Observe that as a consequence of (35.2)G0(z)H1(z), i.e., the cross-correlation of g1(n) and the

time-reversed filterh0(−n), and G1(z)H0(z), the cross-correlation of g1(n) and h0(−n), have only

odd-indexed coefficients, just as for the function in Fig.35.2(b), that is:

< g0(n), h1(2k − n) > = 0, (35.4)

Trang 4

< g1(n), h0(2k − n) > = 0, (35.5)

(note the time reversal in the inner product) Define now the matrix H0as

H0=

h0(L − 1) h0(L − 2) · · · · · · h0(0) 0 0

0 0 h0(L − 1) · · · h0(2) h0(1) h0(0)

. (35.6)

which has as itskth row the elements of the sequence h0(2k −n) Pre-multiplying by H0corresponds

to filtering byH0(z) followed by subsampling by a factor of 2 Also define

GT

0 =

g0(0) g0(1) · · · · · · g0(L − 1) 0 0

0 0 g0(0) · · · g0(L − 3) g0(L − 2) g0(L − 1)

, (35.7)

so G0has as itskth column the elements of the sequence g0(n − 2k) Define H1by replacing the coefficients ofh0(n) with those of h1(n) in (35.6) and G1by replacing the coefficients ofg0(n) with

those ofg1(n) in (35.7)

We find that (35.4) gives that all rows of H1are orthogonal to all columns of G0 Similarly we find, from (35.5), that all of the columns of G1are orthogonal to the rows of H0 So, in matrix notation:

NowP (z) = G0(z)H0(z) = z−1H0(z)H1(−z) and P (−z) = G1(z)H1(z) are both valid and

have the form given in Fig.35.2(a) Hence, the impulse responses ofg i (n) and h i (n) are orthogonal

with respect to even shifts

< g i (n), h i (2l − n) > = δ l (35.9)

In operator notation:

Since we have a perfect reconstruction system we get:

Of course (35.11) indicates that no nonzero vector can lie in the column nullspaces of both G0and

G1 Note that (35.10) implies that G0H0and G1H1are each projections (since GiHiGiHi = GiHi) They project onto subspaces which are not, in general, orthogonal (since the operators are not self-adjoint) Because of (35.4), (35.5), and (35.9) the analysis/synthesis system is termed biorthogonal

If we interleave the rows of H0and H1, much as was done in the orthogonal case, and form again a block Toeplitz matrix

A=

h0(L − 1) h0(L − 2) · · · · · · h0(0) 0 0

h1(L − 1) h1(L − 2) · · · · · · h1(0) 0 0

0 0 h0(L − 1) · · · h0(2) h0(1) h0(0)

0 0 h1(L − 1) · · · h1(2) h1(1) h1(0)

, (35.12)

Trang 5

we find that the rows of A form a basis forl2(Z) If we form B by interleaving the columns of G0and

G1, we find

B· A = I.

In the special case where we have a unitary solution, one finds: G0 = HT

0 and G1 = HT

1, and (35.8) gives that we have projections onto subspaces which are mutually orthogonal The system

then simplifies to the orthogonal case, where B = A−1= AT

A point that we wish to emphasize is that in the conditions for perfect reconstruction, (35.2) and (35.3), the filtersH0(z) and G0(z) are related via their product P (z) It is the choice of the function

P (z) and the factorization taken that determines the properties of the filter bank We conclude the

introduction with a proposition that sums up the foregoing

PROPOSITION 35.1 To design a two-channel perfect reconstruction filter bank, it is necessary and sufficient to find aP (z) satisfying (35.3), factor itP (z) = G0(z)H0(z) and assign the filters as given

in (35.2)

35.1.1 Deriving Continuous-Time Bases From Discrete-Time Ones

We have seen that the construction of bases from discrete-time signals can be accomplished easily

by using a perfect reconstruction filter bank as the basic building block This gives us bases that have a certain structure, and for which the analysis and synthesis can be efficiently performed The design of bases for continuous-time signals appears more difficult However, it works out that we can mimic many of the ideas used in the discrete-time case, when we go about the construction of continuous-time bases

In fact, there is a very close correspondence between the discrete-time bases generated by two-channel filter banks, and dyadic wavelet bases These are continuous-time bases formed by the stretches and translates of a single function, where the stretches are integer powers of two:

{ψ jk (x) = 2 −j/2 ψ(2 −j x − k), j, k, ∈ Z} (35.13) This relation has been thoroughly explored in [11,12]

To be precise, a basis of the form in (35.13) necessarily implies the existence of an underlying two-channel filter bank Conversely, a two-channel filter bank can be used to generate a basis as in (35.13) provided that the lowpass filterH0(z) is regular It is not our intention to go into the details

of this connection, but the generation of wavelets from filter banks goes briefly as follows:

Considering the logarithmic tree of discrete-time filters in Fig.35.3, one notices that the lower branch is a cascade of filtersH0(z) followed by subsampling by 2 It is easily shown [12], that the cascade ofi blocks of filtering operations, followed by subsampling by 2, is equivalent to a filter

H0(i) (z) with z-transform:

H0(i) (z) =Yi−1

l=0

H0(z2l

followed by subsampling by 2i We defineH0(0) (z) = 1 to initialize the recursion Now, in addition

to the discrete-time filter, consider the functionf (i) (x) which is piecewise constant on intervals of

length 1/2 i, and equal to:

f (i) (x) = 2 i/2 · h (i)0 (n), n/2 i ≤ x < (n + 1)/2 i (35.15) Note that the normalization by 2i/2ensures that ifP

(h (i)0 (n))2= 1 thenR(f (i) (x))2dx = 1 as well.

Also, it can be checked thatkh (i)0 k2= 1 when kh (i−1)0 k2 = 1 The relation between the sequence

Trang 6

H0(i) (z) and the function f (i) (x) is clarified in Fig.35.3, where the first three iterations of each is shown for the simple case of a filter of length 4

FIGURE 35.3: Iterations of the discrete-time filter (35.14) and the continuous-time function (35.15) for the case of a length-4 filterH0(z) The length of the filter H0(i) (z) increases without bound, while

the functionf (i) (x) actually has bounded support.

We are going to use the sequence of functionsf (i) (x) to converge to the scaling function φ(x) of a

wavelet basis Hence, a fundamental question is to find out whether and to what the functionf (i) (x)

converges asi → ∞ First assume that the filter H0(z) has a zero at the half sampling frequency,

orH0(e jπ ) = 0 This together with the fact that the filter impulse response is orthogonal to its

even translates is equivalent toP

h0(n) = H0(1) = √2 DefineM0(z) = 1/√2· H0(z), that is

M0(1) = 1 Now factor M0(z) into its roots at π (there is at least one by assumption) and a remainder

polynomialK(z), in the following way:

M0(z) = [(1 + z−1)/2] N K(z).

Note thatK(1) = 1 from the definitions Now call B the supremum of |K(z)| on the unit circle:

B = sup

Then the following result from [11] holds:

Trang 7

PROPOSITION 35.2 [Daubechies 1988] IfB < 2 N−1, and

∞ X

n=−∞

|k(n)|2|n|  < ∞, for some  > 0, (35.16)

then the piecewise constant functionf (i) (x) defined in (35.15) converges pointwise to a continuous functionf (∞) (x).

This is a sufficient condition to ensure pointwise convergence to a continuous function, and can

be used as a simple test We shall refer to any filter for which the infinite product converges as regular.

If we indeed have convergence, then we define

f (∞) (x) = φ(x)

as the analysis scaling function, and

ψ(x) = 2 −1/2Xh1(n)φ(2x − n), (35.17)

as the analysis wavelet It can be shown that if the filtersh0(n) and h1(n) are from a perfect

recon-struction filter bank, then (35.13) indeed forms a continuous-time basis

In a similar way we examine the cascade ofi blocks of the synthesis filter g0(n)

G (i)0 (z) = i−1Y

l=0

G0(z2l

), i = 1, 2 · · · (35.18)

Again, defineG (0)0 (z) = 1 to initialize the recursion, and normalize G0(1) = 1 From this define a

function which is piecewise constant on intervals of length 1/2 i:

ˇ

f (i) (x) = 2 i/2 · g0(i) (−n), n/2 i ≤ x < (n + 1)/2 i (35.19)

We call the limit ˇf (∞) (x), if it exists, ˇφ(x) the synthesis scaling function, and we find

ˇφ(x) = 21/2·L−1X

n=0

g0(−n) · ˇφ(2x − n) (35.20)

ˇψ(x) = 21/2·L−1X

n=0

g1(−n) · ˇφ(2x − n). (35.21)

The biorthogonality properties of the analysis and synthesis continuous-time functions follow from the corresponding properties of the discrete-time ones That is, (35.9) leads to

< ˇφ(x), φ(x − k) > = δ k (35.22) and

< ˇψ(x), ψ(x − k) > = δ k (35.23) Similarly

< ˇφ(x), ψ(x − k) > = 0 (35.24)

< ˇψ(x), φ(x − k) > = 0, (35.25)

Trang 8

come from (35.4) and (35.5), respectively.

We have shown that the conditions for perfect reconstruction on the filter coefficients lead to functions that have the biorthogonality properties as shown above Orthogonality across scales is also easily verified:

< ˇψ(2 j x), ψ(2 i x − k) > = δ i−j δ k

Thus, the set{ψ(2 j x), ˇψ(2 i x − k), i, j, k ∈ Z} is biorthogonal That it is complete can be verified

as in the orthogonal case [13] Hence, any function fromL2(R) can be written:

f (x) =X

j

X

l

< f (x), 2 −j/2 ψ(2 j x − l) > 2 −j/2 ˇψ(2 j x − l).

Note thatψ(x) and ˇψ(x) play interchangeable roles.

35.1.2 Two-Channel Filter Banks and Wavelets

We have seen that the design of discrete-time bases is not difficult: using two-channel filter banks as the basic building block they can be easily derived We also know that, using (35.15) and (35.19), we can generate continuous-time bases quite easily as well If we were just interested in the construction

of bases, with no further requirements, we could stop here However, for applications such as com-pression, we will often be interested in other properties of the basis functions, for example, whether

or not they have any symmetry or finite support, and whether or not the basis is an orthonormal one We examine these three structural properties for the remainder of this section Chapter 36 deals with the design of the filters Chapter 37 deals with time-varying filter banks, where the filters used,

or the tree structure employing them, varies over time Chapter 38 deals with the case of Lapped Transforms, a very important class of multirate filter banks that have achieved considerable success From the filter bank point of view, the properties we are most interested in are the following:

• Orthogonality:

< h0(n), h0(n + 2k) > = δ k = < h1(n), h1(n + 2k) >, (35.26)

< h0(n), h1(n + 2k) > = 0. (35.27)

• Linear phase: H0(z), H1(z), G0(z), and G1(z) are all linear phase filters.

• Finite support: H0(z), H1(z), G0(z), and G1(z) are all FIR filters.

The reason for our interest is twofold First, these properties are possibly of value in perfect reconstruction filter banks used in subband coding schemes For example, orthogonality implies that the quantization noise in the two channels will be independent; linear phase is possibly of interest in very low bit-rate coding of images, and FIR filters have the advantage of having very simple low-complexity implementations Second, these properties are carried over to the wavelets that are generated So, if we design a filter bank with a certain set of properties, then the continuous-time basis that it generates will also have these properties

PROPOSITION 35.3 If the filters belong to an orthogonal filter bank, we shall have

< φ(x), φ(x + k) > = δ k =< ψ(x), ψ(x + k) >,

< φ(x), ψ(x + k) > = 0.

Trang 9

PROOF 35.1 From the definition (35.15)f (0) (x) is just the indicator function on the interval [0, 1);

so we immediately get orthogonality at the 0th level, that is: < f (0) (x − l), f (0) (x − k) > = δ kl

Now we assume orthogonality at theith level:

< f (i) (x − l), f (i) (x − k) > = δ kl , (35.28) and prove that this implies orthogonality at the(i + 1)st level:

< f (i+1) (x − l), f (i+1) (x − k) > = 2X

n

X

m

h0(n)h0(m)

< f (i) (2x − 2l − n), f (i) (2x − 2k − m) > δ n+2l−2k−m

2

n

h0(n)h0(n + 2l − 2k)

= δ kl

Hence, by induction (35.28) holds for alli So in the limit i → ∞:

< φ(x − l), φ(x − k) > = δ kl (35.29) The orthogonal case gives considerable simplification, both in the discrete-time and continuous-time cases

PROPOSITION 35.4 If the filters belong to an FIR filter bank, thenφ(x), ψ(x), ˇφ(x), and ˇψ(x)

will have support on some finite interval

PROOF 35.2 The filtersH0(i) (z) and G (i)0 (z) defined in (35.14) have respective lengths(2 i −1)(L a

1) + 1 and (2 i − 1)(L s − 1) + 1 where L aandL sare the lengths ofH0(z) and G0(z) Hence, f (i) (x)

in (35.15) is supported on the interval[0, L a − 1) and ˇ f (i) (x) on the interval [0, L s − 1) This

holds∀ i; hence, in the limit i → ∞ this gives the support of the scaling functions φ(x) and ˇφ(x).

Thatψ(x) and ˇψ(x) have bounded support follow from (35.20) and (35.21)

PROPOSITION 35.5 If the filters belong to a linear phase filter bank, thenφ(x), ψ(x), ˇφ(x), and

ˇψ(x) will be symmetric or antisymmetric.

PROOF 35.3 The filterH0(i) (z) will have linear phase if H0(z) does If H0(i) (z) has length (2 i

1)(L a − 1) + 1, the point of symmetry is (2 i − 1)(L a − 1)/2 which need not be an integer The point

of symmetry forf (i) (x) will then be [(2 i − 1)(L a − 1) + 1]/2 i+1or[(2 i − 1)(L a − 1) + 2]/2 i+1.

In either case, by taking the limiti → ∞ we find that φ(x) is symmetric about the point (L a − 1)/2

and similarly for the other cases

Thus having established the relation between wavelets and filter banks we can examine the structure

of filter banks in detail, and afterward use them to generate wavelets as described above It should be emphasized that we are speaking of the two-channel, one-dimensional case Multidimensional filter banks are a large subject in their own right [8,10]

Trang 10

35.1.3 Structure of Two-Channel Filter Banks

We saw already that it is the choice of the functionP (z) and the factorization taken that determines

the properties of the filter bank In terms ofP (z), we give necessary and sufficient conditions for the

three properties mentioned above:

• Orthogonality: P (z) is an autocorrelation, and H0(z) and G0(z) are its spectral factors.

• Linear phase: P (z) is linear phase, and H0(z) and G0(z) are its linear phase factors.

• Finite support: P (z) is FIR, and H0(z) and G0(z) are its FIR factors.

Obviously the factorization is not unique in any of the cases above The FIR case has been examined

in detail in [11,12,14,15,16] and the linear phase case in [12,15,17] In the rest of this paper we will present new results on the orthogonal case, but we shall also review the solutions that explicitly satisfy simultaneous constraints

PROPOSITION 35.6 To have an orthogonal filter bank it is necessary and sufficient thatP (z) be

an autocorrelation, and thatH0(z) and G0(z) be its spectral factors.

PROPOSITION 35.7 To have a linear phase filter bank it is necessary and sufficient thatP (z) be a

linear phase, and thatH0(z) and G0(z) be its linear phase factors.

PROPOSITION 35.8 To have an FIR filter bank it is necessary and sufficient thatP (z) be FIR, and

thatH0(z) and G0(z) be its FIR factors.

Proofs can be found in [18] Having seen that the design problem can be considered in terms of

P (z) and its factorizations, we consider the three conditions of interest from this point of view.

Orthogonality

In the case where the filter bank is to be orthogonal, we can obtain a complete constructive characterization of the solutions, as given by the following theorem, taken from [18]

1 Choosing an arbitrary polynomial R(z), form:

P (z) = 2· R(z)R(z−1)

R(z)R(z−1) + R(−z)R(−z−1) ,

2 factor as P (z) = H(z)H(z−1),

3 form the filter H0(z) = A0(z)H (z), where A0(z) is an arbitrary allpass,

4 choose H1(z) = z2k−1 H0(−z−1)A1(z2), where A1(z) is again an arbitrary allpass,

5 choose G0(z) = H0(z−1), and G1(z) = −H1(z−1).

For a proof, see [18,19]

Ngày đăng: 25/12/2013, 06:16

TỪ KHÓA LIÊN QUAN