Escolar Documentos
Profissional Documentos
Cultura Documentos
com
Key Words
Complex wavelets, multi-scale, texture segmentation, texture synthesis, in-
terpolation, deconvolution.
Copyright P.F.C.
c de Rivaz, 2000.
All statements in this work are believed to be true and accurate at the time of
its production but neither the author nor the University of Cambridge offer
any warranties or representations, nor can they accept any legal liability for
errors or omissions.
P.F.C. de Rivaz
Signal Processing and Communications Laboratory
Department of Engineering
Trumpington Street
Cambridge, CB2 1PZ, U.K.
To Jenny
Summary
The research described in this dissertation was carried out between October 1997 and
September 2000. Except where indicated in the text, this dissertation is the result of my
own work and includes nothing which is the outcome of work done in collaboration. No
part of this dissertation has been submitted to any other university. The dissertation
does not exceed 65000 words and does not contain more than 150 figures.
Acknowledgements
I would like to thank my supervisor, Dr. Nick Kingsbury, for suggesting this topic and
for his guidance during the research. Thanks to my parents for encouraging my curiosity
and to my wife for keeping me calm. This work was made possible by an EPSRC grant.
Contents
1 Introduction 3
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Justification for the research . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Bayesian and Non-Bayesian Approaches . . . . . . . . . . . . . . . . . . . 5
1.4 Original contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.1 Most important contributions . . . . . . . . . . . . . . . . . . . . . 7
1.4.2 Medium importance contributions . . . . . . . . . . . . . . . . . . . 7
1.4.3 Least important contributions . . . . . . . . . . . . . . . . . . . . . 8
1.4.4 Contributions based largely on previous work . . . . . . . . . . . . 9
1.5 Organisation of the dissertation . . . . . . . . . . . . . . . . . . . . . . . . 9
2 Wavelet transforms 13
2.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 The Wavelet Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.1 Filter design and the product filter . . . . . . . . . . . . . . . . . . 17
2.3.2 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.3 Single tree complex wavelets . . . . . . . . . . . . . . . . . . . . . . 21
2.3.4 Directionality and Ridgelets . . . . . . . . . . . . . . . . . . . . . . 23
2.3.5 Shift invariance and the Harmonic wavelet . . . . . . . . . . . . . . 24
2.3.6 Non-redundant, directionally selective, complex wavelets . . . . . . 27
2.3.7 Prolate spheroidal sequences . . . . . . . . . . . . . . . . . . . . . . 28
2.4 Redundant complex wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4.1 Dual tree complex wavelet transform . . . . . . . . . . . . . . . . . 31
2.4.2 Q-shift Dual tree complex wavelets . . . . . . . . . . . . . . . . . . 33
7
2.4.3 Steerable transforms . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4.4 Multiwavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.5 Noise amplification theory . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.5.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.5.2 Theoretical results . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.5.3 Numerical results . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.5.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3 Previous applications 45
3.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2 Motion Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.4 Denoising . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6 Correlation modelling 93
6.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.2 Auto-correlation Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3 Auto-correlation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.5 Cross-correlation method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.6 Cross-correlation results and discussion . . . . . . . . . . . . . . . . . . . . 100
6.7 Large feature set segmentation . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
9 Deconvolution 165
9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
9.1.1 Bayesian framework . . . . . . . . . . . . . . . . . . . . . . . . . . 167
9.1.2 Summary of review . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
9.1.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
9.2 Image model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
9.3 Iterative Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9.3.1 Variance estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.3.2 Choice of search direction . . . . . . . . . . . . . . . . . . . . . . . 178
9.3.3 One dimensional search . . . . . . . . . . . . . . . . . . . . . . . . . 182
9.4 Convergence experiments and discussion . . . . . . . . . . . . . . . . . . . 182
9.5 Comparison experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
9.5.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
3.1 Top left: Original image. Top right: Noisy image. Bottom left: DWT
results. Bottom middle: DT-CWT results. Bottom right: NDWT results. . 49
3.2 PSNRs in dB of images denoised with the HMT acting on different wavelet
transforms. The results in normal type are published in the literature [24]
while the results in bold come from our replication of the same experiment. 50
13
5.1 Mosaics tested . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.2 Comparison of segmentation results for different transforms . . . . . . . . . 75
5.3 Percentage errors for (DWT,NDWT,DT-CWT) . . . . . . . . . . . . . . . 76
5.4 Performance measure for different methods . . . . . . . . . . . . . . . . . . 78
5.5 Sine wave input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.6 Nondecimated scale 4 wavelet coefficients . . . . . . . . . . . . . . . . . . . 80
5.7 Rectified nondecimated scale 4 wavelet coefficients . . . . . . . . . . . . . . 80
5.8 Rectified decimated scale 4 wavelet coefficients . . . . . . . . . . . . . . . . 82
5.9 Comparison of segmentation results for altered DT-CWT . . . . . . . . . . 83
5.10 Percentage errors for (HalfCWT,RealCWT,DT-CWT) . . . . . . . . . . . 84
5.11 Segmentation results for mosaic “f” using the DT-CWT . . . . . . . . . . . 85
5.12 Comparison of segmentation results for multiscale methods . . . . . . . . . 89
5.13 Percentage errors for single scale DT-CWT, multiscale DT-CWT, multiscale
DWT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.14 Segmentation results for mosaic “f” using the multiscale DT-CWT . . . . . 91
9.1 Prior cost function f (x) expressions for standard deconvolution techniques. 169
9.2 Flow diagram for the proposed wavelet deconvolution method. . . . . . . . 173
9.3 Block diagram of deconvolution estimation process. . . . . . . . . . . . . . 175
9.4 Performance of different search directions using the steepest descent (x) or
the conjugate gradient algorithm (o). . . . . . . . . . . . . . . . . . . . . . 184
9.5 Performance of different search directions using the steepest descent (x) or
the conjugate gradient algorithm (o) starting from a WaRD intialisation. . 186
9.6 Performance of different search directions over 100 iterations . . . . . . . . 187
9.7 Value of the energy function over 100 iterations . . . . . . . . . . . . . . . 187
9.8 Test images used in the experiments. . . . . . . . . . . . . . . . . . . . . . 189
9.9 Alternative PSF used in experiments. . . . . . . . . . . . . . . . . . . . . . 190
9.10 Comparison of ISNR for different algorithms and images /dB . . . . . . . . 191
9.11 Comparison of different published ISNR results for a 9 by 9 uniform blur
applied to the Cameraman image with 40dB BSNR. . . . . . . . . . . . . . 193
9.12 Deconvolution results for a 9 by 9 uniform blur applied to the Cameraman
image with 40dB BSNR using the PRECGDT-CWT method with WaRD
initialisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
9.13 Comparison of different published ISNR results for a Gaussian blur applied
to the Mandrill image with 30dB BSNR. . . . . . . . . . . . . . . . . . . . 195
9.14 Deconvolution results for a Gaussian blur applied to the Mandrill image with
30dB BSNR using the PRECGDT-CWT method with WaRD initialisation. 196
9.15 Comparison of the PRECGDT-CWT and Wiener filtering with published
results of Modified Hopfield Neural Network algorithms for a 3 × 3 uniform
blur applied to the Lenna image with 40dB BSNR. . . . . . . . . . . . . . 197
C.1 Effective assumption about SNR levels for Van Cittert restoration (K =
3,α = 1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
C.2 Effective assumption about SNR levels for Landweber restoration (K =
3,α = 1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
C.3 The mirror wavelet tree structure . . . . . . . . . . . . . . . . . . . . . . . 238
C.4 2D frequency responses of the mirror wavelet subbands shown as contours
at 75% peak energy amplitude. . . . . . . . . . . . . . . . . . . . . . . . . 240
Abbreviations and notation
a
Frobenius norm of a.
diag {a} diagonal matrix containing elements of a along the diagonal.
D a diagonal matrix normally containing weights for wavelet coefficients.
ei a vector containing zeros everywhere except for a 1 in position i.
E {X} the expected value of X.
G0 (z) Z-transform of a wavelet lowpass synthesis filter.
G1 (z) Z-transform of a wavelet highpass synthesis filter.
H0 (z) Z-transform of a wavelet lowpass analysis filter.
H1 (z) Z-transform of a wavelet highpass analysis filter.
{a} the imaginary part of a.
Ik k-dimensional identity matrix.
√
j −1.
M number of wavelet and scaling coefficients produced by a transform.
N number of input samples in a data set.
N (µ, C) multivariate Gaussian distribution with mean µ and covariance C.
P N × M matrix representing an inverse wavelet transform.
P (z) product filter.
p(θ) joint pdf for the elements of θ.
p(θ|φ) pdf for θ, conditioned on φ.
{a} the real part of a.
RN vector space of N × 1 real vectors.
sup S the supremum of set S.
tr(A) the trace of matrix A.
W M × N matrix representing a wavelet transform.
w M × 1 vector containing wavelet coefficients.
x N × 1 vector containing all the input samples.
Z a vector of random variables.
2
Chapter 1
Introduction
1.1 Overview
This dissertation investigates the use of complex wavelets in image processing. Traditional
formulations of complex wavelets are seldom used because they generally suffer from ei-
ther lack of speed or poor inversion properties. A recently developed dual-tree complex
wavelet transform (DT-CWT) has solved these two fundamental problems while retaining
the properties of shift invariance and additional directionality that complex wavelets pro-
vide. The aim of this dissertation is to discover when the DT-CWT is a useful tool by
developing complex wavelet methods to address a number of image processing problems
and performing experiments comparing methods based on the DT-CWT to alternative
methods. In particular, we aim to compare complex wavelets with standard decimated
and non-decimated real wavelet transforms.
Complex wavelets can be used for both Bayesian and non-Bayesian image processing
and we have applied complex wavelet methods to a wide range of problems including
image database retrieval [33], fast adaptive contour segmentation [34], and edge detection.
In this dissertation we restrict our attention to four main examples of particular interest,
two Bayesian and two non-Bayesian.
We first consider non-Bayesian applications and explain how to use the DT-CWT to
generate texture features. A qualitative feel for the power of the description is given by
texture synthesis experiments. The features are then experimentally tested by addressing
the problem of image segmentation to show the performance relative to many other feature
sets. We also consider images for which the simple model is inadequate. We show how
3
4 CHAPTER 1. INTRODUCTION
the simple model can be enhanced to handle longer-range correlations in images for better
texture synthesis. This is of interest as it provides information about the kind of images
that are well modelled by complex wavelets, and the kind that are too complicated.
Second we demonstrate how complex wavelets can be used for Bayesian image process-
ing. The wavelets are used to define a prior probability distribution for images and solution
methods are developed based on these models.
We use this Bayesian model to deal with irregularly sampled data points. In this case we
assume that the data is a realisation of a stationary Gaussian process. This is of interest
for a number of different reasons. First, it demonstrates how a wavelet method can be
much more efficient than standard methods. Second, we can develop theory that relates
the wavelet methods to a variety of alternative techniques such as Kriging, splines, and
radial basis functions. Third, it provides information about the kind of images that are
too simple for the complex wavelet model – in the sense that although complex wavelets
provide a good answer there is a more basic technique that is significantly faster.
The final extension is concerned with image deconvolution. In this case we develop an
enhanced non-stationary wavelet model. This is of interest because it demonstrates how
wavelet methods give better results than standard approaches such as Wiener filtering and
how a Bayesian approach to inference can further increase the accuracy.
The following sections explain the justification for the research, give an introduction
to the difference between Bayesian and non-Bayesian approaches, describe the original
contribution of the dissertation, and explain the organisation of the work.
transform solves both these problems. However, currently the new transform is not gen-
erally used: this may be due to doubts about the importance of the differences, concerns
about the complexity of methods based on complex wavelets, or simply because the new
transform is relatively unknown. By testing these claims on a range of practical tasks we
discover the significance of the differences and demonstrate the simplicity of designing and
implementing methods based on complex wavelets.
1. It is very fast.
3. It is not obvious what assumptions are implicitly made about the expected structure
of images or the degradation.
5. For images with certain structures, such as line drawings, it performs very badly (if
the size of the median filter is large compared to the width of the line then every
pixel will be set to the background colour).
The fact that the approach works without needing the problem to be accurately specified
is the source of both strength and weakness. The strength is that the method can work
reasonably even for the very complicated images that are seen in the real world. The
weakness is that it is also possible that the method will be totally inappropriate (for
instance, the degradation might be that the image is upside down). It is therefore crucial
that the effectiveness of the method is experimentally determined.
Currently Bayesian methods are not often used in real-world applications of image
processing because of their lack of speed and the problem of modelling images. For these
reasons, and to facilitate comparison with alternative transforms, we select a non-Bayesian
approach for segmentation (chapter 5). A Bayesian approach to segmentation is made
difficult by the need to specify a prior for the shapes of segments. This is a large research
topic by itself and there are encouraging results based on complex wavelets in the literature
[59].
However, for interpolation and image deconvolution we attempt a Bayesian approach.
This requires simplifying assumptions to be made about the problem but the benefits of
the Bayesian approach can be seen. The benefits consist not only of improved experimental
results but additionally the mathematical framework permits a theoretical comparison of
many Bayesian and non-Bayesian techniques.
1.4. ORIGINAL CONTRIBUTIONS 7
3. We describe how the DT-CWT can be used for image deconvolution(9) and provide
experimental comparisons with other techniques (9.5).
2. We derive an expression for the noise gain of a transform in terms of the unbalance
between analysis and reconstruction (2.5).
2. We perform experiments to compare the noise gain performance for certain complex
Daubechies wavelets and the DT-CWT (2.5.3).
4. We characterise minimum smoothness norm interpolations and prove that shift de-
pendence is always expected to decrease the quality (8.4.4).
6. We propose and compare a number of methods for calculating search directions within
the deconvolution method (9.3.2).
8. We use Fourier transforms to explain why Van Cittert and Landweber methods (with-
out a positivity constraint) will always perform worse than oracle Wiener filtering
(C.5).
1.5. ORGANISATION OF THE DISSERTATION 9
1. We perform some experiments using the Hidden Markov Tree for image denoising
(3.4).
2. We show how the DT-CWT can be used for texture synthesis (4.4.3) and display
some experimental results (4.8).
3. We develop pixel by pixel (5.5) and multiscale segmentation methods (5.9) based on
complex wavelets.
The author has chosen to use the pronoun “we” to represent himself in order to avoid both
the jarring effect of “I” and the awkwardness of the passive tense. Nevertheless, all the
original research presented here is the work of the sole author.
A technical report [35] has been published containing the results of a collaboration
with an expert in seismic surveying. During the collaboration we applied the results of
chapter 8 to the problem of using seismic measurements to determine subsurface structure.
The report itself contains contributions from the expert but all the material and results of
chapter 8 are the work of the sole author.
2: Wavelet 3: Previous
Background
transforms applications
4: DT-CWT
Non-Bayesian processing
texture features
6: Correlation
Example applications 5: Segmentation
modelling
7: Bayesian
Bayesian processing
modelling
8: Interpolation 9: Image
Example applications
and approximation deconvolution
11: Further
Final remarks 10: Conclusions
possibilities
and examines their properties by means of texture synthesis experiments. Chapter 5 com-
pares a DT-CWT segmentation method with the results from alternative schemes for a
variety of image mosaics. Chapter 6 extends the texture set to include longer-range corre-
lations.
The following three chapters propose and test Bayesian approaches to image processing.
Chapter 7 introduces a Bayesian framework for image modelling. Chapter 8 describes the
application of Bayesian methods to approximation and interpolation. Chapter 9 uses a
similar Bayesian method to address the problem of deconvolution.
The final two chapters summarise the findings and discuss future possibilities. Chap-
ter 10 discusses the impact of the research and summarises the main conclusions of the
dissertation. Chapter 11 suggests directions for future research.
At the end of the dissertation are the references and appendices.
12 CHAPTER 1. INTRODUCTION
Chapter 2
Wavelet transforms
2.1 Summary
The purpose of this chapter is to introduce and motivate the use of a complex wavelet
transform. The chapter first gives a short introduction to the terminology and construction
of real wavelet transforms and then a review of a number of complex wavelet transforms.
We explain why useful single-tree complex wavelets will suffer from poor balance (we
define balance as a measure of similarity between the filters in the forward and inverse
transforms) and why most non-redundant transforms will suffer from aliasing.
The main original contribution of the chapter is an equation relating the balance of a
transform to the amount of noise amplification during reconstruction which shows why a
balanced complex wavelet transform is preferred. This importance of this result is demon-
strated by an experiment comparing a single-tree complex wavelet with a dual-tree complex
wavelet.
The description of wavelets and complex wavelet systems is based on the material
referenced, but the equation 2.15 mentioned above is original.
2.2 Introduction
The concepts behind wavelets have been independently discovered in many fields including
engineering, physics, and mathematics. This dissertation is concerned with the application
of wavelets to image processing problems making the engineering perspective the most
useful. The principal sources for this chapter are books by Daubechies [30], Mallat [75],
13
14 CHAPTER 2. WAVELET TRANSFORMS
Strang and Nguyen [113], and Vetterli and Kovac̆ević [122]. We assume familiarity with
the Z-transform. We follow the notation of Vetterli [121].
is crucial for both understanding and implementing the wavelet transform.
- H0(z) - ↓ 2 - y0
x
- H1(z) - -
↓2 y1
1. Filter an input signal (whose value at time n is x(n)) with the filter whose Z-transform
is H0 (z).
3. Filter the input signal x(n) with the filter whose Z-transform is H1 (z).
For wavelet transforms H0 (z) will be a lowpass filter and H1 (z) will be a highpass filter.
The idea is to split the original signal into two parts; the general trends given by y0 , and
the fine details given by y1 . The downsampling is a way of preventing redundancy in the
outputs. The detail coefficients (highpass filtered) in y1 are known as wavelet coefficients,
and the lowpass filtered coefficients in y0 are known as scaling coefficients.
A full wavelet transform is constructed by repeating this operation a few times. Each
time the basic splitting operation is applied to the scaling coefficients just generated. Figure
2.2 shows an example of a 4-level subband decomposition tree. This represents the forward
wavelet transform.
Level 4
Level 3
-
y000
- ↓ 2 - y0000
H0
Level 2 y00
- - ↓2
H0
Level 1 -
y0
- ↓2 - - -
↓2 y0001
H0 H1
- - - - -
↓2 ↓2
H0 H1 y001
x - - - ↓2
H1 y01
- H1 - -↓2 y1
The filters are carefully designed in order that the wavelet transform can be inverted.
Figure 2.3 shows the building block for the reconstruction. This block represents the
y0
- -
↑2
?- G0
z
6
+
y1 - - ↑2 G1
following operations:
This equivalence allows us to move the downsampling steps in figure 2.2 past the filters to
produce the equivalent structure shown in 2.4 in which all the downsampling operations
have been moved to the right. Each subband is now produced by a sequence of filters
followed by a single downsampling step. The impulse responses of these combined filters
are called analysis wavelets (for any combination including a high-pass filter) or scaling
functions (for a combination of only lowpass filters). For example, the y001 coefficients are
produced by filtering with W001 (z) = H0 (z)H0 (z 2 )H1 (z 4 ) followed by downsampling by 8.
2.3. THE WAVELET TRANSFORM
17
Level 4
-
Level 2
Level 3 -H0(z8) - ↓ 16 - y0000
H0 (z 4 )
Level 1 -
- -
H0 (z 2 )- H1 (z 8 ) ↓ 16 y0001
- H0(z)
- - -
-
- -
2
↓4
H1 (z 4 ) ↓8 y001
x(n) H1 (z ) y01
- H1(z) - -
↓2 y1
The impulse response of W001 (z) is called the analysis wavelet for scale 3 - or simply the
scale 3 wavelet.
In a similar way the reconstruction can be represented as an upsampling step followed
by a single filtering step. The impulse response in this case is called the reconstruction or
synthesis wavelet.
(Sometimes the perfect reconstruction condition is relaxed to mean that the reconstructed
signal is identical to a shifted version of the original. In this case the LHS of the first
equation is of the form 2z −k for some integer k.)
It can be shown that solutions are given by any FIR filters that satisfy the following
equations
where P (z) is known as the product filter and is defined as P (z) = H0 (z)G0 (z).
If we have a solution then we can produce additional solutions by
1. either multiplying all the coefficients in an analysis filter by r and all the coefficients
in the corresponding reconstruction filter by 1/r,
2. or adding a time delay to the analysis filters and a time advance to the reconstruction
filters (or the other way around).
These simple changes do not change the wavelet transform in any significant way. If we
ignore such trivial changes then it can also be shown that any FIR filters that achieve
perfect reconstruction must also satisfy the design equations given above1 .
2.3.2 Terminology
This section defines a number of terms that will be used in the following discussion. For
convenience the important definitions from the previous sections are repeated here.
Perfect reconstruction (PR) A system has the perfect reconstruction property if the
combination of a forward and reverse wavelet transform leaves any signal unchanged.
Analysis filters The filters used in the forward wavelet transform (H0 (z) and H1 (z)).
Reconstruction filters The filters used in the reverse wavelet transform (G0 (z) and
G1 (z)).
Balanced For real filters we define the system to be balanced if G0 (z) = H0 (z −1 ) and
G1 (z) = H1 (z −1 ). (For complex filters balance requires equivalence of the recon-
struction filters with the conjugate time reverse of the analysis filters.) Balanced
filters will therefore have equal magnitude frequency responses |Ga (ejθ )| = |Ha (ejθ )|.
1
If the equation 2.2 is true then it is clear that H0 (z) and H1 (z) cannot share any non-trivial zeros (we
call zeros at the origin trivial). If equation 2.3 is true then any non-trivial zeros of H0 (−z) must therefore
belong to G1 (z). A similar argument shows that any non-trivial zeros of G1 (z) belong to H0 (−z) and
hence G1 (z) = rz k H0 (−z) where k is an integer delay and r is a scaling factor. Finally, substituting this
into equation 2.3 shows that H1 (z) = −(1/r)(−z)−k G0 (−z).
2.3. THE WAVELET TRANSFORM 19
This definition is not normally used in wavelet analysis because for critically sam-
pled systems it is equivalent to orthogonality. In fact, the term balance has been
used for other purposes within the wavelet literature (Lebrun and Vetterli use it to
measure the preservation of a polynomial signal in the scaling coefficients during re-
construction [70]) and the reader should be aware that our usage is not standard.
Nevertheless, the concept is crucial and within this dissertation we will exclusively
use the definition given here.
Near balanced The system is near balanced if the analysis filters are close to the conju-
gate time-reverse of the reconstruction filters.
Redundancy The redundancy of the transform is the ratio of the number of outputs to
the number of inputs. A complex coefficient is counted as two outputs.
Product filter The product filter P (z) is defined as the product of the lowpass analysis
and reconstruction filters P (z) = H0 (z)G0 (z).
Symmetric We say that an odd length filter with Z-transform H(z) is symmetric with
even symmetry if H(z) = H(z −1 ), or symmetric with odd symmetry if H(z) =
−H(z −1 ). Note that these definitions are for both real and complex signals, and
in particular that there is no conjugation. For even length filters we also allow a
time delay; even symmetry means H(z) = z −1 H(z −1 ), odd symmetry means H(z) =
−z −1 H(z −1 ). We will use antisymmetric as another way of saying symmetric with
odd symmetry.
Ideal filter We say a filter is ideal if its frequency response H(f ) takes the value 1 on a
set of frequencies, and 0 on all other frequencies.
Shift invariant We call a method shift invariant if the results of the method are not
affected by the absolute location of data within an image. In other words, a method
20 CHAPTER 2. WAVELET TRANSFORMS
that gives the answer b when applied to data a is called shift invariant if it gives a
translated version of b when applied to a translated version of a.
We will call a transform shift invariant if it produces subbands such that the total
energy of the coefficients in any subband is unaffected by translations applied to the
original image.
Shift dependent We call a method shift dependent if the results of the method are
affected by the absolute location of data within an image.
It is often useful in developing theoretical results to use vector and matrix notation to
describe the transform. Let N be the number of input samples and M the number of
output coefficients. We will use x to be a N × 1 column vector containing all the input
signal values. Let w denote a M × 1 column vector containing the wavelet coefficients and
let W denote a M × N matrix representing the wavelet transform such that
w = W x.
We also define a N × M matrix P to represent the inverse wavelet transform such that
(for perfect reconstruction wavelet systems)
x = P w.
Matrix multiplication is a very inefficient way of calculating wavelet coefficients and such
an operation should always be implemented using the filter bank form described earlier.
As it is often convenient to express algorithms using this matrix notation we adopt the
convention that whenever such a multiplication has to be numerically evaluated it is tacitly
assumed that a fast filterbank implementation is used.
For complex wavelet transforms we will sometimes use complex coefficients but other
times it is more useful to consider the real and imaginary parts separately. When confusion
is possible we will use the subscripts R and C to denote the separate and complex forms.
For example, treating the output as complex coefficients we can write
wC = WC x
2.3. THE WAVELET TRANSFORM 21
and then use these complex coefficients to define the separated form
{wC }
wR =
{wC }
or equivalently we can calculate the separated form directly by
wR = WR x.
In actual wavelet implementations the data sets are finite and care must be taken
when processing coefficients near the edges of the data set. The problems occur when a
filter requires samples outside the defined range. A natural approach is to assume that such
values are zero (known as zero extension) but this will not produce a perfect reconstruction
system (except for filters with very short support such as the Haar filters). The easiest way
to treat the edges and preserve the PR property is to assume that the signal is periodic
(known as periodic extension). In other words, a sample from just before the beginning of
the data set is assumed to have the same value as a sample just before the end. This has
the drawback that discontinuities are normally created at the edges of the dataset. A third
method (known as symmetric extension) that avoids discontinuities at the edge is based
on reflections of the original data. A sample from just before the beginning is assumed to
have the same value as a sample just after the beginning. Methods differ in whether the
edge samples are doubled up. With a careful design symmetric extension can also result
in a perfect reconstruction system. Any of these edge treatments still results in an overall
linear transform. It is this complete transform (including edge effects) that is represented
by the matrices W and P .
The explanation has so far been restricted to the wavelet transform of one dimensional
signals but we will use the same definitions and notation for two dimensional wavelet
transforms of images. In particular, it is convenient to retain the same matrix and vector
notation so that a N ×1 vector x represents an image containing N pixels and W x represents
computing the two dimensional wavelet transform of x. The efficient implementation of
such a two dimensional wavelet transform requires the alternation of row and column
filtering steps [113].
transform with symmetric wavelets then the only possible choice with real coefficients is
the Haar wavelet (the Haar wavelet has very simple analysis filters H0 (z) = (1/ (2))(1 +
z −1 ), H1 (z) = (1/ (2))(1 − z −1 )) . However, if complex coefficients are allowed then many
possible solutions are allowed, such as certain cases of the complex Daubechies wavelets[73].
It is of particular interest to construct a (necessarily complex) wavelet transform that
is able to distinguish positive and negative frequencies. There are two main reasons for
this:
1. When images are analysed complex filters can separate the information in the first
and second quadrants (of 2D frequency space). This permits methods to distinguish
features near 45◦ from those near −45◦ .
2. Wavelet methods are often shift dependent due to aliasing caused by the downsam-
pling. Real filters have both negative and positive frequency passbands and usually
an aliased version of the positive passband will have a significant overlap with the
negative passband. By removing the negative passband the aliasing can be greatly
reduced [63, 64].
The first reason only applies to multi-dimensional data sets, but the second reason is always
important.
We now explain why it is impossible to get a useful single tree complex wavelet transform
(with either orthogonal or biorthogonal filters) that will both be able to distinguish positive
and negative frequencies and have good reconstruction properties. Any symmetric wavelet
(with either even or odd symmetry) will have an equal magnitude response to positive
and negative frequencies. Now consider the asymmetric case. We define the passband
as the frequencies for which the magnitude of the frequency response is above 1. From
the equation P (z) + P (−z) = 2 we see that any frequency must be contained in the
passband of either P (z) or P (−z) and that therefore the passband of P (z) must cover
at least half the spectrum. For a useful transform we want P (z) to be within the low
frequency half of the spectrum (more on this assumption later) and hence the passband
of P (z) must cover all of the low frequencies, both positive and negative. Therefore if
H(z) is biased towards positive frequencies then G(z) must be biased towards negative
frequencies. Unfortunately this leads to very bad noise amplification: small changes made
to the wavelet coefficients result in large changes in the reconstructed signal. Section 2.5
contains theoretical results linking noise amplification to the balance between analysis and
2.3. THE WAVELET TRANSFORM 23
reconstruction filters. We will show that the frequency responses of H0 (z) and G0 (z) must
be close for the wavelet transform to achieve low noise amplification. We conclude that
a complex wavelet transform based on a single dyadic tree cannot simultaneously possess
the four following properties:
1. Perfect reconstruction.
The last property merits a little further discussion. By, for example, applying a phase
rotation to the filter coefficients of an orthogonal real wavelet transform
hk → hk exp {jθk}
rows with one 1D filter, and then filtering all the columns with a second 1D filter. This
leads to efficient computation of wavelet transforms but it is not the only possibility.
Bamberger and Smith proposed a directional filter bank [7] that generalises the notion of
separability by modulating, rotating, and skewing the frequency content of the image. This
results in a transform that splits the spectrum into a number of fan shaped portions but
is shift dependent and does not differentiate between different scales. Another important
alternative is known as a Ridgelet transform [19, 20].
Candès and Donoho have developed a mathematical framework for a rigorous treat-
ment of a continuous ridgelet transform[19] and notions of smoothness associated with
this transform[20] but we shall only discuss the discrete version. The ridgelet transform
acting on images can be implemented by a Radon transform followed by the application
of a one-dimensional wavelet transform to slices of the Radon output. A Radon transform
computes the projection of the image intensity along a radial line oriented at a specific
angle. For the ridgelet transform, angles of the form 2πl2−j are used where j and l are
integers.
A particular basis function of the ridgelet transform has a constant profile (equal to
a 1D wavelet) in some specific direction depending on the associated angle in the Radon
transform. The large range of angles used means that the ridgelet transform has good
directionality properties and is much better suited than the standard real wavelet for
analysing straight lines and edges of arbitrary orientations. Unfortunately, as the ridgelet
transform is based upon a 1D DWT, the transform naturally inherits the aliasing of the 1D
DWT. Later in this chapter we discuss examples of useful complex wavelets that do reduce
aliasing. It would be interesting to construct a complex ridgelet transform by replacing the
DWT as this might add shift invariance to the other properties of the ridgelet. However, in
this dissertation we have chosen to extensively test a single representative complex wavelet
transform rather than exploring the range of construction options.
The tree structure described for the DWT is non-redundant as it produces the same number
of output coefficients as input coefficients. This has a number of advantages including low
storage requirements and fast computation. However, there is one important disadvantage:
any non-redundant wavelet transform based on FIR filters will produce shift dependent
2.3. THE WAVELET TRANSFORM 25
methods. The down-sampling introduces aliasing and so the results of processing will
depend upon the precise location of the origin. Essentially the problem is that the subbands
are critically sampled and hence there will always be aliasing unless the filters have an ideal
band pass response. However, FIR filters always have a non-ideal response.
It may be thought that by constructing some new tree system with carefully chosen
filters and degrees of downsampling that produce oversampling in some subbands and
undersampling in others it may be possible to get round this problem and produce a linear
transform with a negligible amount of aliasing while still using short support filters. We
now consider the performance of such a system.
Suppose we have some linear PR non-redundant transform represented by the matrices
W for the forward transform and P for the inverse transform. PR means that P W = IN .
As the transform is non-redundant both W and P are square matrices. Therefore P = W −1
and W P = IN . This means that a inverse transform followed by the forward transform
will give identical wavelet coefficients.
Now consider the elementary processing step that reconstructs from just the coefficients
in one subband. This is elementary both in the sense that it is simple and in the sense that
more complicated operations can often be viewed as a combination of such steps. If the
transform is to be shift invariant then this operation must represent a stationary filtering
operation.
Let T be a diagonal matrix whose diagonal entries select out a chosen subband. In
other words, if wi is an output coefficient in the chosen subband then Tii = 1, while all the
other entries in T are zero. The filtering can therefore be represented as
z = PTWx (2.7)
and we conclude that repeating the filtering does not change the output. Any filter localised
in both space and frequency should continue to change a signal when repeated, and we
conclude that the transform either possesses ideal bandpass filters or that it results in shift
dependent processing.
This shows that no matter what games are played with sampling structures and filters
it is always impossible to avoid shift dependence (for a linear non-redundant PR transform)
without constructing ideal band pass filters.
26 CHAPTER 2. WAVELET TRANSFORMS
In fact, this argument suggests the stronger result that the amount of shift dependence
is directly related to the amount the filters differ from an ideal bandpass response.
However, it is not true that significant aliasing necessarily leads to worse results. For
example, suppose we wish to implement a very simple lossy image coder by just transmit-
ting a few of the largest coefficients. The reconstructed image will be the z of equation
2.7 (where T is now defined to preserve the transmitted coefficients). If the reconstructed
(degraded) image is now coded again with the same lossy image coder then the result of
equation 2.8 holds and proves that no additional errors are introduced by the repeated
coding. Of course, in practice there will be quantisation errors and a more sophisticated
choice of which coefficients to keep but it is certainly feasible that the aliasing is beneficial.
Therefore one of the aims of the dissertation is to experimentally test the importance of
aliasing in different applications.
In the discussion above we have always needed to exclude filters with ideal responses. It
is impossible to strengthen the results because of three important counter examples. The
first example is a transform consisting of the filter H(z) = 1 that produces a single subband
(containing the original data). This results in shift invariant processing in a trivial sense
by means of doing nothing. Less trivially, the second example is the well-known Fourier
transform that also results in a shift invariant system. Thirdly and most interestingly is the
example of orthogonal harmonic wavelets. Harmonic wavelets were proposed by Newland
[85] and are particularly suitable for vibration and acoustic analysis [86]. In particular,
orthogonal harmonic wavelets provide a complete set of complex exponential functions
whose spectrum is confined to adjacent non-overlapping bands of frequency.
The easiest way to describe orthogonal harmonic wavelets is to give an account of an
efficient algorithm for their construction [86]:
There is no restriction on the number mk of coefficients for each subband except that
together each coefficient must be associated with exactly one subband.
From this construction it is easy to construct a perfect reconstruction inverse by in-
verting each step. It is also clear that the filters corresponding to each subband have
an ideal bandpass response and hence result in a shift invariant system. The drawback
2.3. THE WAVELET TRANSFORM 27
of an ideal bandpass response is that the associated wavelets have a poor localisation in
time. In practice, the box-car spectrum of the orthogonal harmonic wavelets is smoothed
to improve this localisation and the spectra of adjacent wavelet levels are overlapped to
give oversampling to improve the resolution of time frequency maps generated from the
wavelets. These more practical systems are known as harmonic wavelets.
From a computational perspective there is not much difference between this method
and a complex wavelet implemented with a tree structure. The complexity of the Fourier
transform is order N log N while a wavelet transform is order N but for signals of modest
length the harmonic wavelet may well be quicker to compute.
The design freedom of harmonic wavelets makes them well suited for analysis and a
careful design would also permit a stable reconstruction transform to be generated. The
resulting transform would be a redundant complex wavelet system. We have actually se-
lected a different form of complex wavelet transform as a representative for the experiments
but we would expect the results to be very similar for the harmonic wavelets.
Recently a new complex wavelet transform has been proposed [120] that applies filters
differentiating between positive and negative frequencies to the subbands from a standard
wavelet transform. The outputs of these filters are again subsampled so that the complete
complex transform is non-redundant. The multiple subbands produced by this complex
filtering can be recombined to give a perfect reconstruction. (Recall that we cannot hope
to reconstruct from just a single branch, such as the top-right quadrant, for the reasons
given in section 2.3.3.)
We proposed two main reasons for wanting to use complex wavelets; increased direction-
ality, and reduced shift dependence. This type of complex wavelet transform has increased
directionality, but as it is based on the shift dependent DWT subbands it naturally retains
the DWT shift dependence. Furthermore, the additional filtering discriminating between
the different quadrants of frequency space will cause additional shift dependence errors.
Using increased redundancy in this method could reduce this additional shift dependence
but will never remove the shift dependence caused by basing the transform on the output
of a standard decimated wavelet transform.
28 CHAPTER 2. WAVELET TRANSFORMS
all frequencies. This results in large amplification being necessary for some frequencies
and hence bad noise amplification properties due to the unbalance between analysis and
reconstruction filters.
Another problem occurs if we try and use the FPSS wavefunctions as the low and high
pass analysis filters of a wavelet transform. The low pass filter does not necessarily have
a zero at a frequency of π and therefore the coarse level scaling functions can develop
oscillations [30].
where σx and σy are the bandwidths of the filter and W is the central frequency. This
function can then be dilated and rotated to get a dictionary of filters by using the trans-
formation
where θ = nπ/K and K is the total number of orientations. Given a certain number of
scales and orientations, the scaling factor a and the bandwidths of the filters are chosen
to ensure that the half-peak magnitude support of the filter responses in the frequency
spectrum touch each other. Figure 2.5 shows these half-peak contours. Manjunath and
30 CHAPTER 2. WAVELET TRANSFORMS
0.12
They can be implemented using the Fast Fourier Transform (FFT) to perform the
filtering. This requires one forward transform, and the same number of inverse transforms
as there are desired subbands in the image. This process gives a very high redundancy
(equal to the number of subbands) and is therefore slow to compute. The main advantage
is that the frequency responses can be chosen to achieve perfect reconstruction. Some
attempts have been made to reduce the amount of redundancy. For example Daugman
[32] uses a subsampled set of Gabor wavelets on a regular grid, while Pötzsch et al [95]
use sets of Gabor wavelets (that they call jets) centered on a small number of nodes. Such
methods have two main problems:
1. They are inefficient. The Gabor wavelet coefficients are found by calculating the full
transform and discarding the unwanted coefficients.
wavelets. This efficient system was successfully used for motion estimation (as described
in section 3.2) but did not possess a simple set of reconstruction filters.
0.1
0.08
0.06
0.04
0.02
0
−0.02
−0.04
−0.1 −0.05 0 0.05 0.1
horizontal frequency (/sample freq)
Level 3
Level 4
-H0000a - ↓ 2 - x0000a
x000a
- -
Level 2
x00a
↓2 even
H000a
-
Level 1- x0a
- - -
↓2 ↓2 x0001a
H00a odd H0001a
- - - - -
↓2 ↓2
even
H0a H001a x001a
- - -
Tree a ↓2
odd H01a x01a
- - -
↓2
H1a x1a
- - - x000b
↓2
x0000b
H0000b
- - x00b
↓2
x
H000b odd
- - x0b
- - -
↓2 even ↓2 x0001b
H00b H0001b
- - - - -
H0b ↓2 odd H001b ↓2 x001b
Tree b - - - ↓2
odd H01b x01b
- - - H1b ↓2
x1b 2-band reconstruction block
-
- - -
?-
x...
H...0 ↓2 ↑2 G...0
y...
6
+
- - - - H...1 ↓2 ↑2 G...1
Figure 2.7: The complex wavelet dual tree structure. This figure was provided by Dr N.
Kingsbury.
2.4. REDUNDANT COMPLEX WAVELETS 33
The filters are designed to give a number of desired properties including strong discrimina-
tion between positive and negative frequencies. Note that it is impossible to discriminate
positive and negative frequencies when using conventional real wavelets. This important
property means that in a 2D version of the dual tree separable filters can be used to filter
an image and still distinguish the information in the first and second quadrants of the
two-dimensional frequency response - information that allows us to distinguish features at
angles near 45◦ from those near −45◦ .
The filters are near-balanced and permit perfect reconstruction from either tree. The
results of inverting both trees are averaged as this achieves approximate shift invariance.
In d dimensions with N samples, the transform has a computational order of N2d . For
comparison the fully decimated transform has order N and the nondecimated wavelet
transform has order N((2d − 1)k + 1) where k is the number of scales.
3. The filter sets must be biorthogonal because they are linear phase.
These drawbacks have been overcome with a more recent form of the dual tree known as a
Q-shift dual tree [65]. This tree is shown in figure 2.8. There are two sets of filters used,
the filters at level 1, and the filters at all higher levels. The filters beyond level 1 have
even length but are no longer strictly linear phase. Instead they are designed to have a
group delay of approximately 14 . The required delay difference of 1
2
sample is achieved by
using the time reverse of the tree a filters in tree b. The PR filters used are chosen to be
orthonormal, so that the reconstruction filters are just the time reverse of the equivalent
analysis filters. There are a number of choices of possible filter combinations. We have
34 CHAPTER 2. WAVELET TRANSFORMS
Level 4
- H00a - ↓ 2 - x0000a
Level 3 x000a
- -
- - Level 2 x00a
↓2
H00a
-
Level 1 - x0a
-
↓2 ↓2 x0001a
H00a H01a
- - - - -
↓2 ↓2
H0a H01a x001a
- - -
Tree a ↓2
H01a x01a
- - -
↓2
H1a x1a
- - - x000b
↓2
x0000b
H00b
- - x00b
↓2
x H00b
- - x0b
- - -
↓2 ↓2 x0001b
H00b H01b
- - - - -
H0b ↓2 H01b ↓2 x001b
Tree b - - - ↓2
H01b x01b
- - - H1b ↓2 x1b
Figure 2.8: The Q-shift dual tree structure. This figure was provided by Dr N. Kingsbury.
2.4. REDUNDANT COMPLEX WAVELETS 35
chosen to use the (13-19)-tap near-orthogonal filters at level 1 together with the 14-tap
Q-shift filters at levels ≥ 2 [65].
The Q-shift transform retains the good shift invariance and directionality properties of
the original while also improving the sampling structure. When we talk about the complex
wavelet transform we shall always be referring to this Q-shift version unless explicitly stated
otherwise. We will often refer to this transform by the initials DT-CWT.
This transform has been used for a number of applications including stereo matching
[107], texture synthesis [45], and image denoising [107]. For some of these a quadrature pair
of steerable filters was used. Using quadrature filters makes the steerable transform almost
equivalent to the DT-CWT with the main differences being that the steerable transform
has increased redundancy and worse reconstruction performance.
2.4.4 Multiwavelets
An alternative way of avoiding the limitations of the standard wavelet transform is known
as multiwavelets [3, 46]. From the filterbank perspective the difference is that the signals
are now vector valued and the scalar coefficients in the filter banks are replaced by matrices.
The conversion of the original data signal to the vectorised stream is known as preprocessing
and there are a number of choices. The choice of preprocessing decides the redundancy of
the system and it is possible to have both critically sampled and redundant multiwavelet
systems. Experimental results in the literature indicate that the redundant systems usually
give better results for denoising [114] (but are less appropriate for coding applications).
Multiwavelets are closely related to the DT-CWT. If we combine the signals from tree
a and b to produce a single 2 dimensional signal then it is clear that the DT-CWT for
scales 2 and above is equivalent to a multiwavelet system of multiplicity 2. The equivalent
matrices in the multiwavelet filterbank are simply 2 by 2 diagonal matrices whose diagonal
entries are given by the corresponding coefficients from the DT-CWT filters.
The DT-CWT processing at scale 1 can be viewed in two ways. One way is to see
it as part of a multiwavelet structure that uses repeated row preprocessing (giving the
redundancy) and has different filters for the first scale. The other way is to interpret the
first scale as performing the multiwavelet preprocessing while preserving (in the scale 1
subbands) the parts of the signal that are filtered out.
In either case it is clear that the DT-CWT is a special case of a multiwavelet transform.
The advantages of this special case are:
1. The preprocessing and filters are carefully designed to allow an interpretation of the
output as complex coefficients produced by filters discriminating between positive
and negative frequencies. This leads to the good shift invariance properties.
2. The absence of signal paths between the two trees (reflected in the diagonal structure
of the matrices) leads to less computation.
2.5. NOISE AMPLIFICATION THEORY 37
2.5.1 Preliminaries
We consider a simple form of wavelet processing in which we have an observed image (or
signal) x ∈ R N that is processed by:
w = Wx
This theory applies to both real and complex wavelet transforms. For complex trans-
forms we use the separated form in which w is still a real vector and consists of the
real parts of the complex coefficients followed by the imaginary parts.
y = P v.
In the mathematical analysis of this model we will model the wavelet domain processing
by adding independent white Gaussian noise of mean zero and variance σ 2 to the wavelet
coefficients.
v = N w, σ 2 IM
38 CHAPTER 2. WAVELET TRANSFORMS
noise
where σ 2 is the variance of the added noise. This model is illustrated in figure 2.9. The
total expected energy of the added noise is E {
v − w
2 } = Mσ 2 . The total expected
energy of the error after reconstruction is given by E {
y − x
2 }. We would like to define
the noise gain as the ratio of these two energies but there is a problem due to scaling.
Suppose we construct a new wavelet transform W = sW that simply scales the values of
all the wavelet coefficients by a factor of s and a new reconstruction matrix P = (1/s)P
that still achieves PR. During reconstruction all the coefficients are scaled down by a factor
of s and hence the noise energy after reconstruction is reduced by s2 . However, in almost all
practical applications a scaling factor of s will mean that the noise standard deviation σ is
also increased by the same factor2 . In order to get meaningful values for the noise gain we
adopt a convention that the scaling factor s is chosen such that the transform preserves the
energy of a white noise signal during the forward wavelet transform. In other words, if we
use the transform to analyse a signal containing independent white Gaussian noise of mean
0 and variance α2 (to give a total expected input energy of Nα2 ) then the total expected
energy of the wavelet coefficients will be equal to Nα2 . We shall prove (A.1) that this is
equivalent to the requirement that tr(W T W ) = N. We define a normalised transform to
be a transform scaled in this manner. We assume that all transforms mentioned in this
section satisfy this convention. The noise gain g is then defined as
E {
y − x
2 }
g= (2.14)
E {
v − w
2 }
A low noise gain means that small changes in the wavelet coefficients lead to small changes
in the reconstructed signal. In this case we will call the reconstruction robust.
2
One exception to this principle is when we use fixed precision numbers to store the coefficients. The
quantisation noise will remain at the same level for different scaling factors s and the argument is now a
valid argument for scaling the coefficients to use the full dynamic range.
2.5. NOISE AMPLIFICATION THEORY 39
We now attempt to motivate this model by giving two examples where it might be
appropriate:
2. Consider an image restoration technique, such as denoising, for which the wavelet
coefficients are significantly changed. The wavelet domain processing is designed to
make the output coefficients v a reasonable estimate of the wavelet coefficients of
the original image. The purpose of the technique is to get an enhanced image and
initially it may seem inappropriate to use a transform that minimises the effect of
the change. However, if we now reinterpret x as representing the original image, and
w as the wavelet coefficients of this original image, then the same model can be used
to represent the belief that v will be noisy estimates of w. This reinterpretation
may seem a bit confusing but is worth understanding. The estimates v are in reality
produced by some estimation technique acting on the observed data. Nevertheless,
they are modelled based on the original image. The noise in the model represents
the wavelet coefficient estimation error. From this new perspective the noise gain of
the transform measures the relationship between the wavelet estimation error and
the final image error and it is clear that a low noise gain will be beneficial in order
to produce a low final image error.
The theory is equally valid for any linear transforms W and P provided that the system
achieves perfect reconstruction (P W = IN ) and the scaling convention (tr(W T W ) = N)
is observed.
40 CHAPTER 2. WAVELET TRANSFORMS
• The frame bounds are given by the largest and smallest of these numbers and so the
transform represents a wavelet frame if and only if the smallest is non-zero (see A.3
for proof).
• The average of these numbers gives the gain in energy when we transform white noise
signals and so the average is one for normalised transforms (see A.4 for proof).
• Any linear perfect reconstruction transform that is used to invert W has noise gain
i=N 1
bounded below by M1 i=1 di and this lower bound is achievable (see A.5 for proof).
• If the frame is tight then it can be inverted by the matrix W T , and this inversion
achieves the lower bound on noise gain (see A.6 for proof).
• The noise gain of any real linear perfect reconstruction transform, P , used to invert
W is given by
N +U
g= (2.15)
M
where U is a non-negative quantity given by U = tr (P − W T )(P T − W ) (see A.7
for proof). We will call U the unbalance between the analysis and reconstruction
transform.
Most of these results come from standard linear algebra and can be found in the literature.
We present them here for interest and as a route to the final simple equation for the noise
gain in terms of the unbalance. We are not aware of this final equation (2.15) appearing
in the literature.
Balanced wavelet transforms use the conjugate time-reverse of the analysis filters for
the reconstruction filters and therefore P T = W . (This result is true regardless of whether
we have a real or complex wavelet because we are using the expanded form of the complex
wavelets that treat the real and imaginary parts separately. The equivalent statement for
complex matrices is that PCH = WC .) This results in U taking its minimum value U = 0
2.5. NOISE AMPLIFICATION THEORY 41
and we deduce from the last result that balanced wavelet transforms will have the least
noise gain and hence the greatest robustness.
This can also be expressed in terms of the frequency responses. The frequency response
of an analysis filter will be (for a balanced transform) the conjugate of the frequency re-
sponse of the corresponding reconstruction filter. Note that this means that the magnitude
of the frequency responses will be equal. Therefore a necessary condition for low noise gain
is that the frequency responses of H0 (z) and G0 (z) must be close.
2.5.4 Discussion
The transform labelled STCWT 2 is a special case because the product filter has no complex
zeros. The analysis and reconstruction filters are all real and this transform is identical to a
2.6. CONCLUSIONS 43
real (and orthogonal) Daubechies wavelet transform (of order 2). The transform is therefore
balanced and achieves low noise gain but has the problems of large shift dependence and
wavelets which are not very smooth. To allow direct comparison we still treat these real
wavelets as having complex outputs and so add complex noise to them. Half of this complex
noise is lost when we take the real part at the end of the transform which is why the noise
gain is 1/2. If we attempted to compute a wavelet transform with 1 zero in H0 (z) we would
obtain the Haar wavelet transform with a noise gain of 1/2 for the same reasons.
The DT-CWT achieves a very low noise gain and so will give robust reconstructions.
We note that the Q-shift tree has a lower noise gain than the original dual tree. This
is because of the better balanced filters in the Q-shift version. The single tree complex
wavelets, however, have a rapidly increasing noise gain for the longer (and smoother)
wavelets which is likely to make the wavelets useless. Note that the minimum noise gain
increases at a much slower rate suggesting that an alternative reconstruction transform
could be found with much less noise gain. However, even this alternative would not be of
much practical use as the minimum noise gain is still significant.
Note that this is a very unusual choice of complex Daubechies wavelet. The forms
more commonly used are much more balanced and do not suffer from these reconstruc-
tion problems but consequently have poor discrimination between positive and negative
frequencies.
2.6 Conclusions
The main aim of this chapter was to introduce the terminology and construction of wavelet
and complex wavelet systems. The secondary aim was to explain why we want to use
complex wavelets and what form of complex wavelet is appropriate. We now summarise
the principal points relating to this secondary aim:
1. We want to distinguish positive and negative frequencies in order to:
(a) Improve the directional frequency resolution of the 2D transform while still using
efficient separable filters.
(b) Reduce aliasing and produce shift invariant methods.
is closely related to the balance of the transform and, in particular, that the best (i.e.
lowest) noise gains are given by balanced transforms and are equal to the reciprocal
of the redundancy.
3. We explain why linear PR complex wavelets based on a single standard tree cannot
simultaneously; give shift invariant methods, be balanced, and use short support
filters.
4. We illustrate numerically the problems of noise gain caused by lack of balance when
we use a single tree complex wavelet that strongly differentiates between positive and
negative frequencies.
5. Using an elementary processing example we explain more generally why any non-
redundant linear PR transform must use ideal filters in order to achieve shift invari-
ance.
Previous applications
3.1 Summary
This dissertation aims to explore the potential of the DT-CWT in image processing. The
purpose of this chapter is to describe applications for which the DT-CWT (or a similar
transform) has already been evaluated.
The phase of the complex coefficients is closely related to the position of features within
an image and this property can be utilised for motion estimation [74]. The properties of
the DT-CWT (in particular, its extra directional frequency resolution) make it appropri-
ate for texture classification [47, 43, 33] and gives methods that are efficient in terms of
computational speed and retrieval accuracy. The complex wavelets are also appropriate
for use in denoising images [62]. Previous work has shown that a nondecimated wavelet
transform [82] performs better than decimated transforms for denoising and the DT-CWT
is able to achieve a performance similar to the nondecimated transforms. Interestingly,
when the DT-CWT is used in more sophisticated denoising methods [24] it is found to
significantly outperform even the equivalent nondecimated methods.
The only original results in this chapter come from the replication of the denoising
experiments in section 3.4.
45
46 CHAPTER 3. PREVIOUS APPLICATIONS
property. In other words, the author had been unable to find simple FIR filters that could
be used to exactly reconstruct the original signal. The filter shapes were very close to
those used in the DT-CWT suggesting that the conclusions would also be valid for the
DT-CWT.
The task is to try and estimate the displacement field between successive frames of an
image sequence. The fundamental property of wavelets that makes this possible is that
translations of an image result in phase changes for the wavelet coefficients. By measuring
the phase changes it is possible to infer the motion of the image. A major obstacle in
motion estimation is that the reliability of motion estimates depends on image content.
For example, it is easy to detect the motion of a single dot in an image, but it is much harder
to detect the motion of a white piece of paper on a white background. Magarey developed
a method for incorporating the varying degrees of confidence in the different estimates, but
for the purposes of this dissertation we highlight just a couple of the conclusions.
“In addition, the efficiency of the CDWT structure minimises the usual dis-
advantage of phase-based schemes– their computational complexity. Detailed
analysis showed that the number of floating point operations required is com-
parable to or even less than that of standard intensity-based hierarchical algo-
rithms.”
Although not included in this dissertation, we have found such phase based computation
beneficial for constructing an adaptive contour segmentation algorithm based on the DT-
CWT [34].
3.3 Classification
Efficient texture representation is important for content based retrieval of image data. The
idea is to compute a small set of texture-describing features for each image in a database
in order to allow a search of the database for images containing a certain texture. The
DT-CWT has been found by a number of authors to be useful for classification [47, 43, 33].
Each uses the DT-CWT in different ways to compute texture features for an entire image:
3.4. DENOISING 47
1. de Rivaz and Kingsbury [33] compute features given by the logarithm of the energy
in each subband.
2. Hill, Bull, and Canagarajah [47] compute the energies of the subbands at each scale.
However, in order to produce rotationally invariant texture features, they use features
based on either the Fourier transform or the auto-correlation of the 6 energies at each
scale.
3. Hatipoglu, Mitra, and Kingsbury [43] use features of the mean and standard devia-
tions of complex wavelet subbands. However, instead of using the DT-CWT based on
a fixed tree structure, they use an adaptive decomposition that continues to decom-
pose subbands with energy greater than a given threshold. The aim is to adapt the
transform to have the greatest frequency resolution where there is greatest energy.
1. de Rivaz and Kingsbury report an improvement from 58.8% for the DWT to 63.5%
for the DT-CWT on a database of 100 images [33].
2. Hill, Bull, and Canagarajah report an improvement from 87.35% for the DWT to
93.75% for the DT-CWT on a database of 16 images [47].
3. Hatipoglu, Mitra, and Kingsbury report an improvement from 69.64% for a real
wavelet (with an adaptive decomposition) to 79.73% for the DT-CWT (with the
adaptive decomposition) on a database of 116 images [43].
3.4 Denoising
In many signal or image processing applications the input data is corrupted by some noise
which we would like to remove or at least reduce.
Wavelet denoising techniques work by adjusting the wavelet coefficients of the signal in
such a way that the noise is reduced while the signal is preserved. There are many different
methods for adjusting the coefficients but the basic principle is to keep large coefficients
while reducing small coefficients. This adjustion is known as thresholding the coefficients.
48 CHAPTER 3. PREVIOUS APPLICATIONS
One rationale for this approach is that often real signals can be represented by a few
large wavelet coefficients, while (for standard orthogonal wavelet transforms) white noise
signals are represented by white noise of the same variance in the wavelet coefficients.
Therefore the reconstruction of the signal from just the large coefficients will tend to
contain most of the signal energy but little of the noise energy.
An alternative rationale comes from considering the signal as being piecewise stationary.
For each piece the optimum denoising method is a Wiener filter whose frequency response
depends on the local power spectrum of the signal. Where the signal power is high, we keep
most of the power; where the signal power is low, we attenuate the signal. The size of each
wavelet coefficient can be interpreted as an estimate of the power in some time-frequency
bin and so again we decide to keep the large coefficients and set the small ones to zero in
order to approximate adaptive Wiener filtering.
The first wavelet transform proposed for denoising was the standard orthogonal trans-
form [39]. However, orthogonal wavelet transforms (DWT) produce results that substan-
tially vary even for small translations in the input [63] and so a second transform was
proposed, the nondecimated wavelet transform (NDWT) [82], which produced shift invari-
ant results by effectively averaging the results of a DWT-based method over all possible
positions for the origin [69, 26]. Experiments on test signals show that the NDWT is
superior to the DWT. The main disadvantage of the NDWT is that even an efficient im-
plementation takes longer to compute than the DWT, by a factor of the three times the
number of levels used in the decomposition.
Kingsbury has proposed the use of the DT-CWT for denoising [62] because this trans-
form not only reduces the amount of shift-variance but also may achieve better compaction
of signal energy due to its increased directionality. In other words, at a given scale an object
edge in an image may produce significant energy in 1 of the 3 standard wavelet subbands,
but only 1 of the 6 complex wavelet subbands.
The method is to attenuate the complex coefficients depending on their magnitude. As
for the standard techniques, large coefficients are kept while smaller ones are reduced. It
was found that this method produces similar results to the nondecimated wavelet method
while being much faster to compute.
Figure 3.1 shows the results when using a simple soft denoising gain rule. White noise
was added to a test image and the denoised rms error was measured for the different
techniques.
3.4. DENOISING 49
Figure 3.1: Top left: Original image. Top right: Noisy image. Bottom left: DWT results.
Bottom middle: DT-CWT results. Bottom right: NDWT results.
In this case we can see that the DT-CWT has a slightly better SNR than the NDWT
method but that the difference is not visually noticeable.
There are often significant correlations between the wavelet coefficients in the trans-
forms of real images. In particular, it is found that large coefficient values cascade along
the branches of the wavelet tree. This property is known as persistence [104]. A model
known as the Hidden Markov Tree (HMT) proposed by Crouse, Nowak, and Baraniuk
attempts to capture the key features of the joint statistics of the wavelet coefficients (in-
cluding persistence) [28]. This is achieved by means of hidden state variables that describe
the likely characteristics of the wavelet coefficients (e.g. whether they are likely to be
50 CHAPTER 3. PREVIOUS APPLICATIONS
large or small). A Markov model is used to describe the relative probability of transitions
between different states along a branch of the wavelet tree (moving from coarse to fine
scales). The initial model was based on a decimated wavelet transform (DWT). Romberg,
Choi, and Baraniuk proposed a shift-invariant denoising model based on the HMT using
the nondecimated wavelet transform (NDWT) [104]. In experiments this HMT shift in-
variant denoising was shown to outperform a variety of other approaches including Wiener
filtering and the shift invariant hard thresholding method mentioned above [24]. Choi et
al have also tested the use of dual tree complex wavelets within the HMT framework [24].
The results were found to be consistently better than even the shift invariant HMT. Table
3.2 shows their published results for the HMT combined with either the DWT, NDWT,
or DT-CWT. Three test images (Boats, Lena, and Bridge) were used with two choices of
noise variance (σ = 10 or σ = 25.5). The table displays the peak signal to noise ratios
(PSNRs) of the denoised images. Romberg and Choi have made the source code for the
HMT available on the internet [103]. Combining this code with the DT-CWT we have
attempted to replicate the denoising results. The table also contains the results of our
experiments (shown in bold). Looking at the σ = 25.5 results we see that our results are
similar for the boats image, better for the Lena image, and worse for the bridge image.
Differences are partly caused by different noise realisations, but repeating the experiments
produces very similar SNR levels. The main reason for the difference is that we are using
a slightly different version of the dual tree.
The main point to notice is that in this case the shift invariance given by the use of the
NDWT tends to give a small improvement in results, while the DT-CWT tends to give an
3.5. CONCLUSIONS 51
3.5 Conclusions
Treating the coefficients as complex numbers has the result of approximately decoupling
the shift dependent information from the shift invariant information. The phase gives a
measure of local translations and therefore permits phase-based motion estimation. The
magnitude is more robust to translations and hence applications like classification and
denoising (that should be shift invariant) process just the magnitude.
For simple thresholding denoising we see that the DT-CWT achieves a similar perfor-
mance to methods based on the NDWT. However, for a more complicated HMT denoising
the DT-CWT is significantly better than even the NDWT equivalent.
52 CHAPTER 3. PREVIOUS APPLICATIONS
Chapter 4
4.1 Summary
The purpose of this chapter is to describe how to use the DT-CWT to generate texture
features and to begin to explore the properties of these features. We describe texture by
computing features from the energy of the DT-CWT wavelet subbands.
One powerful method for evaluating a choice of texture model is to estimate the model
parameters for a given image and then attempt to resynthesize a similar texture based
on these parameters. This chapter reviews two texture synthesis methods based on filter
banks. This is of interest because it suggests how complex wavelet texture synthesis might
be done and because it illustrates the problems encountered when filter banks do not have
the perfect reconstruction properties of wavelets.
We adapt the first of these methods to demonstrate the difference between using real
or complex wavelets. Section 4.7 describes the texture synthesis algorithm and section 4.8
contains discussion of the experimental results. We find that the complex wavelets are
much better at representing diagonally orientated textures.
The main original contributions of this chapter are the synthesis results that give an
indication of when the DT-CWT texture features will be appropriate.
4.2 Introduction
There are many techniques for texture synthesis. For example, there are methods based
on auto-regressive filters or autocorrelation and histogram [10, 22]. Gradient algorithms
53
54 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
are used to simultaneously impose the autocorrelation function and the histogram. Proper
Bayesian inference usually requires extensive computation and is consequently extremely
slow but has been done, usually by means of Markov Random Fields (often at a variety
of scales) [91, 134]. Other techniques include models based on reaction-diffusion [118, 129]
frequency domain [72] or fractal techniques [40, 72]. A trivial technique which is practically
very useful is to simply copy the texture from a source image (used extensively in computer
games). This kind of approach can be powerfully extended by a stochastic selection of
appropriate sources [16].
Sections 4.3 and 4.4 describe methods that have been used to synthesize textures based
on the output of a filter bank. We will use (in the second half of the chapter) a technique
very similar to the one described in section 4.3, while the second method is of interest
mainly to show the difficulties posed by lack of perfect reconstruction in the filters.
While texture synthesis by itself is an important topic we also have an indirect moti-
vation for studying these methods. Our main goal in this chapter is to use the DT-CWT
to produce useful texture features. The indirect motivation is that texture synthesis pro-
vides an interesting way to demonstrate visually the relative advantages of different sets
of texture features.
4.3.1 Method
The method starts with an image x(0) of the desired size that is filled with white Gaussian
noise of variance 1 (the histogram matching step will mean that the results will be the
same whatever the choice of initial mean and variance). The steps for iteration n are as
follows:
4.3. PYRAMID-BASED TEXTURE ANALYSIS/SYNTHESIS 55
1. First the histogram is matched to the input texture. More precisely, we generate a
new image y(n) by applying a monotonically increasing transform to x(n−1) such that
the histogram of y(n) matches the histogram of the input texture.
3. Alter the pyramid representation of y(n) in order that the histogram of each subband
matches the histogram of the corresponding subband in the pyramid transform of
the input texture.
4. Invert the pyramid transform to generate x(n) , the next image in the sequence.
In order to get both the pixel and pyramid histograms to match, these steps are iterated K
times. As the filters are not perfect, iterating too many times introduces artefacts due to
reconstruction error [45]. Stopping after about K = 5 iterations is suggested. The output
of the algorithm is the last image x(K) .
The algorithm is effective on “stochastic” textures (like granite or sand) but does not work
well on “deterministic” textures (like a tile floor or a brick wall). Igehy and Pereira [51]
describe an application of this algorithm to replacing part of an image with a synthesized
texture (this might be done to remove stains or scratches or other unsightly objects from
an image).
Their algorithm extends the original with the goal that the synthesized texture be-
comes an image which is a combination of an original image and a synthetic texture; the
combination is controlled by a mask. The algorithm remains the same as before, except
that at each iteration the original image is composited back into the synthesized texture
according to the mask using a multi-resolution compositing technique that avoids blurring
and aliasing [18].
The conclusion is that this texture synthesis can be useful in a variety of images which
need the replacement of large areas with stochastic textures but that the technique is
inappropriate for images that need the replacement of areas with structured texture[45].
56 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
4.4.1 Filters
The human visual system (HVS) is imitated by using a set of 4 ∗ 4 filters (four scales, four
orientations). Each filter is a separable Gabor function of the form
g(x, y)f,θ,α = exp[−πa2 x2 + y 2 ] exp[j2πf (x cos θ + y sin θ)]. (4.1)
where θ specifies the desired orientation, f gives the radial frequency and a is a weighting
factor that makes the function decay to zero as you move away from the origin. Only the
real part of this function is actually used.
The filtering is applied to shrunk versions of the input image. This means that only one
filter needs to be defined for each orientation. After filtering for the four highest frequency
channels the image is filtered with a low-pass filter and down-sampling by a factor of two
in both directions. Then the same procedure is repeated for each scale.
Demodulation is applied to the Gabor channels after filtering thus enabling a reduction
in the number of samples by a factor of two in each dimension. However, the resulting
channels become complex and so the effective compression ratio is 2. This means that
overall a four scale decomposition of a N ∗ N image produces:
4.4.3 Method
The synthesis procedure consists of seven stages.
1. Noise Generation.
4. Modulation of the weighted filtered noise signals to produce the synthetic channels.
58 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
Noise generation
Gaussian filtering
The noise signals are then convolved with separable elliptical Gaussian masks to provide
them with an elliptical Gaussian spectral shape. The filter function for the (p,q) synthetic
channel is:
The factors bupq and bvpq are chosen using an approximate formula so that when the Gabor
filtering scheme is applied to the synthetic texture, the resulting equivalent bandwidths of
its Gabor channels have equal values to those measured in the input image. The exact
computation is hard due to the overlapping between channels but it is reported that the
approximate scheme does not significantly affect the visual quality of the results.
Weighting
It is desired to weight the signals so that when the Gabor filters are applied to the synthe-
sized texture, the resulting energies will be equal to those measured in the original image.
This task is made hard due to the overlap between channels. Since the synthetic channels
are statistically independent the energy of a sum is equal to the sum of the energies and so
it is possible to calculate a matrix which describes the effect when the channels are added
together. When the matrix is multiplied by a vector of energies in the synthetic channels
the resulting vector contains the energies that would be observed using the Gabor filtering.
The inverse of this matrix can be precomputed and the appropriate weights are given by
multiplying this inverse matrix by the vector of the measured energies.
4.4. GABOR BASED TEXTURE SYNTHESIS 59
Modulation
The signals are then expanded by a factor of two in both spatial dimensions and modulated
by the appropriate central frequency.
Merging
A pyramid structure is then used to combine the synthetic channels. This means summing
the four lowest resolution synthetic channels, expanding the image by a factor of two in
both spatial dimensions, and then adding the result to the four synthetic channels of the
next resolution, and so on, until the highest frequency channels are added. The expansion
is performed by upsampling followed by a lowpass filter.
Equalization
The equalization is done in the frequency domain. First, the five average values of the LPR
frequency moduli obtained at the feature extraction stage are decompressed, by merely
replicating them in their respective spectral areas. The resulting square of the spectral
moduli is imposed on the lowest frequencies of the synthetic mix obtained before, keeping
the phase unchanged.
Histogram matching
The compressed original histogram is decompressed to its former size by expanding and
low-pass filtering it. Then a standard histogram matching algorithm is used to modify the
histogram of the synthesized texture to match the decompressed version of the original
one.
4.4.4 Results
The method described above achieves a good match in the histogram, LPR channel mod-
ulus and channel energies. The bandwidths of the channels are not so closely matched but
it is reported that the consequences of these inaccuracies are not significant compared to
the inaccuracies due to the limitations of the texture model.
Errors occur because the frequency content of each channel is always shifted to the
central location. This means that a texture with a well-defined orientation in the original
60 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
image will only be well reproduced if the orientation is one of the four orientations of the
Gabor filters.
4.5 Discussion
We have described two texture synthesis algorithms for producing synthetic textures with
certain feature values. The Gabor texture synthesis attempts to model the interaction
between signals inserted in different subbands. This method is fast and can be generalised
for alternative filters but only approximately achieves the goal of producing matching
feature values. The pyramid-based texture synthesis method achieves a better match for
the feature values but is iterative and only works for transforms that can be inverted, or
at least have a reasonable approximate inversion.
In other words, the wavelet texture features are given by the energies of the subbands.
We will also compare the results when we augment our feature set with the values of a
histogram of the original image. The histogram will be calculated using 256 equally spaced
bins across the range of intensity values in the image.
4.7 Algorithm
The structure of the algorithm is very similar to the method invented by Heeger and Bergen
that was explained in section 4.3. The principle differences are that we use the invertible
complex wavelet transform and that in the matching stage we match the energy of the
subbands rather than their histograms.
4.7. ALGORITHM 61
We compare texture synthesis using just the wavelet texture features (called energy
synthesis) with texture synthesis using the augmented feature set (called histogram/energy
synthesis). First we describe the algorithm for histogram/energy synthesis.
The input to the algorithm is an example texture. The texture features are measured
for this texture and then a new texture is synthesized from these features.
The synthesis starts with an image x(0) of the desired size that contains white Gaussian
noise of mean 0 and variance 1. The steps for iteration n are
1. Match the histogram of x(n−1) to the input texture. In other words, generate a new
image y(n) by applying a monotonically increasing function to x(n−1) in order that
the histogram of the new image matches the histogram of the input texture.
3. Scale the contents of each noise subband (those in decomposition A) so that the
resulting energy is equal to the corresponding energy for the texture subbands (those
in decomposition B). If the original energy is EA and the desired energy is EB then
the correct scaling factor is EB /EA .
4. Invert the complex wavelet transform of decomposition A to produce the next ap-
proximation x(n) to the synthesized texture.
These steps are then iterated K times where K is a positive integer. The output of the
method is the image x(K) .
The algorithm for energy synthesis is identical except that in step 1 y(n) is a direct
copy of x(n−1) .
Histogram matching is a relatively quick operation as it can be computed by means of
two lookup tables. The first lookup table is computed from the cumulative histogram of the
noise image and effectively gives a transform from pixel intensity to rank order. The second
lookup table is computed once for all iterations and is the inverse to the intensity to rank
transform for the example texture. Once the lookup tables have been constructed, each
pixel in the noise image is transformed once by the first lookup table to get its approximate
rank, and then by the second lookup table to discover the intensity in the example image
that should have that rank.
62 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
4.8 Results
This section contains a selection of textures synthesized by the algorithm. All the textures
other than the ones in figure 4.4 are taken from the Brodatz set and are all 128 by 128
pixels. 5 level transforms and K = 3 iterations are used in the algorithms.
First some good results are shown in figure 4.1. The original textures are on the left and
the synthesized textures are on the right. The images are of grass, sand and water. The
method used was to match histograms in the image domain and energy in the transform
domain (the histogram/energy method). These images seem fairly well synthesized.
The same experiment was repeated for energy synthesis and the results are shown in
figure 4.2. The results appear just as good as for histogram/energy synthesis.
4.8. RESULTS 63
Figure 4.3 shows an example where the results are not as good. The original texture
has a strong vertical orientation. Although the texture synthesized with histogram/energy
synthesis does seem to be biased towards the vertical, it looks very different because the
strong orientation has been lost.
Figure 4.4 shows an example of a texture where no performance is entirely satisfactory.
The texture consists of many diagonal blobs of the same intensity. We tested energy syn-
thesis, histogram/energy synthesis, and a version of histogram/energy synthesis based on
the DWT. Energy synthesis is a very bad choice for this texture as it makes the synthesized
image much less piece-wise smooth than the original and this difference is easily perceived.
Histogram/energy synthesis partly captures the diagonal stripes in the texture but the
variation in direction and size of the stripes again give rise to a quite noticeable difference.
However, for this texture the DT-CWT possesses a clear superiority over a comparable
algorithm based on a normal Discrete Wavelet Transform (DWT) as the DWT features
cannot discriminate between energy near +45◦ from energy near −45◦ .
Figure 4.5 demonstrates the good convergence of the histogram/energy synthesis al-
gorithm. The energy in each subband was measured just before the subband rescaling.
These measured energies are plotted against iteration number with one plot for each of the
subbands. The target texture in this case was the the water texture (bottom left plot of
figure 4.1). There is also a horizontal line in each plot corresponding to the target energy
value for the corresponding subband. For every subband the energies rapidly converge to
the target values. For energy synthesis the convergence is even more rapid.
4.9. CONCLUSIONS 65
4.9 Conclusions
The methods are not able to adequately synthesize images with either strong directional
components or with a regular pattern of elements but for textures without such problems
there is a clear order of performance; the DWT synthesis is worst, then energy synthe-
sis gives reasonable performance, and histogram/energy synthesis is best. However, the
differences are only noticeable in certain cases. The improvement of the DT-CWT rela-
tive to the DWT is seen when the texture has diagonal components. The DT-CWT can
separate features near 45◦ from those near −45◦ while the DWT combines such features.
The improvement of histogram/energy synthesis is seen when the histogram of the original
texture has strong peaks. This occurs if the image contains regions where the intensity is
constant.
66 CHAPTER 4. COMPLEX WAVELET TEXTURE FEATURES
0 0 0 0
Figure 4.5: Energy before rescaling for different subbands during the histogram/energy
synthesis algorithm. Horizontal lines represent the target energy values.
Chapter 5
Texture segmentation
5.1 Summary
The purpose of this chapter is to explore the performance of the DT-CWT features for non-
Bayesian texture segmentation. In a recent comparison of features for texture classification
[101] no clear winner was found, but the fast methods tended to give worse performance
and it was concluded that it was important to search for fast effective features.
The original scheme used a statistical classifier that required significant quantities of
reliable training data. This is unreasonable in practice and we propose an alternative
simpler method. This simple method gives poor experimental performance for the DWT
but is reasonable for the NDWT and when used with the DT-CWT the results are better
than any one of the schemes used in the original classification. We explain the reason for
the power of the DT-CWT in terms of its directionality and aliasing properties.
Finally we show how simple multiscale techniques yield a fast algorithm based on the
DT-CWT with even better results.
67
68 CHAPTER 5. TEXTURE SEGMENTATION
5.2 Introduction
Texture segmentation has been studied intensively and many features have been proposed.
Recently Randen and Husøy [101] performed an extensive comparison of different texture
feature sets within a common framework. Their study concluded that there was no clear
winner among the features (although some feature sets, decimated wavelet coefficients for
example, were clear losers) and that the best choice depended on the application. They
also claimed that computational complexity was one of the biggest problems with the more
successful approaches and that therefore research into efficient and powerful classification
would be very useful.
The comparison was performed on a supervised texture segmentation task. The input
to the algorithm is a set of training images each containing a single texture, and a mosaic
made up from sections of these textures. The problem is to assign each pixel in the
mosaic to the correct texture class. Randen and Husøy note that it is important to have
disjoint test and training data. This means that the textures present in the mosaic are
new examples of the same texture as the training data, rather than being direct copies of
a portion of the training texture.
This task is called supervised segmentation because of the availability of examples from
each texture class. Unsupervised segmentation attempts to solve the same problem without
these examples. An example of this is work by Kam and Fitzgerald who have produced
results of using DT-CWT features for unsupervised segmentation [59]. Care must be
taken when comparing results of supervised and unsupervised techniques because they
are actually attempting slightly different tasks. A supervised segmentation is considered
perfect when every pixel is classified into the right class while an unsupervised segmentation
is considered perfect when the boundaries are in the correct positions. This may seem very
similar but suppose that one class contains very bright images, while the other contains
very dark images. Now consider a test image whose every pixel intensity is an identical
medium brightness. The supervised method may have a 50% chance of classifying the
pixels correctly while the unsupervised method will classify every pixel into the same class
and hence be deemed to achieve a 100% accuracy.
First the original method used in the comparison is described in section 5.3. Section
5.4 describes how we simplify the training stage of the algorithm to give a more practically
useful scheme. Section 5.5 explains in detail the method tested. Section 5.6 contains the
5.3. ORIGINAL CLASSIFICATION METHOD 69
results of the proposed method and also the published results using the more advanced
training scheme. Sections 5.7 and 5.8 discuss the reasons for the relative performance.
The comparison used pixel by pixel classification in an attempt to isolate the effect of the
features. However, alternative classification schemes such as multiscale classification can
give faster and better results. In section 5.9 we propose and test a multiscale segmentation
algorithm in order to show that the benefits of the DT-CWT features are retained for these
more powerful techniques.
The features were smoothed in step 3 using a Gaussian lowpass filter with σs = 8. We will
discuss the effect of this choice later in section 5.8.
The classification method used was “Type One Learning Vector Quantization” (LVQ)
[66]. This scheme results in a classifier that chooses the closest class where the distance is
defined as the standard Euclidean metric to the class centre. This scheme requires time
consuming training in order to select class centres that give good classification results on
the training data.
The principal difference between the compared methods was in the choice of the filters
used in the first step. Different filters result in different feature sets. Amongst the filters
examined were:
4. Wavelet transform, packets, and frames based on the Daubechies family of wavelets.
1. Training neural networks using back propagation and median filtering the resulting
classification.
3. AR model-based features.
The first goal of this chapter is to demonstrate the superiority of the DT-CWT features
and so we are allowed to alter the comparison technique only if, as is the case here, the
change will not make the results better.
Now suppose that there are C classes and let f (c) (x, y) be the feature vectors calculated
from the training image for class c. The class centres µc are defined as
1 (c)
M −1 N −1
µc = f (x, y) (5.4)
NM x=0 y=0
72 CHAPTER 5. TEXTURE SEGMENTATION
dc (x, y) =
f (x, y) − µc
2 (5.5)
For decimated transforms the subbands are reduced in size. The subbands at level k are
only of size M/2k ×N/2k . In order to apply the same method we first expand the subbands
until they are of size M × N. Let Ps (x, y) be a subband at level k of size M/2k × N/2k .
We define the expanded subband Ws (x, y) by
x y
Ws (x, y) = Ps ( , k ) (5.7)
2k 2
where z represents the largest integer not greater than z. The rest of the method is
identical. Note that this expansion of the DWT is not equivalent to the NDWT. The
expanded DWT subbands at level k are piecewise constant on squares of size 2k × 2k while
the NDWT subbands have no such restriction. This may seem a strange way of expanding
the subbands - usually some form of interpolation such as lowpass filtering is performed
during expansion operations. Two possible justifications for this approach are:
1. This expansion means that the value of Ws (x, y) is equal to the value of the wavelet
coefficient (of subband k) that is closest to the location x, y.
These are not very compelling reasons. In fact, it is quite likely that an alternative expan-
sion will improve the performance. The main reason we use this very simple expansion is
in order to provide the fairest comparison with the original experiments. The results of
our experiments indicate that even this crude expansion allows the DT-CWT to perform
better than the alternative features. A better interpolation might improve the performance
5.6. EXPERIMENTS 73
of the DT-CWT method but could also provoke the criticism that the performance gain is
caused merely by the additional smoothing rather than the choice of wavelet transform.
We use 4 levels of decomposition of the biorthogonal (6,8) filters in the DWT and
NDWT [30]. The lowpass filter has 17 taps, and the highpass filter has 11 taps. Randen
and Husøy compared other wavelet types but found that the main difference was between
decimated and nondecimated wavelets rather than the filters used.
5.6 Experiments
The classification was tested on the same twelve test images and sets of training data as
used in the original comparison [101]. Figure 5.1 shows the different mosaics. We tested
features generated from the DWT, NDWT, and DT-CWT. The error in an image is defined
as the proportion of incorrectly classified pixels. The error therefore varies between 0 for a
perfect classification and 1 for a completely wrong classification. For a C class experiment,
random classification would get 1 in C pixels correct and would have an expected error of
1 − 1/C.
Table 5.2 contains the results of using the different features for the different mosaics.
These results are plotted in figure 5.3. The figure contains 4 bar chart plots comparing
the different feature sets. Each plot is dedicated to a mosaic with a particular number of
textures. Within each plot there is one cluster of bars for each of the mosaics. In each
cluster of bars the left bar shows the error for the DWT features, the centre bar shows the
error for the NDWT features, and the right bar shows the error for the DT-CWT features.
All errors are plotted as percentages.
Inspecting the results in figure 5.3 reveals that for almost all experiments the DT-CWT
does better than the NDWT, and the NDWT does better than the DWT.
In the published comparison there was no clear winner, different texture features per-
formed best on different textures. The classification errors for every mosaic and every
feature set were published and we summarise this information in two ways.
The first measure we extract is the average performance for each feature set averaged
over all mosaics. This measure is called the mean error rate. The problem with this
approach is that the average may be dominated by the performance on the mosaics with
a large number of classes (as these will have the largest errors).
The second measure is designed to be fairer but is slightly more complicated. For each
74 CHAPTER 5. TEXTURE SEGMENTATION
j k l
a b c
d e
f g
h i
Mosaic DWT error *100% NDWT error *100% DT-CWT error *100%
a 12.3 11.5 10.9
b 28.5 31 21.8
c 28.9 26.6 16.2
d 25.3 22 16.6
e 24.1 20.4 17.3
f 47.7 39 33.8
g 50.7 44.3 40.4
h 43.2 38.8 19.3
i 35.6 30.9 28.6
j 12.4 12.1 0.6
k 1.7 0.9 1.1
l 10.9 9.2 9.3
Figure 5.2: Comparison of segmentation results for different transforms
image we rank the different methods according to their performance (with a rank of 1 given
to the best), and then we average these ranks over all 12 mosaics. In addition to the three
new methods described above, the following methods from the published comparison are
used in the ranking:
1. Laws filters
2. Ring/wedge filters
5. DCT
9. Co-occurrence features
76 CHAPTER 5. TEXTURE SEGMENTATION
20 20
0 0
j k l a b c d e
Ten textures Sixteen textures
40 40
20 20
0 0
h i f g
Figure 5.3: Percentage errors for (DWT,NDWT,DT-CWT)
5.7. DISCUSSION OF RELATIVE PERFORMANCE 77
11. Eigenfilter
We have omitted some of the badly performing methods and have taken just the best of
families of methods (such as all the different choices of wavelet transform). This gives a
total of 17 methods compared in the ranking. All the published results make use of the
LVQ training algorithm.
Table 5.4 tabulates the two measures of performance1 . The results in bold are original
while the others are taken from the published study [101]. Table 5.4 shows that the
NDWT features with simple training give a mean error of 23.9% while the non-decimated
QMF filters give a mean error of 20.8%. The biorthogonal filters we use in the NDWT
are similar to the quadrature mirror filters used in the comparison and therefore it seems
that the much simpler training method results in only a small decrease in performance.
Nevertheless, the DT-CWT features with an average error of 18% outperform all the other
methods despite the simpler training. The next best features are the non-decimated QMF
filters while the worst results are given by the neural network classifier.
at each scale rather than 3 and the DT-CWT is able to distinguish between features near
45◦ from those near −45◦ . It is certainly plausible that the extra features from these extra
subbands should allow better classification.
The second reason relates to the smoothing step. The NDWT highpass subbands will
contain slowly oscillating values. Rectification will convert these to a series of bumps which
are finally smoothed. For coarse scales it is possible that the lowpass filter does not have a
narrow enough bandwidth to fully smooth these bumps and so some residual rectification
noise may remain. In contrast the magnitude of the DT-CWT coefficients is expected to
be fairly steady and we would expect much less rectification noise.
In 1D it is quite easy to see the effect of the aliasing and rectification problems. Consider
the sine wave shown in figure 5.5. We have chosen its frequency so that most of its energy is
0.8
0.6
0.4
0.2
−0.2
−0.4
−0.6
−0.8
−1
80 100 120 140 160 180
contained in the scale 4 highpass subband. We compute the scale 4 highpass coefficients for
both the nondecimated real wavelet transform and a nondecimated version of the complex
wavelet transform. These coefficients are shown in figure 5.6 (the imaginary part of the
complex wavelet coefficients is plotted with a dashed line). Figure 5.7 shows the rectified
values (before smoothing) that are calculated by squaring the transform coefficients. The
rectified real wavelet values show a strong oscillation of 100% of the average value while
the rectified complex wavelet values have only a small variation of about 2.5%.
The very low variation of the complex wavelet coefficients is no accident. It occurs
80 CHAPTER 5. TEXTURE SEGMENTATION
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 −0.6
−0.8 −0.8
−1 −1
80 100 120 140 160 180 80 100 120 140 160 180
0.6 0.6
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
80 100 120 140 160 180 80 100 120 140 160 180
because the complex wavelets have been designed to differentiate between positive and
negative frequencies. A sine wave can be represented as the combination of two complex
exponentials, one representing a positive frequency component, and one representing the
negative frequency component:
exp {jωt} + exp {−jωt}
cos(ωt) = (5.8)
2
Standard filter theory says that the output y(t) of a linear filter applied to this signal will
be
A B
y(t) = exp {jωt} + exp {−jωt} (5.9)
2 2
where A is the response of the filter to frequency ω and B is the response for −ω. If the
linear filter had zero response for negative frequencies then (assuming ω > 0) the output
would be simply
A
y(t) = exp {jωt} (5.10)
2
and hence the rectified signal would be constant and equal to
|A|2
|y(t)|2 = . (5.11)
4
The low variation for the DT-CWT means we can afford to decimate the output. Figure
5.8 plots every 16th sample from the nondecimated outputs. These plots correspond to the
rectified outputs for the decimated transforms (i.e. the DWT and the DT-CWT). There
is a huge variation in the DWT rectified outputs while the DT-CWT outputs are almost
√
constant. For σs = 8 the smoothing filter has a half peak width of σs 2 2 log 2 ≈ 19. This
should be about sufficient to remove the variation for the NDWT but is clearly insufficient
for the DWT. These graphs have been plotted for scale 4 coefficients. At finer scales the
coefficients will oscillate faster and we would therefore expect less rectification noise.
We have advanced two effects (directionality and rectification noise) to explain the
relative performance. It is natural to ask about the relative significance of these effects. To
answer this question we performed two further experiments both using a cut down version
of the DT-CWT:
HalfCWT In the first experiment we halved the size of the feature vector by combining the
energy in pairs of subbands. The 15◦ , 45◦ , and 75◦ subbands were paired respectively
82 CHAPTER 5. TEXTURE SEGMENTATION
0.6 0.6
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
80 100 120 140 160 180 80 100 120 140 160 180
with the −15◦ , −45◦ , and −75◦ subbands. More precisely, equation 5.3 was altered
to
where a and b are the two subbands that are combined to give feature s. This reduced
the transform to only distinguishing 3 directions, like real wavelet transforms.
RealCWT In the second experiment we set the imaginary part of all wavelet coefficients
to zero before rectification. This should introduce rectification noise to the features.
Note that these two modifications are intended to be harmful to the performance of the
method and such transforms should never be used for a real application. The results for
these new experiments are in table 5.9 and shown in figure 5.10 (compared to the original
DT-CWT results).
We conclude that rectification noise is not too significant because the results for the
RealCWT are similar to those for the DT-CWT. However, the results for the HalfCWT
are significantly worse, demonstrating that the main reason for the improved DT-CWT
performance is its improved directional filtering.
5.8. DISCUSSION OF DT-CWT PERFORMANCE 83
1. Near the border the smoothing filter will be averaging rectified coefficients from both
sides of the border to produce some intermediate value.
2. Near the border the impulse response for the coarser wavelets will straddle both sides
and hence be unreliable partly because the value will average the response from both
textures and partly because there will often be discontinuities at the border giving
extra energy to the highpass coefficients.
Notice also that there are often fairly small groups of pixels assigned to some class. These
two defects in the classification are closely related to the size of the smoothing filter and
place contradictory requirements on its size. In order to resolve the position of the bound-
84 CHAPTER 5. TEXTURE SEGMENTATION
20 20
0 0
j k l a b c d e
Ten textures Sixteen textures
40 40
20 20
0 0
h i f g
Figure 5.10: Percentage errors for (HalfCWT,RealCWT,DT-CWT)
5.8. DISCUSSION OF DT-CWT PERFORMANCE 85
Figure 5.11: Segmentation results for mosaic “f” using the DT-CWT
aries accurately the smoothing filter should be small, but in order to accurately determine
the class the smoothing filter should be large to give reliable feature estimates.
This is a well-known problem in image segmentation [127]. There are several methods
that address the issue. The basic concept is to use additional information about the nature
of segments. For example, we may not expect to see very small separate segments, or we
may know that the segments should have smooth boundaries. Different methods make
use of different types of information. Active contour models [60] are useful for encoding
information about the smoothness of boundaries while multiscale methods [128] are useful
for describing expectations about the spatial extent of segments. Methods also differ in
whether the information is explicitly contained in a Bayesian image model (such as Markov
Random Field approaches [9]) or just implicitly used [128].
1
4 a∈{0,1} b∈{0,1} qs,k (2x + a, 2y + b, l − 1) l > k
Suppose the segmentation algorithm is operating at scale L. The corresponding feature set
for position x, y is denoted f (L) (x, y). It is useful to index this scale L feature set f (L) (x, y)
with indices s ∈ {1, 2, 3, 4, 5, 6} (for subband) and k ∈ {1, 2, . . . , L} (for feature scale).
The features are defined from the quadtrees by:
(L)
fs,k (x, y) = (L + 1 − k) log (qs,k (x, y, L)) (5.13)
5.9. MULTISCALE SEGMENTATION 87
Notice the scaling factor L + 1 − k. The values in the quad-tree can be considered to be
local estimates of the average energy in the wavelet subbands. Naturally, we would expect
an estimate formed by averaging many numbers to be more accurate. The scaling factor
provides a simple way of favouring the more reliable estimates. Alternative scaling factors
may well give better results but section 5.9.3 explains why we do not try and optimise
these factors.
For each class c ∈ {1, 2, . . . . , C} the features are calculated for the corresponding
(L)
training image and used to calculate feature means µc,s,k
M/2k −1 N/2k −1
(L) 22k (L)
µc,s,k = fs,k (x, y) (5.14)
MN x=0 y=0
1. For x ∈ {0, . . . , M/2L − 1}, y ∈ {0, . . . , N/2L − 1}, c ∈ {1, . . . , C} calculate the class
(L)
distances dc (x, y):
1 (L) 2
6 L
(L)
dc(L) (x, y) = fs,k (x, y) − µc,s,k (5.15)
6L s=1 k=1
(L)
All that remains is to define bc (x, y). This represents the information (from higher scales
and notions of continuity of regions) about the probability that the scale L block at x, y
(4)
belongs to class c. For classification at the coarsest scale bc (x, y) = 0. At more detailed
(L)
scales a reasonable first approximation is ac (x, y) defined to be 1 if the corresponding
parent block at scale L + 1 belongs to class c or 0 otherwise.
1 r (L+1) (x/2 , y/2) = c
ac(L) (x, y) = (5.17)
0 r (L+1) (x/2 , y/2) = c
88 CHAPTER 5. TEXTURE SEGMENTATION
Near the boundaries we should be less confident in the class assignment and we soften the
function to reflect this uncertainty. The softening is done by smoothing with a Gaussian
filter with smoothing parameter λ = 3.5.
K
K
− (u2 + v 2 )
bc(L) (x, y) =α exp ac(L) (x − u, y − v) (5.18)
u=−K v=−K
2λ2
where α is a parameter that controls the amount of information incorporated from previous
scales. For our experiments we used α = 1/4.
The difference in performance of the method can be clearly seen in the results for mosaic
“f” in figure 5.14. There are many fewer small segments and the boundary errors are
greatly reduced.
5.10 Conclusions
The experimental results clearly show that the NDWT features are better than the DWT
features, and that the DT-CWT features are better than the NDWT features. For the
pixel by pixel classification experiments the average error was 26.8% for DWT features,
23.9% for NDWT features, and 18.0% for the DT-CWT features. The main reason for the
DT-CWT outperforming the NDWT features is the increased number of subbands that
allow more accurate orientation discrimination.
A comparison with published results [101] reveals that the simpler training scheme gives
almost as good results as LVQ training and the DT-CWT features performed better than
any of the feature sets tested in the published study, despite the simpler training.
Tests on a multiscale algorithm indicated that the superior performance of the DT-
CWT features is preserved even for more sophisticated classification methods. For the test
mosaics used the multiscale classification reduced the average error to 9.4%.
90 CHAPTER 5. TEXTURE SEGMENTATION
20 20
0 0
j k l a b c d e
Ten textures Sixteen textures
40 40
20 20
0 0
h i f g
Figure 5.13: Percentage errors for single scale DT-CWT, multiscale DT-CWT, multiscale
DWT.
5.10. CONCLUSIONS 91
Figure 5.14: Segmentation results for mosaic “f” using the multiscale DT-CWT
92 CHAPTER 5. TEXTURE SEGMENTATION
Chapter 6
Correlation modelling
6.1 Summary
The purpose of this chapter is to give an example of the use of the phase of the complex
coefficients. We described in chapter 4 a synthesis technique that generated textures with
matching subband energies. This method works well for many stochastic textures but fails
when there is more structure in the image such as lines or repeated patterns.
Simoncelli has demonstrated good performance with a similar synthesis technique when
more parameters are extracted from an image than merely the energy [108]. Simoncelli
used over 1000 parameters to describe his textures. The main parameters came from the
auto-correlations of the wavelet coefficients and the cross-correlations of the magnitudes
of subbands at different orientations and scales. We compare the relative effect of these
different parameters for the DT-CWT. The auto-correlation allows better texture synthesis
and experiments indicate that sometimes auto-correlation based features can also give
improved segmentation performance.
The original contributions of this chapter are the experimental synthesis and segmen-
tation results. The method described is substantially based on a previous algorithm [108]
and is not claimed as original.
93
94 CHAPTER 6. CORRELATION MODELLING
and image space. We start by measuring the parameters of a target image and generating
a random (white noise) image of the correct size.
Simoncelli measured the following image pixels’ statistics; mean, variance, skewness,
kurtosis, minimum and maximum values [108]. These 6 values capture the general shape
of the histogram and we would expect them to give results very similar to using the full
histogram. However, to avoid mixing changes caused by matching correlation with changes
caused by a new set of image statistics we choose, as in chapter 4, to simply measure and
match the image histogram. Simoncelli based his synthesis upon the oriented complex
filters of the steerable pyramid described in section 2.4.3. We use instead the DT-CWT.
The DT-CWT subbands contain complex coefficients. We denote wk (x, y) the subband
k wavelet coefficient1 at position x, y where x and y are integers. To make the equations
simpler it is also convenient to define wk (x, y) = 0 for any positions that lie outside the
subband. We have tested two method based on auto-correlation based statistics.
Raw Auto-correlation The method generates the statistics rk (δx, δy) for subband k
directly from the complex valued auto-correlation of the subband.
rk (δx, δy) = wk (x, y)∗wk (x + δx, y + δy)
x y
Magnitude Auto-correlation The second method reduces the size of the parameter set
by calculating real valued statistics rk (δx, δy) based on the auto-correlation of the
magnitude of the complex wavelet coefficients.
rk (δx, δy) = |wk (x, y)||wk (x + δx, y + δy)|
x y
In both cases we match the appropriate statistics in essentially the same way. We first
describe the raw auto-correlation matching method.
We solve for an appropriate filter to apply to the subbands that will change the auto-
correlation by roughly the required amount. Let H(ω) be the spectrum of the filter.
The spectrum is a function of both horizontal (ωx ) and vertical (ωy ) frequency. We use
ω = (ωx , ωy ) as shorthand for these two variables. Let Pim (ω) and Pref (ω) be the Fourier
1
In this section we use the more compact notation of a single number k to index subbands at different
scales and orientations. For example, k ∈ {1, 2, 3, 4, 5, 6} indexes the 6 orientated subbands at scale 1,
while k ∈ {7, 8, 9, 10, 11, 12} indexes the subbands at scale 2.
6.2. AUTO-CORRELATION METHOD 95
We require this output spectrum to be close to the reference spectrum and so the natural
filter to use is given by:
|Pref (ω)|
H(ω) = (6.2)
|Pim (ω)| + δ
The definition of the power spectrum ensures that Pim (ω) and Pref (ω) are always real. To
avoid divisions by small numbers we increase the denominator by a small amount δ (in the
experiments we use δ = 0.01Pim(0)).
We only have the central samples of the auto-correlations and so we estimate the power
spectra by zero-padding the auto-correlation matrices to twice their size before taking
Fourier transforms. After using equation 6.2 to produce the filter spectrum we use an
inverse Fourier transform to produce the actual filter coefficients. Note that as we only
retain a few auto-correlation coefficients the Fourier transforms involved are small and
consequently fast. We then convolve the subband with the filter (this is actually done in
the Fourier domain by multiplication) in order to produce a new subband with, hopefully,
a better matched auto-correlation. Although we have not proved that this will always
improve the match, in practice we found that this scheme converged within a few iterations.
For the magnitude auto-correlation method we first compute the magnitude and phase
of each coefficient in the subband. Then the above matching method is applied to a
subband consisting of just the magnitudes. Finally the new magnitudes are recombined
with the original phases to produce the new complex subband.
Throughout this chapter we will always use a 5 scale DT-CWT decomposition. This
results in 5 ∗ 6 = 30 complex subbands plus a real lowpass subband of scaling coefficients.
We only impose correlations on the complex subbands: the scaling coefficients are not
changed during the matching of transform statistics. For counting purposes we will treat
the real and imaginary parts as separate parameters. The form of the auto-correlation is
such that r(x, y) = r(−x, −y)∗ and so for an auto-correlation of size K by K (for odd K)
96 CHAPTER 6. CORRELATION MODELLING
there are only (K 2 + 1)/2 independent complex numbers. Moreover, the central sample
r(0, 0) is always real. We conclude that we need to record K 2 numbers to record the
raw auto-correlation for a single subband, and hence we have a total of 30K 2 parameters
describing the transform statistics. For the magnitude auto-correlation this is reduced
to 15(K 2 + 1). For comparison, the energy synthesis method of chapter 4 needs only 30
parameters to describe a texture.
texture and, although the general diagonal orientation of the texture is reproduced, the
strong correlation is lost.
We first test the raw auto-correlation method. Recording and matching merely the
central 3 by 3 samples of the autocorrelation matrix results in the improved results shown
in figure 6.2. The diagonal lines are longer and the image is more tightly constrained to
one orientation. The improvement is even greater if we use the central 5 by 5 samples
as shown in figure 6.3 where the synthetic texture appears very similar in texture to the
original.
Next we test the magnitude auto-correlation method. Figure 6.4 shows the results of
using the central 5 by 5 samples of the magnitude auto-correlation (there is no noticeable
difference if we just match a 3 by 3 auto-correlation). These results are just as bad as the
6.3. AUTO-CORRELATION RESULTS 97
original energy synthesis. We have shown the results after 3 iterations as these methods
were found to converge very quickly. More iterations produced negligible changes to the
synthesized images.
6.4 Discussion
The raw auto-correlation matching gives a significant improvement and so is managing to
capture the correlation in the image, while magnitude matching fails to help. This means
that significant information is contained in the phases of the wavelet coefficients. We
described in chapter 3 how complex wavelets can be used for motion estimation because
the change in phase of a wavelet coefficient between frames is roughly proportional to the
shift of an underlying image. In a similar way, if a subimage is responding to lines in the
image then the phases of the auto-correlation coefficients encode the relative positions of
the line segments. Therefore when we match the raw auto-correlation we are ensuring that
the line segments will be correctly aligned.
There are some textures for which the auto-correlation does not work as well such
as the hessian pattern in figure 6.5. The original texture contains alternating stripes of
strongly orientated material and although the synthetic texture does contain some patches
of strongly orientated texture, it also contains several places where there seems to be a
more checkerboard appearance. This is because at these places there is energy both at an
orientation of 45◦ and of −45◦ . We added measures of cross-correlation between subbands
in an attempt to solve this problem as described in the following sections.
6.5. CROSS-CORRELATION METHOD 99
It may seem odd that we use the magnitudes when we have discovered the importance
of phase for auto-correlation matching. Unfortunately, there is not any significant raw
correlation between subbands. The problem is that the phase of wavelet coefficients gives
information about the location of features in a particular direction. Suppose that there is
a particular pattern that is repeated many times in a certain texture and suppose we break
the original image up into lots of smaller subimages containing examples of this pattern.
There is no reason for the pattern to have any particular alignment within the subimages
and we can interpret the subimages as being a single prototype image distorted by different
translations. The phase of coefficients in the 45◦ subband, say, will rapidly change if the
image is translated at an angle of −45◦ , while the phase of the coefficients in the −45◦
subband will be much less affected by such a translation [74]. The translations therefore
alter the phase relationship between subbands and hence when the cross-correlation is
averaged across the entire texture the individual correlations will tend to cancel out. This
was not a problem for auto-correlation as the coefficients within a single band all respond
in the same way to a translation and hence the relative phase contains useful information.
The between scales cross-correlation measures the correlation between a subband at one
scale and the subbands at the next coarser scale. We define bl,j,k (a, b) to be the correlation
100 CHAPTER 6. CORRELATION MODELLING
where a and b take values 0 or 1. Due to the down sampling in the tree structure each
position at scale l + 1 is effectively the parent of 4 positions at scale l. We use a and b
to measure a separate correlation for each of these 4 choices. Naturally, we do not use a
between scales correlation for the coarsest scale subbands as these wavelet coefficients have
no parents. Again we use a measure of magnitude correlations as the raw phases will tend
to cancel out2
We need 6 ∗ 5/2 = 15 parameters to describe the cross correlations at a single scale,
and 6 ∗ 6 ∗ 4 = 144 parameters to describe the cross correlations between subbands at
one scale and the next coarser scale. For the 5 scale decomposition this gives a total of
15∗5+144∗4 = 651 parameters to describe cross correlations in addition to the parameters
used to describe the image statistics and auto-correlations.
The matching procedure first matches the raw auto-correlation values in the way de-
scribed earlier and then attempts to match the cross-correlations. The details of the
cross-correlation matching method can be found in Simoncelli’s paper [108].
Energy The subband energy matching method from chapter 4 using 30 parameters to
describe the wavelet statistics.
Raw auto-correlation The 7 by 7 raw auto-correlation matching method from the start
of this chapter using 30 ∗ 7 ∗ 7 = 1470 parameters to describe the wavelet statistics.
2
A way has been proposed to avoid the cancellation when computing the cross-correlation between two
subbands at different scales but the same orientation. The phases at the coarser scale will change at half
the rate of the finer scale and so to make the comparison meaningful the coarser scale coefficients must
have their phase doubled. The experiments presented here do not make use of this modification but details
can be found elsewhere [96].
6.6. CROSS-CORRELATION RESULTS AND DISCUSSION 101
Figure 6.6 displays the results of the different methods applied to 4 test images. In-
cluding the cross-correlation statistics leaves the first three textures essentially unaltered.
The last hessian texture may be considered to be slightly improved but the improvement is
certainly not very large. On all of these textures the auto-correlation method gives a clear
improvement compared to the original energy synthesis method but it has a significant
increase in the size of the parameter set. There are several penalties associated with the
increased feature set size. The most obvious drawbacks are that the storage and com-
putation requirements are increased, but there is also a possible decrease in performance.
For texture synthesis it is reasonable to expect an increase in quality for each new fea-
ture matched, but synthesis itself is only of secondary interest. The main interest is in
102 CHAPTER 6. CORRELATION MODELLING
using the features for texture analysis, and for analysis applications extra features can be
a disadvantage. The principal problems with extra features are that:
1. large textural regions are needed to reliably estimate the feature values,
2. the features may have significant correlations – this causes problems if we want to
use simple metrics to compare feature sets,
The next section examines the performance of a larger feature set for the segmentation
task.
1. Filter the subband Wk (u, v) horizontally with the filter 1 + z −1 to produce Lk (u, v).
2. Filter the subband Wk (u, v) horizontally with the filter 1 − z −1 to produce Hk (u, v).
3. Filter the subband Lk (u, v) vertically with the filter 1 + z −1 to produce Ak (u, v).
4. Filter the subband Lk (u, v) vertically with the filter 1 − z −1 to produce Bk (u, v).
5. Filter the subband Hk (u, v) vertically with the filter 1 + z −1 to produce Ck (u, v).
6. Filter the subband Hk (u, v) vertically with the filter 1 − z −1 to produce Dk (u, v).
6.7. LARGE FEATURE SET SEGMENTATION 103
All the filtering operations are nondecimated and use symmetric edge extension. Edge
extension is important when filters overlap the edge of an image. For the very short filters
used here we merely need to repeat the last row (or column) of the image. The features are
then calculated as before but based on Ak , Bk , Ck , Dk rather than on the original subbands.
This leads to four times as many features.
The new subbands approximately quarter the frequency response of the original sub-
band. Figure 6.7 shows contours of the frequency responses for the four subbands derived
from the original 45◦ subband at scale 2.
0.5 0.5
0.4 0.4
Vertical Frequency
Vertical Frequency
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0 0.1 0.2 0.3 0.4
Horizontal Frequency Horizontal Frequency
0.5 0.5
0.4 0.4
Vertical Frequency
Vertical Frequency
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0 0.1 0.2 0.3 0.4
Horizontal Frequency Horizontal Frequency
Figure 6.7: 2-D frequency responses for the four subbands derived from the level 2 45◦
subband. Contours are plotted at 90%, 75%, 50%, 25% of the peak amplitude. A dashed
contour at the 25% peak level for the original 45◦ scale 2 subband is also shown in each
plot.
noise samples. The output samples {yk } will contain coloured noise. In other words, the
filtering introduces correlations between the samples. More precisely, as yk = xk + axk−1
and yk+1 = xk+1 + axk we can calculate the following expected correlations:
E {yk yk } = E x2k + 2aE {xk xk−1 } + a2 E x2k−1
= 1 + a2
E {yk yk+1 } = E {xk xk+1 } + aE x2k + aE {xk−1 xk+1 } + a2 E {xk−1 xk }
= a
This means that the average auto-correlation for lag ±1 is a, the average auto-correlation
for lag 0 is 1 + a2 and it can easily be shown that the auto-correlation for any other lag is
0.
Now consider the expected energy after using the Haar filters. The output {fk } of using
the 1 + z −1 filter is equivalent to filtering the original white noise with a combined filter of
(1 + z −1 )H(z) = 1 + (1 + a)z −1 + az −2
The sum of these two energies is 4 times the average auto-correlation at lag 0, while the
difference is 4 times the average auto-correlation at lag 1. This illustrates the close link
between the extra filtering and auto-correlation and suggests why the filtering provides an
appropriate measure of local auto-correlation statistics.
Table 6.8 presents the results of using the enlarged feature set for the pixel by pixel
segmentation experiment described in section 5.6. Also tabulated are the results for the
DT-CWT repeated from table 5.2. The average of the errors for the extended feature
set is 17.7% compared to 18.0% for the DT-CWT. The extended feature set is better for 9
out of the 12 test mosaics but 5.5% worse for mosaic a. This agrees with the argument in
the previous section that although extra features can sometimes provide improvements in
segmentation, this gain is not automatic and great care must be taken in choosing features.
6.8. CONCLUSIONS 105
6.8 Conclusions
The extra features generated by measuring the autocorrelation of the subbands are useful
for modelling longer-range correlations and allow good synthesis of strongly directional
textures. The phase is an important part of the correlation because matching features based
solely on the magnitude autocorrelation gave inferior results. Matching cross-correlation
only slightly changed the results. These conclusions are all based on the subjective quality
of synthesized textures. Numerical experiments using an extended feature set confirmed
that auto-correlation related features can sometimes increase segmentation performance
but that they can also decrease performance in other cases.
106 CHAPTER 6. CORRELATION MODELLING
Chapter 7
7.1 Introduction
The previous chapters have been concerned with non-Bayesian image processing techniques.
The general approach has been to design what we hope to be an appropriate algorithm for
addressing a particular problem and then examine the experimental results. The remaining
chapters have a very different flavour.
We will now approach image processing from a Bayesian perspective. The aim of this
dissertation is to explore the use of complex wavelets in image processing. The previous
chapters have illustrated their use within certain non-Bayesian methods and now we wish
to explore the use within Bayesian processing. Note that we are not directly aiming to
compare Bayesian and non-Bayesian methodologies. Both approaches are commonly used
and both approaches have different advantages. The specific motivation for using the
Bayesian methodology to address the problems in the following chapters is to provide a
mathematical framework within which we can place and compare techniques.
The purpose of this chapter is to introduce a complex wavelet model and compare
this with alternative model formulations and alternative wavelet choices. The concepts of
probability distributions and Bayes’ theorem are briefly stated and then used to construct
a common framework for a range of different texture models. We consider a number of
different ways in which we can define a prior distribution for images and reexpress each
model in terms of a multivariate Gaussian. Within this context the choice of wavelet
107
108 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
Cumulative Distribution Function (cdf) The cdf for a random variable X is a func-
tion FX : R → R , defined by
FX (x) = P (X ≤ x).
Probability Density Function (pdf) The pdf for a random variable X is a function
fX : R → R , defined by
∂FX (x)
fX (x) =
∂x
where FX (x) is the cdf for the random variable.
FX,Y (x, y) = P (X ≤ x, Y ≤ y)
∂ 2 FX,Y (x, y)
fX,Y (x, y) =
∂x∂y
∂P (X ≤ x|Y = y)
fX|Y (x|y) =
∂x
7.3. BAYESIAN IMAGE MODELLING 109
Prior The prior distribution is the name for f (x). This represents the information we
have about the model parameters before observing the image data. For example, a
simple prior for an image might be that all pixels have intensity values independently
and uniformly distributed between 0 and 1.
Posterior The posterior distribution is the name for f (x|y). This represents all the in-
formation we have about the model parameters after observing the image data.
Likelihood The likelihood is the name for f (y|x). This represents our knowledge about
the model. Generating a sample from f (y|x) is equivalent to using our model to
generate some typical noisy image data based on some particular values of the pa-
rameters x.
such vectors. We shall make extensive use of the multivariate Gaussian distribution (also
known as a multivariate Normal distribution). We use the notation Z s N (µ, B) to
denote that the random variables contained in Z are drawn from a multivariate Gaussian
distribution with mean µ and covariance matrix B. The multivariate Gaussian is defined
to have the following pdf for Z s N (µ, B)
1 1
p(Z = z) = exp − (z − µ)T B −1 (z − µ) (7.2)
(2π)N/2 |B|1/2 2
where N is the length of the vector Z and |B| is the determinant of B. One useful standard
result is that if Z s N (µ, B) and Y = AZ where A is a real matrix with N columns and
S ≤ N rows then Y s N Aµ, ABAT .
Images generated with a multivariate Gaussian distribution are also known as realisa-
tions from a discrete1 Gaussian random process. We are particularly interested in wide
sense stationary processes. Let N be the number of locations within the image. Let xa ∈ R 2
be the position of the ath pixel. A process is defined to be stationary in the wide sense if
1. the expectation is independent of position: there exists a c ∈ R such that for all
a ∈ {1, . . . , N}
E {Za } = c
2. the correlation of two random variables Za and Zb is a function only of their relative
position: there exists a function R : R 2 → R such that for all a, b
E {Za Zb } = R(xa − xb ).
The first condition means that µa = E {Za } = c and for simplicity we shall assume that
the data has been shifted to ensure c = 0. The second condition means that the covariance
matrix B has a specific structure:
The covariance function of the random process is defined to be E {(Za − E {Za })(Zb − E {Zb })}
and is equal to R(xa − xb ) because E {Za } = E {Zb } = c = 0.
There are two styles of distribution specification that are often encountered. Sometimes
a formula for the pdf is explicitly stated, we shall call this the direct specification. In other
cases a method for generating samples from the prior is given, we call this a generative
specification.
We now consider a number of standard prior models and convert each case to the
equivalent multivariate Gaussian form for the distribution.
Many models are special cases of this system including, for example, the ARMA (autore-
gressive moving average) model. The signals produced by such a system are examples of
wide sense stationary discrete Gaussian random processes. This relationship is well known
[116] and we highlight a couple of standard results (assuming that the filter is stationary,
i.e. that the same filter is used across the entire image):
1. The i, j entry in the covariance matrix is equal to the covariance function of the
random process evaluated for the difference in position between pixel i and pixel j.
2. The covariance function of the random process is equal to the autocorrelation function
of the filter impulse response.
on the frequency according to some known law, then inverting the Fourier transform, and
finally taking the real part of the output to generate a sample image.
We define a matrix F to represent the Fourier transform:
1 xTa xb
Fa,b = √ exp −2πj √
M M
√ √
where we assume that the images are square of dimensions M by M . This definition
of the Fourier transform has the following properties:
F H F = IM
2. The energy of the Fourier coefficients is equal to the energy in the image. This is
known as Parseval’s theorem:
a
2 = aH a = aH F H F a =
F a
2
Let D be the (real) diagonal matrix that scales white noise of variance 1 to give white
noise in the Fourier components of the desired variances. The images generated by the
Fourier model can be written as
F H D (RR + jRI ) where RR and RI are distributed
as:
RR s N (0, IM )
RI s N (0, IM )
Denote the real part of F by FR , and the imaginary part by FI . The images can be
expressed as
Z =
F H D (RR + jRI )
=
FRT − jFIT D (RR + jRI )
= FRT DRR + FIT DRI
R
R
= FRT D FIT D
RI
where ei is the column vector containing all zeros except for a one in the ith place. (We
also assume that D is a real matrix.) This equation represents the following process:
This process represents a simple blurring operation and we conclude that the covariance
function of the generated random process is given by such a blurred impulse.
The covariance matrix C = (W T D 2 W )−1 has a strange form. One way to understand the
covariance is via the equation
W T D 2 W C = W T D 2 W (W T D 2 W )−1 = IN
114 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
This means that the ith column of C is transformed by a wavelet sharpening process
W T D 2 W to become ei .
For a balanced wavelet the wavelet sharpening algorithm consists of the following steps:
If we assume that the same weighting is applied to all the coefficients in a particular sub-
band then (for a shift invariant transform) the prior will correspond to a stationary discrete
Gaussian random process with some covariance function. The mathematics translates to
saying that the shape of this covariance function is given by the inverse of the sharpening
algorithm applied to an impulse. In other words, the covariance function is such that if we
apply a wavelet sharpening process we produce an impulse.
If we are using an orthogonal wavelet transform (i.e. a non-redundant balanced trans-
form) then the inverse of a wavelet sharpening process will give the same results as a wavelet
smoothing process, but this is not necessarily true for a redundant balanced wavelet trans-
form.
For non-balanced wavelets W T is not the same as the reconstruction transform P .
However, there is a natural interpretation for W T in terms of the filter tree used to compute
wavelets. Recall that for a standard wavelet transform H0 (z) and H1 (z) define the analysis
filters while G0 (z) and G1 (z) define the reconstruction filters. We define a new set of
reconstruction filters G0 (z) = H0∗ (z −1 ), G1 (z) = H1∗ (z −1 ) where the conjugation operation
in these equations is applied only to the coefficients of z, but not to z itself. In other
words, we use reconstruction filters given by the conjugate time reverse of the analysis
filters. These may no longer correspond to a perfect reconstruction system but if we
nevertheless use the reconstruction filter tree with these new filters then we effectively
perform a multiplication by W T .
inverting the wavelet transform. This is the most important model for our purposes as it
is the model that will be used in the next chapter.
We will assume that the same weighting is used for all the coefficients in a particular
subband and that the choice of wavelet transform is such that the sample images are
implicitly drawn from a stationary prior; this second assumption is discussed in section
7.4.2.
The images are generated by Z = P DR and the prior distribution will be given by
Z s N 0, P D 2P T .
The assumption that this prior is stationary means that the prior is a stationary discrete
Gaussian random process. For a balanced wavelet W = P T and, just as for the Fourier
method, the covariance function of this process is given by a smoothing procedure applied
to an impulse:
An alternative view of this method for a S subband wavelet transform is to consider the
images as being the sum of the S reconstructions, one from each subband. Each subband
has a common scaling applied to the wavelet coefficients and so can be viewed as a special
case of the filtering method with the filter being the corresponding reconstruction wavelet.
The covariance function for images generated from noise in a single subband is therefore
given by the autocovariance of this wavelet.
Lemma 1 in Appendix B shows that the autocovariance function for a sum of two
independent images is given by the sum of the individual covariance functions. Conse-
quently, the covariance of the sum of the reconstructions will be the sum of the individual
covariances because the scales all have independent noise sources.
Shift invariance the wavelet generative model is only appropriate for transforms with
low shift dependence.
Flexibility in prior model The covariance structure of the prior model is determined
partly by the choice of scaling factors and partly by the choice of wavelet. We
should choose a wavelet that allows us to generate the covariance structure of a given
application.
Further discussion more tightly linked to the nature of the application can be found in
section 8.7.
Section 7.4.1 proposes five possibilities for the choice and the following two sections
estimate the importance of the factors for each of these choices.
1. A real fully decimated wavelet transform (DWT) based on the Daubechies filters of
order 8.
The GPT is one of the oldest wavelet-like transforms. Adelson et al. [1] suggested using
either the Gaussian or Laplacian pyramid to analyse images. The analysis filters for the
Laplacian pyramid are (short FIR approximations to) the differences between Gaussians
of different widths. The analysis filters for the Gaussian pyramid are Gaussians. To
reconstruct an image from a Laplacian pyramid we use Gaussian reconstruction filters.
7.4. CHOICE OF WAVELET 117
We will be using the pyramid to reconstruct surfaces and it can be implemented in the
same way as a normal dyadic wavelet transform by a succession of upsampling operations
and filtering operations. Figure 7.1 shows the sequence of operations involved in recon-
structing a surface from wavelet coefficients at 3 scales. Choosing G(z) to be a simple
Wavelet Coefficients
at scale 3
Wavelet Coefficients
at scale 2
Wavelet Coefficients
at scale 1
Output
Surface
gives a close approximation to Gaussian shape and provides good results for very little
computation.
The WWT (W-wavelet transform) [67] is a bi-orthogonal wavelet transform. The anal-
ysis lowpass filter is
1
H0 (z) = √ −z −1 + 3 + 3z − z 2
2 2
118 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
passband. This reduces the bandwidth to within the Nyquist limit and hence allows the
reduction of aliasing [63]. The GPT and WWT reduce aliasing by decreasing the band-
width of the lowpass reconstruction filters at the cost of increasing the bandwidth of the
lowpass analysis filters. As the generative specification only uses the reconstruction filters
the increased analysis bandwidth does not matter.
We demonstrate the effect of shift invariance with two experiments. The first gives a
qualitative feel for the effect by using a simple one dimensional example. The second gives
a quantitative estimate of the amount of variation in the two-dimensional case.
20 20
10 10
0 0
−10 −10
20 40 60 80 100 20 40 60 80 100
Dual tree complex wavelet transform Orthogonal real wavelet
20 20
10 10
0 0
−10 −10
20 40 60 80 100 20 40 60 80 100
Nondecimated real wavelet
20
10
−10
20 40 60 80 100
Figure 7.2: One dimensional approximation results for different origin positions. Crosses
show location and values of measured data points.
the associated covariance structures are different. The WWT and the GPT use lowpass
filters with a smaller bandwidth than is usually used for wavelets and therefore the results
are smoother. This is not an important difference because we could also make the DT-CWT
and NDWT results smoother by changing the scalings used.
z = P D2P T d
7.4. CHOICE OF WAVELET 121
where d represents the input image (0 everywhere apart from a single 1 in the centre of
the image).
The amount of smoothing is determined by the diagonal entries of the matrix D. Sup-
pose that we have a K level transform and that at level k all the scaling factors for the
different subbands are equal to σk . This will give approximately circular priors (the quality
of the approximation is demonstrated in the next section). Define diagonal matrices Ek
whose entries are (Ek )ii = 1 if the ith wavelet coefficient belongs to a subband at level k
and zero otherwise. This allows us to decompose D as
K
D= Ek σk (7.4)
k=1
z = P D2P T d
K
= σk2 P Ek P T d
k=1
Now define S(x, y) to be a matrix that performs a translation to the data of x pixels
horizontally and y pixels vertically. The inverse of this transform is S(x, y)T (assuming
periodic extension at the edges). By averaging over all translations we can compute a shift
invariant estimate that we call zave
K −1 2K −1
K 2
2K
zave = 1/2 σk2 S(x, y)T P Ek P T S(x, y)d
k=1 x=0 y=0
K
= σk2 zk
k=1
where zk is the average result of reconstructing the data from just the scale k coefficients.
K −1 2K −1
2
2K
zk = 1/2 S(x, y)T P Ek P T S(x, y)d.
x=0 y=0
For a particular translation of the data of x, y pixels we define the energy, E(x, y), of the
error between the wavelet smoothed image and the shift invariant estimate as
2
K
E(x, y) = σk S(x, y) P Ek P S(x, y)d − zave
2 T T
k=1
122 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
2
K
= σk2 S(x, y)T P Ek P T S(x, y)d − zk
k=1
K
2
≈ σk4 S(x, y)T P Ek P T S(x, y)d − zk
k=1
where in the last step we have assumed that the errors from each scale will be approximately
uncorrelated. If we define ek (x, y) to be be the error at scale k due to shift invariance,
we can write the energy Eave of the error averaged over all translations as
K −1 2K −1
K 2
Eave ≈ σk4 1/22K
ek (x, y)
2.
k=1 x=0 y=0
It may seem strange to have the fourth power of σk . This is a consequence of weighting
by σk2 during the smoothing step. The error energy depends on the parameters σk and will
tend to be dominated by the level k with the largest σk . Different applications will have
different priors. To give a quantitative estimate of the importance of shift dependence for
different priors we carry out the following procedure for K varying between 1 and 4:
The results of this experiment for the different transforms are shown in table 7.3. The
results are converted to signal to noise ratios given by −10 log10 (f ). The NDWT has a
SNR of ∞ because this transform has no down-sampling and is shift invariant. Similarly
the multiple trees mean that there is effectively no down-sampling in the first level of the
DT-CWT and it also has infinite SNR for K = 1. Both the higher scales of the DT-CWT
and the GPT have very low amounts of shift dependence with SNR levels around 30dB.
However, the WWT only manages about 18dB while the DWT has a very poor performance
with 7dB. 7dB corresponds to an shift dependence error energy of about 20% of the signal
energy.
Care must be taken when interpreting the SNR values tabulated. The measurements
describe the degree to which the wavelet generative model produces a stationary prior.
However, the final solution to a problem is based on the posterior density and the posterior
is a combination of the likelihood and the prior. In some circumstances the information
in the likelihood can counteract the deficiencies in the prior to produce a good quality
posterior. An quantitative example of the importance of this effect is given in section
8.7.2 which explains the significance of these measurements for a particular application (of
interpolation).
7.4.5 Flexibility
If a prior is required to be anisotropic (i.e. some directions are allowed more variation than
others) then we alter the model so that we can separately vary the scaling factors for each
subband. The increased directionality of the DT-CWT means that it is much more flexible
than any of the other methods for modelling anisotropic images. For example, none of
the other methods can produce priors that favour images containing correlations at angles
near 45◦ without also favouring correlations at angles near −45◦ .
However, in many applications it will be reasonable to assume that the prior for the
images is isotropic and so one way of testing the flexibility is to measure how close the
covariance function is to being circularly symmetric.
Each choice of scalings for the subbands implicitly defines the signal model as a sta-
tionary process with a certain covariance function. As in section 7.4.4 the covariance is
calculated by a wavelet smoothing method applied to an impulse. For each wavelet trans-
form the following process is used:
1. Generate a blank image of size 64 × 64. (Here we use blank to mean every pixel value
is 0.)
124 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
The final image produced is proportional to the covariance function. The exact values used
for the scaling factors in this experiment are not crucial and are just chosen to give results
large enough for the symmetry to be seen. (The Gaussian pyramid and W transform
methods have smoother lowpass filters and we change the scaling factors slightly in order
to give a similar shaped covariance.) The results are shown in figures 7.4,7.5,7.6,7.7, and
7.8.
40
35
60
30
25 50
20 40
15
30
10
5 20
0
10
−5
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
The Gaussian pyramid produces the most circularly symmetric covariance. The W
transform, DT-CWT, and the NDWT all produce reasonable approximations to circular
symmetry. The most important part of these diagrams is the section near the centre. For
large distances the contours are not circular but at such points the correlation is weak and
hence not as important. The DWT has a significantly non-circular covariance function.
7.4. CHOICE OF WAVELET 125
35
30
60
25
50
20
40
15
10 30
5 20
0
10
−5
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
35
30 60
25
50
20
40
15
30
10
20
5
10
0
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
50
60
40
50
30
40
20 30
10 20
10
0
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
35
30
60
25
50
20
40
15
10 30
5 20
0
10
−5
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
Figure 7.9 shows the same experiment (still using the DWT) except that we change step 2
to act on the pixel at position (28, 28). The covariance changes to a different (non-circular)
25
20 60
15 50
40
10
30
5
20
0
10
−5
80
10 20 30 40 50 60
60 80
60
40
40
20
20
0 0
shape.
It is possible to improve the circularity of the wavelet transform results by adjusting
the scaling factors for the ±45◦ subbands. These subbands should be treated differently
because their frequency responses have centres (in 2D frequency space) further from the
origin than the centres of the other subbands at the same scale. However, these changes
will do nothing to alleviate the problems of shift dependence found for the DWT.
7.5 Conclusions
The first part of the chapter is based on the assumption that the chosen wavelet transform
is shift invariant. Based on this assumption, we conclude that each of the four image models
128 CHAPTER 7. BAYESIAN MODELLING IN THE WAVELET DOMAIN
discussed are equivalent to a wide sense stationary discrete Gaussian random process. In
particular we conclude that:
• The Filter model corresponds to a process with covariance function given by the
autocovariance function of the filter impulse response.
• The wavelet generative specification of the prior corresponds to a process with co-
variance function given by a wavelet smoothed impulse.
For a shift dependent transform the wavelet generative prior model will be corrupted by
aliasing. The experiments in 1D and 2D suggest that these errors are relatively small
for the DT-CWT but large for the DWT. The NDWT, WWT, DT-CWT, and GPT all
possess reasonably isotropic covariance functions even without tuning the scaling for the
±45◦ subbands.
Chapter 8
8.1 Summary
The purpose of this chapter is to explore the use of the DT-CWT for Bayesian approxi-
mation and interpolation in order to illustrate the kind of theoretical results that can be
obtained. We assume that a simple stationary process is an adequate prior model for the
data but observations are only available for a small number of positions.
After a brief description of the problem area we place a number of different interpola-
tion and approximation techniques into the Bayesian framework. This framework reveals
the implicit assumptions of the different methods. We propose an efficient wavelet approx-
imation scheme and discuss the effect of shift dependence on the results.
Finally we describe two refinements to the method; one that increases speed at the cost
of accuracy, and one that allows efficient Bayesian sampling of approximated surfaces from
the posterior distribution.
We originally developed these methods for the determination of subsurface structure
from a combination of seismic recordings and well logs. Further details about the solution
of this problem and the performance of the wavelet method can be found in [35].
The main original contributions are; the Bayesian interpretations of spline processing
and minimum smoothness norm solutions, the proposed wavelet approximation method,
the theoretical estimates for aesthetic and statistical quality, the experimental measures
of these qualities, the method for fast conditional simulation, and the method for trading
speed and accuracy.
129
130 CHAPTER 8. INTERPOLATION AND APPROXIMATION
8.2 Introduction
The task is to estimate the contents of an image from just a few noisy point samples. In
this chapter we assume that the image is a realisation of a 2D (wide sense) stationary
discrete Gaussian random process. This is an example of an approximation problem. The
approximation is called an interpolation in the special case when the estimated image is
constrained to precisely honour the sample values.
Using the same conventions as in chapter 7 we use Z to represent the (unknown)
contents of the image. The prior distribution is
Z s N (0, B)
where B is a N × N covariance matrix and, as before, we assume that the image is shifted
to have zero mean. The assumption that the process is stationary means that B can be
expressed in terms of a covariance function R as
Bab = R (xa − xb )
where σ 2 is the variance of the measurement noise. The observations are given by
Y = TZ + Q (8.3)
8.3. POSTERIOR DISTRIBUTION 131
In this chapter we will assume that both the covariance structure of the process and the
variance σ 2 of the noise added to the samples are known. In practical applications it
is usually possible to estimate these from the sample values [110]. Strictly speaking our
methods should be described as empirical Bayes because the prior is based on estimated
values. A completely Bayesian approach would involve treating the parameters of the model
as random variables and setting priors for their distributions. However, this introduces
further complications during inference that would distract from the main aim of evaluating
complex wavelets. A description of a fully Bayesian approach to the problem can be found
in the literature [12].
We will define the basic problem (with known covariance) to be “stationary approx-
imation” (or “stationary interpolation” when σ = 0) but we will usually shorten this to
simply “approximation” (or “interpolation”). This problem has been extensively studied
and many possible interpolation methods have been proposed. There are several crude
methods such as nearest neighbour, linear triangulation, and inverse distance that work
reasonably when the surfaces are smooth and there is little noise but are inappropriate oth-
erwise. There are also more advanced methods such as Kriging [13], Radial Basis Functions
[97], Splines [119], and Wiener filtering.
This chapter describes a wavelet based Bayesian method for (approximately) solving the
stationary approximation problem and shows how a number of the alternative techniques
are solutions to particular cases of the problem.
The first part of this chapter discusses the alternative techniques from a Bayesian
perspective. The second part describes the wavelet method and experimental results. As
a first step towards relating the techniques section 8.3 describes the form of the posterior
distribution for the problem.
If we define a vector λ ∈ R S as
−1
λ = σ 2 IS + C y
Ẑk = DT λ
S
= R(xa − xk )λa
a=1
N
= R(xa − xk )Λa
a=1
where Λ ∈ R N
is a vector whose first S elements are given by λ1 , . . . , λS and whose
other elements are all zero. Λ represents an image that is blank except at the observation
locations. The equation for the estimate can be interpreted as filtering the image Λ with
the filter h(x) = R(−x) and then extracting the value at location xk . We express the
estimate in this form because λ (and hence Λ) does not depend on the location being
estimated and therefore point estimates for every location are simultaneously generated by
the filtering of Λ.
8.4.1 Kriging
Kriging is a collection of general purpose approximation techniques for irregularly sampled
data points [13]. Its basic form, known as Simple Kriging, considers an estimator Kk for
8.4. APPROXIMATION TECHNIQUES 133
the random variable Zk that is a linear combination of the observed data values:
Kk = w T Y
F is minimised by setting ∇w F = 0
∂F S
=2 E {Ya Yb} wb − 2E {Ya Zk } = 0 (8.5)
∂wa b=1
This gives a set of S linear equations that can be inverted to solve for w.
Now consider the approximation problem again. We can calculate
where we have used the fact that Zk and the measurement noise Qa are independent and
that the noise has zero mean. If a = b then similarly
while if a = b
E {Ya Yb } = Ca,b + σ 2
This estimator is exactly the same as the Bayesian estimate based on a multivariate Gaus-
sian distribution.
We have shown the well-known [4] result that if the random process is a multivariate
Gaussian then the simple Kriging estimate is equal to the mean of the posterior distribution.
are all of the same shape and centered on the S known data points [97]. The weights in the
linear combination are chosen to honour the known values. In practice exactly the same
equations are used to solve RBF and Kriging problems and the equivalence between these
techniques is well-known.
Ẑ = argminZ∈Ω ZT Z (8.6)
where Ω is the space of images that are both band limited and honour the known obser-
vations.
Ω = {Z : T Z = y, (IN − D) F Z = 0}
1
=
(IN − D) F Z
2 +
DF Z
2
a2
1
= 2 ZH F H (IN − D) (IN − D) F Z +
DF Z
2
a
1 T 1
= 2 Z Z + 1 − 2
DF Z
2
a a
1 1
= 1 + 2 ZT Z − 2
DF Z
2
α α
√
where a = α/ 1 + α2 .
Finally consider the Fourier model from section 7.3.2 with a coefficient weighting matrix
Dα = a (IN − D) + D. If we define the prior pdf for Z with this Fourier model and assume
that we have white measurement noise of variance σ 2 then Bayes’ theorem can be used to
show that:
1
−2 log (p(Z|y)) + k(y) = 2
T Z − y
2 +
Dα F Z
2
σ
where k(y) is a function of y corresponding to a normalisation constant. The previous
algebra proves that the RHS of this equation is equal to the expression within the earlier
minimisation and we conclude that the estimate
−1 2
1 α
Ẑσ,α = argminZ∈RN 2
T Z − y
2 + √ (IN − D) + D F Z
σ 1 + α2
is equal to the MAP (Maximum A Posteriori) estimate using the Fourier model, which in
turn is equivalent to the multivariate Gaussian model. Additionally, for a Gaussian density
function the MAP estimate is equal to the posterior mean estimate. In the limit σ → 0 the
measurement noise is reduced to zero and Ẑσ,α becomes the interpolation solution. Finally,
in the limit as α → 0, the prior parameters for the Fourier model tend to Dα = D.
We conclude that the estimate produced by the bandlimited interpolation is equivalent
to interpolation for a particular Fourier model prior. Section 7.3.2 shows that this is
equivalent to the multivariate Gaussian with a covariance function given by a lowpass
filtered impulse (which will be oscillatory due to the rectangular frequency response).
where
"
1. The Lp (I) space is the set of all functions on I with bounded norm
f
pp = I
|f (t)|p dt.
The paper concentrates on the special case of p = q = 2. In this case the Besov norm is
called the Sobolev norm and is written
1/2
f
W2α(L2 (I)) =
uj0,k
22 + |2αj wj,k |2 (8.8)
j≥j0 ,k
Let Z be a vector of signal samples from the (prefiltered) continuous-time signal f (t).
Prefiltering is used when converting from continuous-time to discrete-time. It is necessary
in order for the wavelet coefficients of Z to match the wavelet coefficients of f (t). We do
not consider prefiltering in this dissertation because we assume that data will always be
1
There are a number of different treatments of the scaling coefficients in Besov norm definitions. In
practical algorithms the choice is not important because the scaling coefficients are generally preserved.
We choose the given definition as being the most natural.
138 CHAPTER 8. INTERPOLATION AND APPROXIMATION
provided in sampled form. Further details can be found in the literature [113, 23]. As
before we define the wavelet coefficients (from a one dimensional wavelet transform) to be
given by w = W Z. We now define a diagonal matrix D to have diagonal entries Daa = 1
if wa is a scaling coefficient and Daa = 2αk if wa is a scale k wavelet coefficient. Armed
with this notation the Sobolev norm can be expressed as
f
W2α(L2 (I)) =
DW Z
(8.9)
Although we have defined the Sobolev norm in terms of the one dimensional transform,
the same equation describes the norm for two dimensional wavelet transforms if we use the
earlier notation for which Z is a vector representing an entire image, and W represents a
two-dimensional transform.
The algorithm [23] found (using a least squares calculation) the wavelet coefficients
with minimum Sobolev norm that interpolated the known points. Recall that the wavelet
direct specification defined the prior as
1
p(Z = z) ∝ exp −
DW z
2
2
The minimum smoothness norm solution is therefore equivalent to selecting the highest
probability image that honours the observations. We conclude that the solution is equal to
the MAP estimate using the wavelet direct specification to generate the prior. Section 7.3.3
showed that this is equivalent to a stationary Gaussian discrete random process assuming
that the wavelet transform is sufficiently shift invariant. We conclude that the minimum
smoothness norm interpolation is equivalent to solving the stationary interpolation problem
(with covariance function given by an inverse wavelet sharpened impulse) with the quality
of the solution determined by the amount of shift dependence.
The published paper made use of a fully decimated wavelet transform. Later we display
experiments comparing the performance of the DWT with alternative transforms to show
the considerable effect of shift dependence. Also recall from section 7.3.3 that for an
orthogonal transform the covariance function can also be expressed in terms of a wavelet
smoothed impulse.
We have described the minimum smoothness norm (MSN) solution as a Bayesian so-
lution to stationary interpolation plus an error caused by shift dependence. It may be
thought that this is unfair, that MSN should really be considered as performing non-
Gaussian interpolation and that what we have called the “error” due to shift dependence
8.4. APPROXIMATION TECHNIQUES 139
is actually an additional term that makes the technique superior to standard methods. Our
defence to this criticism is that there is no prior information about the absolute location of
signal features and shifting the origin location should not affect the output. Therefore the
solution provided by this method should be considered as the average over all positions of
the origin, plus an error term due to the particular choice of origin position used in the
algorithm. This last statement may need a little further support as it could be argued that
the average always gives smooth answers while MSN will be able to model discontinuities
better. We finish this section by proving that the accusation will never hold.
More precisely, we show that when all the origin positions are considered the average
solution will always be a better estimate than using the basic MSN solutions. In this
context we measure the quality of a solution by means of the energy of the error. The
proof is straightforward. Let Z represent the true values of the signal (or image – this
proof is valid for both signals and images) and let Ẑi represent the MSN estimate for the
ith origin position (out of a total of NO possible positions). The average solution Ẑ0 is
defined as
1
NO
Ẑ0 = Ẑi
NO i=1
Then it is required to prove that the energy of the error for the average solution
Z − Ẑ0
2
O
is always less than the average energy for the individual solutions 1/NO N i=1
Z − Ẑi
.
2
1
NO
Z − Ẑi
2 =
NO i=1
1
NO
Z − Ẑ0 + Ẑ0 − Ẑi
2
NO i=1
NO T
1
=
Z − Ẑ0
+
Ẑ0 − Ẑi
+ 2 Z − Ẑ0
2 2
Ẑ0 − Ẑi
NO i=1
2 T
NO
1
NO
=
Z − Ẑ0
+2
Ẑ0 − Ẑi
+
2
Z − Ẑ0 Ẑ0 − Ẑi
NO i=1 NO i=1
1
NO
=
Z − Ẑ0
2 +
Ẑ0 − Ẑi
2
NO i=1
≥
Z − Ẑ0
2
140 CHAPTER 8. INTERPOLATION AND APPROXIMATION
where the inequality in the last line is strict unless the transform is shift invariant. We
have therefore shown that the energy of the error will always be greater (when averaged
over all origin positions) if the MSN solution is used rather than the smoothed solution.
Note that this proof is very general, in particular note that no assumption had to be made
about the true prior distribution of the data. The result is equally valid for good and bad
models. It does not claim that the average solution will be a good solution, but it does
show that it will always be better than the shift dependent solutions.
Nychka et al. [88] have proposed a method for dealing with nonstationarity by using
the W transform basis [67]. Nychka allows the weighting factors to vary within a single
scale, and this variation produces nonstationary surfaces. Equation 8.4 shows that the
2
solution involves inverting the matrix C + σM IS . This matrix can be very large and so
is hard to invert. However, the matrix C can be written as P D 2 P T (using the notation
of section 7.3.4) and so multiplication by C can be efficiently calculated using wavelet
transform techniques. Nychka makes use of this result by solving using a conjugate gradient
algorithm. Such an algorithm only uses forward multiplication by C and so can be much
more efficient than inverting C. If C is a square matrix of width S then in the worst
case the gradient algorithm takes S steps to converge to the solution, but usually the
convergence is much faster than this, especially if some preconditioning methods are used.
To generate conditional simulations of a surface they use the method described in sec-
tion 8.8.1 which requires a Kriging-style interpolation to be performed for each realisation.
If their method takes K iterations of the conjugate gradient algorithm to converge, then
to generate P realisations they will require 2KP wavelet transforms.
This section discusses the link with B-spline methods. B-splines have been proposed for
solving both interpolation and approximation problems. We first give an overview of the
technique and then discuss the methods from a Bayesian perspective. The main source for
the description of splines is [119] while the Bayesian interpretation is original.
8.4. APPROXIMATION TECHNIQUES 141
B-spline
The B-splines can be used for either interpolation or approximation. For interpolation
the problem is to choose the spline coefficents so that the reconstructed signal passes
through the data points. These coefficents can be calculated by applying a simple IIR filter
to the data. If the coefficients are represented as delta functions (of area equal to the value
of the coefficients) at the appropriate locations it is possible to construct the interpolation
by filtering with the B-spline function. For high order splines this combination of the IIR
filter with the B-spline filtering can be viewed as a single filtering operation applied to the
original data points (also represented as impulses). This combined filter is called a cardinal
spline (or sometimes the fundamental spline) of order n and converges to a sinc function
that effectively performs bandpass filtering of the signal to remove aliased components of
the signal.
There are two main techniques for approximation. The first is called smoothing splines
approximation and involves minimising the energy of the error in the approximation plus
an additional energy term. This second energy term is the energy of the r th derivative of
the approximation.
The second technique is a least squares approximation and is derived by restricting the
number of spline coefficients that are to be used to generate the approximation, and then
solving for the least energy of the error.
We discuss each of the three (one for interpolation, two for approximation) main tech-
niques from a Bayesian perspective. Each technique produces an estimate for the true
signal, and we attempt to describe the prior model for the signal that would produce the
same estimates.
142 CHAPTER 8. INTERPOLATION AND APPROXIMATION
Interpolation
The interpolation solution of order n consists of a spline with knot points at the data
points. The similarity to the Bayesian estimate described in section 8.3 is clear in that the
solution is produced by filtering impulses at the data points with the weights chosen by
the requirement of exactly fitting the data. The Bayesian interpretation is that the prior
for the signal is a zero mean wide sense stationary discrete Gaussian random process with
covariance function equal to the B-spline function of order n.
B-spline filtering of order n is given by smoothing with a unit pulse n + 1 times.
Therefore for high orders the high frequencies become less and less likely a priori and the
solution will use the lowest frequencies possible that satisfy the data points. This solution
will therefore converge to the band-limited signal and hence the cardinal splines will tend
to the sinc interpolator.
Smoothing splines
Given a set of discrete signal values {g(k)}, the smoothing spline ĝ(x) of order 2r − 1 is
defined as the function that minimizes
+∞ # +∞ 2
∂ r ĝ(x)
2S = (g(k) − ĝ(k)) + λ
2
dx (8.10)
−∞ ∂xr
k=−∞
where λ is a given positive parameter. Schoenberg has proved the result that the minimising
function (even for the general case of non-uniform sampling) is a spline of order n = 2r − 1
with simple knots at the data points[105]. By analogy with the interpolation case it
is tempting to think that smoothing splines will correspond to a random process prior
with covariance function equal to a 2r − 1 B-spline and measurement noise depending
on λ. However, while the analogy is reasonable when close to the sample points, it is
inappropriate at long distances. The problem is that the integral is zero for polynomials of
degree less than r and hence there is no prior information about the likely low order shape
of the signal. Therefore, except for very careful choices of the data values, the smoothing
spline estimate at long distances will tend to infinity.
Least squares
Least squares techniques are equivalent to the Bayesian maximum a posteriori (MAP)
estimate when we assume that there is a flat prior for each parameter. For the least
8.4. APPROXIMATION TECHNIQUES 143
squares spline approach we can also roughly interpret the restricted choice of coefficients
as indicating that we know a priori that the original image should be smooth and contain
only low frequencies. The least squares approach can be thought of as calculating a MAP
estimate based on this prior and the observation model of additive white Gaussian noise.
There is an interesting way of seeing that such an estimate cannot be shift invariant.
The explanation is somewhat convoluted and not needed for the rest of this disseratation.
If the following is confusing then it can be safely ignored.
First note that the B-splines are linearly independent. This is clear because in any set
of B-splines we can always find an “end” B-spline whose support is not covered by the rest
of the splines. In other words, a B-spline at the end of the set will contain at least one
location k such that
Now suppose we have the smallest non-empty set of B-splines that possesses a non-trivial
(i.e. not all coefficients equal to zero) linear combination that is equal to zero at all
locations. Clearly the coefficient of the “end” B-spline must be zero to avoid having a
non-zero value at location k and hence we can construct a smaller set by excluding the
“end” B-spline. This contradiction proves that the B-splines are linearly independent.
Next suppose that we have a discrete grid containing N locations. The consequence of
the linear independence of B-splines is that we must be able to model any image if we can
choose the values of all N B-spline coefficients.
The least squares approach models the data using a set of K spline coefficients where
K is less than the number of observations. In particular, note that the model includes the
case of an image generated from a single non-zero spline coefficient. If the prior is shift
invariant then the model must also include the cases of non-zero coefficients centered on
any location. However, if we are allowed to use all N B-spline coefficients then our previous
claims show that we can make any image we want, including an image that interpolates
all the observations.
We have argued that a shift invariant least squares method must interpolate the ob-
servations. The least squares spline approach is an approximation method and hence we
conclude that it must be shift dependent.
144 CHAPTER 8. INTERPOLATION AND APPROXIMATION
This argument is included for interest only and is not meant to be a rigorous mathe-
matical argument (for example, a rigorous treatment would need to consider edge effects).
where P represents the wavelet reconstruction transform and D a diagonal weighting ma-
trix. Instead of modelling the values at every point on the surface, it is better to model the
wavelet coefficients directly, with the surface indirectly defined as the reconstruction from
these wavelet coefficients. In wavelet space the wavelet generative specification corresponds
to the prior
w s N 0, D 2
where w is a column vector containing all the wavelet coefficients (with the real and
imaginary parts treated as separate real coefficients).
Now we wish to derive the posterior distribution for the wavelet coefficients. Suppose
we have measurements y1 , y2 , . . . , yS which we stack into a column vector y and that the
measurement noise is independent and Gaussian of variance σ 2 and mean zero. Let T be
a matrix of ones and zeros that extracts the values at the S measurement locations.
We can now use Bayes’ theorem
p(y|w)p(w)
p(w|y) =
p(y)
∝ p(y|w)p(w)
The likelihood p(y|w) is the pdf that the measurement errors are y − T P w, and so we can
write the likelihood as
1
p(y|w) ∝ exp − 2 (y − T P w) (y − T P w)
T
2σ
8.6. METHOD FOR WAVELET APPROXIMATION/INTERPOLATION 145
The prior for the wavelet coefficients is a multivariate Gaussian distribution of mean zero
and variance D 2 and so the prior pdf can be written as
1 T −2
p(w) ∝ exp − w D w
2
We can then calculate the posterior and use lemma 3 of appendix B to simplify the equa-
tions
1 1 T −2
p(w|y) ∝ exp − 2 (y − T P w) (y − T P w) exp − w D w
T
2σ 2
1 T −2
∝ exp − w D + P T T P/σ w + w P T y/σ
T T 2 T T T 2
2
1
∝ exp − (w − a) A(w − a)
T
2
where
A = D −2 + P T T T T P/σ 2 (8.11)
a = A−1 P T T T y/σ 2 (8.12)
and so we have shown that the posterior distribution for the wavelet coefficients is a
multivariate Gaussian with mean a and variance A−1 .
The following sections describe how each of these steps can be performed efficiently.
146 CHAPTER 8. INTERPOLATION AND APPROXIMATION
Aa = P T T T y/σ 2
8.7.1 Speed
The main computational burden is the solution of the linear equations. The number of
equations is given by the number of measurement locations plus the number of important
148 CHAPTER 8. INTERPOLATION AND APPROXIMATION
wavelet coefficients. All the decimated systems will have a similar number of important
coefficients, but the non-decimated system will have very many more. To illustrate this
we generated 20 random sample locations for a 128 by 128 image and counted the number
of important coefficients for a 4 scale decomposition. Table 8.1 shows the results. Notice
that the lack of subsampling in the NDWT produces about ten times more important
coefficients than the DT-CWT and will therefore be much slower.
larger than the errors due to shift dependence. If SN DW T is the energy of the shift invariant
estimate and EN DW T is the average energy of the error between the shift invariant estimate
and the surface being estimated then the statistical quality is defined in decibels as
SN DW T
QS = 10 log10
EN DW T + Eshif t
To predict these qualities we need to estimate a number of energies.
First consider the simple interpolation case when the mean of the data is 0 and the
correct value is known at a single point. We have already claimed that:
1. The (posterior mean) estimate will be a scaled version of the covariance function
(section 8.3).
2. The covariance function for the wavelet method will be given by smoothed impulses
(section 7.3.4).
It is therefore reasonable to expect the aesthetic quality (the degradation caused by shift
dependence) to be equal to the measured degradation for smoothed impulses given by the
values in table 7.3.
Now consider the multiple data point case. Widely spaced sample locations will natu-
rally lead to a proportionate increase in the shift dependence error energy. However, there
are two main reasons why this may not hold for closer points:
2. There is a correction applied to the size of the impulses so that the interpolated
image will honour the known values.
The first reason may apply when there are two points close together. The aliasing terms
could cancel out to give a lower error, but it is just as likely that they will reinforce each
other and give an even higher energy error than the sum. In general this effect is not
expected to greatly change the shift dependence error.
The second reason is more important. The correction ensures that there will be zero
error at the sample values. This zero error has two consequences; first, that there is
no uncertainty in the value at the point and, second, that naturally there is zero shift
dependence error at the point. This effect will reduce the amount of shift dependence
error as the density of data points increases. In the limit when we have samples at every
150 CHAPTER 8. INTERPOLATION AND APPROXIMATION
location then there will be no shift dependence error at all as the output is equal to the
input.
Although the precise amount of error will depend on the locations of the sample points
and covariance function it is still possible to obtain a rough estimate of the amount of
error that reveals the problem. Consider solving an interpolation problem with a standard
decimated wavelet transform for a grid of N by N pixels. At level k and above there
will be N 2 41−k wavelet coefficients. Now suppose that we have N 2 41−p sample points
spread roughly evenly across our grid (for some integer p ≥ 1). For a standard decaying
covariance function these points will define the coarse coefficients (those at scales k > p)
fairly accurately but provide only weak information about the more detailed coefficients.
The coefficients at scale k = p will have on average about one sample point per coefficient.
These coefficients will therefore tend to produce about the same amount of shift dependence
as in the single sample case weighted by the proportion of energy at scale p. The statistical
uncertainty in the estimates will be roughly the amount of energy that is expected to be
found in the coefficients at scale p and the more detailed scales.
Let Ep be the expected energy of the coefficients at scale p. Let E≤p be the total
expected energy of the coefficients at scales 1 to p. Let r be the ratio Ep /E≤p . This ratio
will be close to one for rapidly decaying covariance functions.
The discussion above suggests that, approximately, the statistical uncertainty will cor-
respond to a noise energy of E≤p , while the shift dependence will correspond to a noise
energy of f Ep where f is the measure of the amount of shift dependence for the transform.
An estimate for the aesthetic quality is therefore:
SN DW T
QA ≈ 10 log10
f Ep
SN DW T
= 10 log10
f rE≤p
≈ Q0 − 10 log10 f − 10 log10 r
where Q0 ≈ 10 log10 (SN DW T /E≤p ) is the expected statistical quality of the shift invariant
estimate.
The aesthetic quality is therefore predicted to be the values in table 7.3 with an offset
given by the statistical quality of the estimate plus a constant depending on r. The offset
is the same whatever the choice of transform and hence the different transforms should
8.7. CHOICE OF WAVELET 151
maintain a constant relative aesthetic quality. For example, the table gives a value for
−10 log10 f of about 32dB for the DT-CWT, but only 6.8dB for the DWT and we would
therefore expect the aesthetic quality for the DT-CWT to be about 25dB better than for
the DWT.
As the density of points increases the statistical quality and hence the aesthetic quality
will also increase.
By using the approximation log(1 + x) ≈ x (valid for small |x|) we can also write a
simple approximation for the statistical quality:
SN DW T
QS = 10 log10
E≤p + f Ep
SN DW T E≤p
= 10 log10
E≤p E≤p + f rE≤p
= Q0 − 10 log10 (1 + f r)
10
≈ Q0 − fr
log 10
In order to judge the significance of this we must know values for f and r. The measure of
shift dependence f has been tabulated earlier converted to decibels. This is convenient for
the aesthetic quality formula, but for the statistical quality we need to know the precise
value of this factor. For convenience, the actual values are shown in table 8.2. Now
−(10/ log(10))(0.21)(0.5) = −0.46dB while for the WWT it is about −0.03dB and for the
DT-CWT it is only about −0.001dB.
These estimates are not very trustworthy due to the large number of approximations
used to obtain them, but they do suggest that we should expect shift dependence to cause
a significant decrease in both statistical and aesthetic quality when the standard wavelet
transform is used.
(c) Sample the surface at the points {(as + δx, bs + δy) : a, b ∈ Z} that are within
the image.
(d) Interpolate the sampled values using the method described in section 8.6. The
interpolation is repeated for three different transforms; the NDWT, the DWT,
and the DT-CWT.
3. Calculate the relative statistical and aesthetic qualities based on the averaged ener-
gies.
The aesthetic quality for the DWT is calculated as QA = 10 log10 (SN DW T /EDW T ) and
similarly for the DT-CWT. In order to highlight the difference in the absolute statistical
quality we compute a relative quality measure RS defined as the difference between the
statistical quality for the shift dependent estimate and the statistical quality of the shift
invariant estimate Q0 :
RS = QS − Q0
SN DW T SN DW T
= 10 log10
− 10 log10
EN DW T + EDW T EN DW T
EN DW T
= 10 log10 .
EN DW T + EDW T
RS will be a negative quantity that measures the loss of statistical quality caused by shift
dependence. Figure 8.3 plots the aesthetic quality against the density of points. Figure
8.4 plots the relative statistical qualtity. In both figures a cross represents the DT-CWT
estimate while a circle represents the DWT estimate. Results are not shown for the NDWT
since the definitions ensure that this transform will always have an infinite aesthetic quality
and a zero relative statistical quality.
45
40
35
25
20
15
10
5
−4 −3 −2 −1 0
10 10 10 10 10
Samples per pixel
−0.1
−0.2
Relative statistical quality/dB
−0.3
−0.4
−0.5
−0.6
−0.7
−4 −3 −2 −1 0
10 10 10 10 10
Samples per pixel
Figure 8.4: Relative statistical quality for DWT(o) and DT-CWT(x) /dB
8.7. CHOICE OF WAVELET 155
in figure 8.3 suggest that the improvement in aesthetic quality is actually about 20dB
for the DT-CWT. Considering the large number of approximations made in predicting
the value this is a reasonable match. The absolute value of the aesthetic quality for the
DWT varies from about 20dB for high densities to 9dB for low sample densities. These
experimental results confirm that aesthetically the quality of the DWT is low, while the
DT-CWT gives a much improved quality.
The theory predicted that the relative statistical quality for the DWT would be about
−0.46dB (this corresponds to an error of about 11%). The results in figure 8.4 suggest
that the relative quality is only about −0.5dB for very high sample densities, but that
for lower densities the relative quality becomes much smaller (in magnitude). This is a
fairly poor match with the predicted value. Nevertheless, the experiments confirm the the
qualitative prediction that the DWT has an appreciably lower statistical quality (of around
0.25dB,6%) while the DT-CWT has almost negligible errors (less than 0.01dB,0.2%) caused
by shift dependence.
Finally we discuss the expected effect of some of the approximations on the discrepancy
between the predicted and observed results for the relative quality. Bear in mind that a
larger (in magnitude) relative quality means worse results.
1. We use 4 level transforms. The theory only applies when the critical level is close to
one of these levels. For densities lower than about 1 in 162 = 256 the sample positions
are so widely spaced that they will have little effect on each other. The estimates
will be very uninformative and the statistical error will be roughly constant (and
equal to the variance of the original image). However, the shift dependence energy
will be proportional to the density, and therefore for low densities the shift depen-
dence will be relatively insignificant and so the relative quality improves (decreases
in magnitude).
2. The estimate that r = 1/2 is very crude. For the most detailed scale E1 = E≤1 and
the ratio must be one. For the other scales the ratio will be somewhere between 1
and 1/2. The effect of this is to predict that the relative quality will actually be
worse (larger in magnitude) than −0.46dB for high sample densities.
3. We assume that the wavelet coefficients at scales coarser than p are accurately es-
timated. In practice there will still be some error in these. This effect will tend to
156 CHAPTER 8. INTERPOLATION AND APPROXIMATION
increase the statistical error and hence decrease the significance of the shift depen-
dence. Therefore this will produce a slight improvement (decrease in magnitude) in
the relative quality.
5. We assume that the level p coefficients will produce an expected shift dependent
energy of f Ep . Ep is the expected energy of the level p coefficients in the prior but
the actual energy of the coefficients in the interpolated image will tend to be less
than this due to the limited information available. This is because the estimate is
given by the mean of the posterior distribution. The mean of the prior distribution
is zero and when there is little information the mean of the posterior will also be
close to zero. The effect of this is to predict less shift dependence and hence a better
(smaller in magnitude) relative quality.
The most significant of these effects are probably the first and last.
8.8 Extensions
8.8.1 Background
The Kriging mean estimate gives biased results when estimating a nonlinear function of
the image [130] (such as the proportion of pixels above a certain threshold). It is better
to generate a range of sample images from the posterior and average the results. In the
context of Kriging approximation methods this generation is called conditional simulation
[36] and works as follows:
2. Remove a point from the queue and use Kriging to estimate the mean and variance
of the posterior distribution at that point conditional on all the data values and on
all the previous locations for which we have estimated values.
8.8. EXTENSIONS 157
3. Generate a sample from the Gaussian distribution with the estimated mean and
variance and use this to set the value at the new point.
This process generates a single sampled image and can be repeated to generate as many
samples as are desired. Each step in this process involves inverting a square matrix whose
width increases steadily from the number of measurements to the number of locations we
wish to know about. This calculation involves a huge amount of computation for more
than a few hundred locations.
As described, the estimate for the value at a position is based on all the data points and
all the previously calculated points but to increase the speed of the process it is possible to
base the estimate just on some of the close points. It is necessary to include points up to
the range of the variogram if the results are to be valid and again the computation rapidly
becomes prohibitively long.
A multiple grid approach has been proposed [41] that first simulates the values on a
coarse grid using a large data neighbourhood and then the remaining nodes are simulated
with a finer neighbourhood. Our approach can be viewed as a multigrid approach, with
the additional advantage of wavelet filtering to give better decoupling of the different
resolutions making our method faster and more accurate.
An efficient simulation method has been proposed [57, 89] that first generates a random
image with the correct covariance function (but that does not depend on the known data
values), and then adds on a Kriged image based on the data values minus the values of the
random image at the known locations. This will generate a conditional simulation of the
surface and the process can be repeated to generate many different realisations. We now
describe a similar method that acts in wavelet space.
8.8.2 Proposal
In order to efficiently calculate image samples we calculate samples of the wavelet coeffi-
cients and then apply the wavelet reconstruction transform. It is easy to generate samples
of the unimportant wavelet coefficients (whose posterior distribution is the same as their
prior) by simulating independent Gaussian noise of the correct variance.
158 CHAPTER 8. INTERPOLATION AND APPROXIMATION
To generate samples of the important wavelet coefficients consider solving the equations
T
T P/σ
AZ = P T T T y/σ 2 + R
D −1
where R is a vector of random samples from a Gaussian of mean zero and variance 1,
with length equal to the number of measurements plus the number of important wavelet
coefficients. Recall from equation 8.11 that A = D −2 + P T T T T P/σ 2 .
The vector of random variables Ẑ given by
T
T P/σ
Ẑ = A−1 P T T T y/σ 2 + R
D −1
will have a multivariate Gaussian distribution and noting that A is a symmetric matrix we
can simplify as follows:
T
T P/σ T P/σ
Ẑ ∼ N A−1 P T T T y/σ 2 , A−1 −1 −1
A−1
D D
∼ N a, A−1 D −2 + P T T T T P/σ 2 A−1
∼ N a, A−1
This shows that such solutions will be samples from the posterior distribution for the
wavelet coefficients. The sparsity of A means that Gaussian elimination allows us to
quickly solve these equations. Gaussian elimination is equivalent to LU factorisation (the
representation of a matrix by the product of a lower triangular matrix L with an upper
triangular matrix U) and so we can generate many samples quickly by calculating this
factorisation once and then calculating Ẑ for several values of R. This is fast because
triangular matrices can be quickly inverted using back substitution.
A similar method of LU factorisation has been used to quickly generate many samples
for the Kriging Conditional Simulation method [2] but this method can only simulate a
few hundred grid nodes before the cost becomes prohibitive. We have generated simulated
images with a quarter of a million grid nodes using the wavelet method in less than a minute
on a single processor. The improvement is possible because the wavelet transform achieves
a good measure of decorrelation between different ranges of the covariance function and
so can interpolate each scale with an appropriate number of coefficients. We also get a
very sparse set of equations which can be solved much faster than the fuller system that
Kriging methods produce.
8.8. EXTENSIONS 159
For example, a SNR of 30dB is equivalent to saying that the energy of the error is only
0.1% of the energy of the surface.
We perform the experiment twice, once with 128 measurements, and once with 256
measurements.
Figure 8.5 plots the time taken for the interpolation versus the SNR of the results. For
some of the points we have also displayed the associated threshold level. There is also a
horizontal dashed line drawn at the time taken for a threshold of zero.
It can be seen that the computation decreases for minor increases in the threshold while
producing little additional error. For example, a threshold of 0.3 reduces the time by a
factor of 3 while giving a SNR of 27dB.
Figure 8.6 shows the results of the experiment when we have twice as many data points.
The same computation decrease is evident. Consider the threshold of 0.3. For 128 mea-
surements, the interpolation takes about 6 seconds (SNR=27.2dB). For 256 measurements,
it takes about 14 seconds (SNR=29.3dB). We also timed an interpolation of 512 measure-
ments which took 32 seconds (SNR=33.8dB). This is not quite linear, but notice that
the same threshold gives greater accuracy with more measurements. Therefore when we
have more measurements we can reduce the computation by using a higher threshold while
maintaining the same accuracy. On balance the amount of computation is roughly linear
160 CHAPTER 8. INTERPOLATION AND APPROXIMATION
20
Threshold=0.04
15
Threshold=0.3
5
0
0 20 40 60 80 100
SNR /dB
50
Threshold=0.01
Threshold=0.02
Time for interpolation
40 Threshold=0.04
30 Threshold=0.1
20 Threshold=0.2
Threshold=0.3
10
0
0 20 40 60 80 100
SNR /dB
The first assumption is the most significant. For most applications the original data
will only be approximately modelled as a stationary Gaussian random process. Often more
information may be known about the likely structure of the data and a more sophisticated
model using this information will almost certainly give better results but will probably also
require much more computation to solve.
We would expect an assumption of Gaussian measurement noise to be reasonably ac-
curate in most cases even for non-Gaussian noise distributions of zero mean and equal
variance. However, in certain circumstances this expectation may not hold. Two examples
are:
The assumption of known mean and covariance of the process will almost never be true,
but there are many methods available for obtaining estimates of these parameters [110].
Results in the literature related to radial basis functions [97] suggest that the precise shape
of the covariance function only has a small effect on the results and therefore we do not
expect the errors in the parameter estimates to be significant. The same argument applies
to the variance of the measurement noise.
The restriction that the measurement locations are at distinct locations is an unimpor-
tant constraint that is needed only for interpolation. The problem is that it is impossible
to interpolate two different values at the same position. A simple approach to the problem
is to replace repeats by a single sample with value given by the average of the repeats. For
approximation all the methods work equally well even with the original samples without
this constraint.
The assumption that the sample locations lie on grid points is another unimportant
constraint because approximating sample locations by the nearest grid point should give
sufficiently accurate results for most applications.
8.10 Conclusions
The first part of this chapter considered alternative interpolation and approximation tech-
niques from a Bayesian viewpoint. We argued that Kriging, Radial Basis Functions, Ban-
dlimited interpolation, and spline interpolation can all be viewed as calculating Bayesian
posterior mean estimates based on particular assumptions about the prior distribution for
the images. More precisely, each method can be viewed as assuming a stationary discrete
Gaussian random process for the prior, with the only theoretical difference between the
methods being the assumed covariance function.
The reason that this is important for complex wavelets is that our proposed method
based on the DT-CWT uses a prior of the same form. Our method has a number of pa-
rameters associated with it and these parameters could be tuned in order that the complex
8.10. CONCLUSIONS 163
1. Smoothing spline estimates tend to infinity when extrapolated away from the data
points.
We also prove from a Bayesian perspective that shift dependence will always be an addi-
tional source of error in estimates.
The second part of the chapter proposed a wavelet method for interpolation/approximation.
We discussed and predicted the effect of shift dependence on measures of aesthetic and sta-
tistical quality. These predictions were tested experimentally and found to be rather inac-
curate but they did give a reasonable guide to the relative importance of shift dependence
for the different methods. In particular, the DWT was found to give significantly shift
dependent results, even compared to the expected statistical error, while the DT-CWT
produced estimates with statistically insignificant errors due to shift dependence.
We also developed a method for generating samples from the posterior distribution
that can generate large numbers of sample images at a cost of one wavelet reconstruction
per sample image. For contrast, a comparable method based on the conjugate gradient
algorithm [88] requires 2K wavelet transforms per sample image where K is the number
of iterations used in the conjugate gradient algorithm.
Finally we found a simple method that can be used to increase the speed of the method
at the cost of a slight decrease in accuracy. Using this method to achieve a constant
accuracy we found that the time to solve the equations is roughly linear in the number
of data points, while the computation for Kriging is roughly cubic in the number of data
points.
This chapter has argued that the DT-CWT gives much better results than the DWT
and much faster results than the NDWT. However, in practice this is not an appropriate
application for any of these wavelet methods. Better and faster results (at least for the
164 CHAPTER 8. INTERPOLATION AND APPROXIMATION
isotropic case) could be obtained with the GPT. In contrast, the next chapter will describe
an application for which the DT-CWT is not only better than the DWT and the NDWT,
but also superior to the leading alternative methods.
Chapter 9
Deconvolution
The purpose of this chapter is to give an example of a Bayesian application that illustrates
the performance gains possible with complex wavelets. We explain how to use a complex
wavelet image model to enhance blurred images.
The background for this chapter is largely contained in appendix C which reviews a
number of deconvolution methods from a Bayesian perspective. We construct an empir-
ical Bayes image prior using complex wavelets and experimentally compare a number of
different techniques for solving the resulting equations.
We compare the results with alternative deconvolution algorithms including a Bayesian
approach based on decimated wavelets and a leading minimax approach based on a special
nondecimated wavelet [58].
The main original contributions are; the new iterative deconvolution method, the ex-
perimental results comparing the results for alternative transforms within the method, and
the experimental comparison with alternative techniques.
9.1 Introduction
Images are often distorted by the measurement process. For example, if a camera lens
is distorted, or incorrectly focused, then the captured images will be blurred. We will
assume that the measurement process can be represented by a known stationary linear
filter followed by the addition of white noise of mean 0 and variance σ 2 . This model can
be written as
y = Hx + n (9.1)
165
166 CHAPTER 9. DECONVOLUTION
where some lexicographic ordering of the original image, x, the observed image, y, and the
observation noise, n, is used. The known square matrix H represents the linear distortion.
As it is assumed to be stationary we can write it using the Fourier transform matrix F as
H = F H MF (9.2)
where M is a diagonal matrix. For an image with P pixels y, x, and n will all be P × 1
column vectors while F , M, and H will be P × P matrices. As both x and n are unknown
equation 9.1 therefore represents P linear equations in 2P unknowns and there are many
possible solutions. This is known as an ill-conditioned problem.
The best solution method depends on what is known about the likely structure of the
images. If the original images are well modelled as a stationary Gaussian random process
then it is well-known that the optimal (in a least squares sense) solution is given by the
Wiener filter. However, for many real world images this model is inappropriate because
there is often a significant change in image statistics for different parts of an image. For
example, in a wavelet transform of an image most of the high frequency wavelet coefficients
tend to have values close to zero, except near object edges where they have much larger
values.
There have been many proposed methods for restoring images that have been degraded
in this way. We restrict our attention to the more mathematically justifiable methods,
ignoring the cruder “sharpening” techniques such as using a fixed high-pass filter or some
simple modification of wavelet coefficients [14]. (These ignored techniques provide a quick,
approximate answer but are less scientifically useful because often they will not provide an
accurate reconstruction even in very low noise conditions.)
For astronomical imaging deconvolution there are three main strands; the CLEAN
method proposed by Högbom [44], maximum-entropy deconvolution proposed by Jaynes
[54, 29], and iterative reconstruction algorithms such as the Richardson-Lucy method [102].
For images containing a few point sources (stars) the CLEAN algorithm can give very accu-
rate reconstructions, but for images of real world scenes these methods are less appropriate.
Alternative image models are found to give better results. Constrained least squares meth-
ods [15] use a filter based regularisation, such as a Laplacian filter, but this tends to give
over smoothed results when the image contains sharp edges. More recently there have been
attempts to improve the performance near edges. These methods include total variation
[123], Markov Random Field (MRF) [56, 132], and wavelet based approaches. There are
9.1. INTRODUCTION 167
two main contrasting methodologies for using wavelets. The first group is based on a min-
imax perspective [38, 52, 58, 84, 87]. The second group is based on a Bayesian perspective
using wavelets to represent the prior expectations for the data [8, 11, 94, 124].
We first describe a general Bayesian framework for image deconvolution. In appendix
C we draw out the connections between the different approaches by reviewing the papers
mentioned above with reference to the Bayesian framework. Section 9.1.2 summarises the
main results from this review. Section 9.1.3 discusses the reasons guiding our choice of prior
model based on the material covered in the appendix. This model is detailed in section 9.2
and then we describe the basic minimisation method in section 9.3. We propose a number
of alternative choices for minimisation that are experimentally compared in section 9.4.
Section 9.5 compares the results to alternative deconvolution methods and section 9.6
presents our conclusions.
2. The likelihood p(y|x) encodes our knowledge about the observation model.
(As before, we use the abbreviation x for the event that the random variable X takes
value x.) All the reviewed methods (except for the Richardson-Lucy method described in
section C.5) use the same observation model and so the likelihood is the same for all of the
methods and is given by
(
P
1 − ([Hx]i − yi )2
p(y|x) = √ exp .
i=1 2πσ 2 2σ 2
Given observations y, Bayes’ theorem can be used to calculate the a posteriori probability
density function (known as the posterior pdf):
p(y|x)p(x)
p(x|y) = . (9.3)
p(y)
168 CHAPTER 9. DECONVOLUTION
There are several techniques available to construct an estimate from the posterior pdf.
Normally a Bayes estimator is based on a function L(θ̂, θ) that gives the cost of choosing
the estimate θ̂ when the true value is θ. The corresponding Bayes estimator is the choice of
θ̂ that minimises the expected value of the function based on the posterior pdf. However,
for the purposes of the review it is most convenient to consider the MAP (maximum a
posteriori) estimate.
The MAP estimate is given by the image x that maximises the posterior pdf p(x|y).
xM AP = argmaxx p(x|y)
Usually a logarithmic transform is used to convert this minimisation into a more tractable
form:
p(y|x)p(x)
xM AP = argmaxx
p(y)
= argmaxx p(y|x)p(x)
= argminx − log (p(y|x)p(x))
= argminx − log (p(x)) − log (p(y|x))
P
([Hx]i − yi )2
= argminx f (x) +
i=1
2σ 2
1
= argminx f (x) + 2
Hx − y
2
2σ
Q = {x :
y − Hx
≤
}
9.1. INTRODUCTION 169
Tikhonov defined the regularised solution as the one which minimises a stabilising func-
tional f (x).
The second form is known as Miller regularisation [80]. In this approach the energy of the
residual is minimised subject to a constraint on the value of f (x).
Using the method of undetermined Lagrangian multipliers it can be shown [15] that both
problems are equivalent to the MAP minimisation (for particular choices of σ).
i σ2 SNRi | [F x]i |
1 2
Wiener filtering (C.4)
1
|mi |2
K − |mi | | [F x]i |2
2
Van Cittert (C.5) i σ2
1 1−(1−αm i)
|mi |2
Landweber (C.5) i σ2 1−(1−α|mi |2 )K
− |mi |2 | [F x]i |2
i λi | [W x]i |
2
Wang (C.10)
|[W x] |
Starck and Pantin (C.10) − i λi [W x]i − mi − | [W x]i | log mi i
i λi | [W x]i |
p
Belge (C.10)
filtering (if we remove the positivity constraint). In appendix C we also explain why we
170 CHAPTER 9. DECONVOLUTION
can approximate both constrained least squares (section C.6) and the Richardson-Lucy
algorithm (section C.5) as alternative special cases of the Wiener filter. The reason for
making these connections is because we can predict an upper bound for the performance
of all these methods by evaluating just the best case of Wiener filtering (the oracle Wiener
filter).
Expressions for f (x) for the total variation (section C.7), Markov Random Field (section
C.7), and Banham and Katsagellos’ methods (section C.10) can also be written down1 but
the projection (section C.3) and minimax (section C.8) methods are more difficult to fit
into the framework. The minimax methods are an alternative approach motivated by the
belief that Bayesian methods are inappropriate for use on natural images. Section C.8
discusses the two approaches and explains why we prefer the Bayesian method.
9.1.3 Discussion
This section discusses the reasons guiding the choice of prior based on the review presented
in appendix C. The main issue is to identify the nature of the dependence between the
pixels in the original image.
For astronomical images of sparsely distributed stars an independence assumption may
be reasonable, while for many other kinds of images (including astronomical images of
galaxies) such an assumption is inappropriate. If independence is a reasonable assumption
then the CLEAN, maximum entropy, and maximally sparse methods are appropriate and
the choice largely depends on the desired balance between accuracy and speed. For ex-
ample, the CLEAN method is fast but can make mistakes for images containing clustered
stars.
For images that are expected to be relatively smooth then the Wiener filter and iterative
methods are appropriate. If the images are known to satisfy some additional constraints
(for example, the intensities are often known to be non-negative for physical reasons) or if
the blurring function is space varying then the iterative methods such as Richardson-Lucy
or constrained least squares are appropriate. Otherwise it is better to use the Wiener filter
because it is fast and approximately includes the iterative methods as special cases.
1
We have not included these expressions because, firstly, they require a considerable amount of spe-
cialised notation to be defined and, secondly, these expressions can easily be found in the literature
[8, 56, 90].
9.2. IMAGE MODEL 171
For images of scenes containing discontinuities then the total variation and wavelet
methods are appropriate. The Markov Random Field and total variation methods are
good for images that are well-modelled as being piecewise flat, but for many natural images
this model is only correct for certain parts of the image while in other parts there may
be textured or smoothly varying intensities. The wavelet methods tend to give a good
compromise for images containing such a mixture of discontinuities and texture.
We are interested in examining the potential of the DT-CWT within deconvolution and
therefore we choose to study the restoration of real-world images rather than sparse star-
fields. The previous section described several ways of constructing a prior with wavelets.
For simplicity we choose to use the quadratic cost function proposed by Wang et al [124].
This choice means that our proposed method will be an empirical Bayes approach based
on the non-stationary Gaussian random process model.
As mentioned in the previous section, we choose to use a simple prior model based on an
adaptive quadratic cost function [124]. This can be considered as a simple extension to
the model of chapter 7. Specifically, we use a generative specification in which the real
and imaginary parts of the wavelet coefficients are independently distributed according to
Gaussian distribution laws of zero mean and known variance. We can write that the prior
pdf p(w) for the wavelet coefficients is proportional to
1 H
exp − w Aw (9.6)
2
distribution and then inverting the wavelet transform x = P w. The only difference to the
previous model is that the variances are allowed to vary between coefficients rather than
being the same for all coefficients in a given subband. We assume that each coefficient has
an equal variance in its real and imaginary parts.
Figure 9.2 contains a flow diagram of this method. Section 9.3.1 explains the estimation
steps. During the estimation we compute a first estimate x0 of the original image. The
9.3. ITERATIVE SOLUTION 173
Start
Image Initialisation
Calculate Search
Direction
Minimise Energy
along search direction
Have we done No
enough iterations?
Yes
Stop
Figure 9.2: Flow diagram for the proposed wavelet deconvolution method.
174 CHAPTER 9. DECONVOLUTION
detail of this image will probably be unreliable but the lowpass information should be fairly
accurate. We initialise the wavelet coefficients to zero, and the scaling coefficients to the
scaling coefficients in the transform of the image x0 . Later in section 9.4 we will propose
a better initialisation. Section 9.3.2 explains how the search direction is chosen. Section
9.3.3 explains how to minimise the energy within a one dimensional subspace.
where R(i) is the index of the real part, and I(i) the index of the imaginary part of
the complex wavelet coefficient corresponding to index i.
These steps are represented in figure 9.3 by the Estimate Wavelet Variances block.
A simple estimate for the original image would be the observed data x̂ = y. However,
for a typical blurring operation this would underestimate the variances of the coefficients
at detailed scales. Alternatively we could compute a deconvolved image via the filter
of equation C.5. Full regularisation (α = 1) corresponds to using a Wiener denoised
estimate. Wiener estimates tend to have smoothed edges and will therefore tend to produce
underestimates of the variances near edges. Smaller values of α will preserve the signal
more, but also contain more noise and thus produce overestimates of the variances. Our
9.3. ITERATIVE SOLUTION 175
Observed Image
Initial estimate of x
Wavelet denoising
Second estimate of x
Estimate
wavelet variances
A
Figure 9.3: Block diagram of deconvolution estimation process.
176 CHAPTER 9. DECONVOLUTION
chosen approach is to use the under regularised inverse (with α = 0.1) followed by soft
thresholding wavelet denoising.
The filter of equation C.5 requires (for α = 0) an estimate of the power spectrum of the
original image. This kind of estimate is often required in deconvolution [84, 48]. In some
experiments we will use the oracle estimate given by the square of the power spectrum of
the original image (before convolution). This is called an oracle estimate because it requires
knowledge of the original image but this information will naturally not be available in any
real application. Nevertheless, such an estimate is useful in testing methods as it removes
the errors caused by bad spectrum estimates. We will always make it clear when we are
using such an oracle estimate2
In a real application we need a different estimation technique. Autoregressive and
Markov image models have been used to estimate image statistics [21] but it is reported
that the method only works well in noise reduction and not in blur removal [48]. The
constrained least squares method is a variant in which the autocorrelation is assumed to be
of a known form [5]. Hillery and Chin propose an iterative Wiener filter which successively
uses the Wiener-filtered signal as an improved prototype to update the power spectrum
estimate [48]. Within this dissertation we are more concerned with the performance of
wavelet methods than classical estimation theory and we use a fast and simple alternative
estimation technique.
where β is a parameter used to avoid over amplification near zeros of the blurring
filter. We use β = 0.01 in the experiments. Any negative elements in the estimated
power spectrum are set to zero.
where P̂x is a diagonal matrix whose diagonal entries are given by p̂x . This gives the
under-regularised image estimate x̂0 that is further denoised using wavelets. This filtering
is represented by the Under-regularized Deconvolution block in figure 9.3.
A similar approach is used to perform the initial wavelet denoising. First the signal
strengths are estimated for each wavelet coefficient and then a Wiener-style gain is applied
to each coefficient. The details of this algorithm are:
1. Calculate the complex wavelet transform of the image estimate x̂0 . Let wi be the
ith complex wavelet coefficient in the output of this transform. It is important that
wi is complex-valued here. In the rest of this chapter except for the four steps of
this algorithm we use the separated real form of the transform, but here it is more
convenient to use the complex form.
where σi2 is the variance of the noise in the wavelet coefficient and γ takes some
constant value.
The original white noise of variance σ 2 is coloured by both the wavelet transform
and the inverse filtering. The parameters of both these processes are known which
in theory allows the exact calculation of σi2 . The value of σi will be the same for all
coefficients within the same subband (because the filtering is a stationary filter and
different coefficients in a subband correspond to translated impulse responses). In
practice it is easier to estimate these values by calculating the DT-CWT of an image
containing white noise of variance σ 2 that has been filtered according to equation
178 CHAPTER 9. DECONVOLUTION
9.8. The average energy of the wavelet coefficients in the corresponding subbands
provide estimates of σi2 .
A choice of γ = 1 would seem to give a good estimate of the original signal power.
However, with this choice there is a significant probability that a low power coefficient
will be incorrectly estimated as having a high energy. This is because the noise only
corrupts the coefficients with an average energy of σi2 . In practice we find it is better
to use a larger value to avoid this problem. In the experiments we will always use
γ = 3.
3. New wavelet coefficients are generated using a Wiener style gain law.
âi
ŵi = wi (9.10)
âi + σi2
4. The inverse DT-CWT is applied to the new wavelet coefficients to give an image x̂.
These steps are represented by the Wavelet Denoising block of figure 9.3.
h(i) = g(i)
9.3. ITERATIVE SOLUTION 179
|g(i) |2 (i−1)
h(i) = g(i) + h .
|g(i−1) |2
This formula is valid for i > 0. For the first pass, i = 0, the search direction for the
conjugate gradient algorithm is given by h(0) = g(0) .
We compare three types of preconditioning. The first type corresponds to no precon-
ditioning and g(i) is given by the negative gradient of the energy function (E was defined
in equation 9.7),
g(i) = −∇w E
= P H H H y − P H H H HP w − Aw.
The Hessian for our system is P H H H HP + A and so the ideal preconditioner would
H H −1
be P H HP + A which would transform the Hessian to the identity matrix but this
matrix inversion is far too large to be numerically calculated. Instead for the second type we
choose a simpler type of preconditioning that scales the energy function gradient in order
to produce a Hessian with diagonal entries equal to 1. Define scaled wavelet coefficients as
v = S −1 w where S = diag {s} for some vector of scaling coefficients s. The Hessian of the
energy expressed as a function of v is
∇2v E = S H P H H H HP S + S H AS
where ti is the ith diagonal entry of the matrix P H H H HP + A. The required scaling is
√
therefore si = 1/ ti . The gradient is given by
∇v E = S H ∇w E.
This defines appropriate directions for changes in the preconditioned coefficients v. Ap-
propriate directions for changes to the original coefficients w are therefore given by
g(i) = S∇v E
= S 2 ∇w E.
180 CHAPTER 9. DECONVOLUTION
This method requires the precomputation of ti . The diagonal entries of A are known (these
are the inverses of the variance estimates) so consider the matrix P H H H HP . The entry ti
can be calculated by:
1. Set all wavelet coefficients to zero, except for the ith coefficient which is set to 1, to
get a unit vector ei .
7. Calculate ti , ti = Aii + pi .
The value of pi depends only on which subband contains the nonzero coefficient. We can
therefore compute all the pi by applying this process once for each subband. Also note that
because these values (for pi ) depend on the choice of blurring filter and wavelet transform
but not on the observed data they can be computed once and used for many different test
images.
The third type of preconditioning is based on analogy with the WaRD method [84].
To explain the analogy we first derive the analytic solution to the energy minimisation
problem. The expression for energy (equation 9.7) is a quadratic function of w and hence
the optimum can be found by setting the gradient equal to zero. The vector gradient of
the energy is
∇E(w) = −P H H H y + P H H H HP w + Aw
the logic to say that a reasonable method for solving the original equations will probably
also give a reasonable preconditioning method. On the basis of this logic we propose using
the WaRD method as a preconditioner because ee have found that it gives a good first
approximation to solving the original equations.
We now give the details of how this idea is applied. The WaRD method consists of a
linear filtering stage followed by a wavelet denoising stage. We can write the regularised
linear filtering used in the WaRD method as
Px
xα = F H F HHy
M H MP
2
x + ασ IN
P x
= FH H 2
F P P HHHy
M MPx + ασ IN
where Px is a diagonal matrix containing the estimated PSD of the image along the diagonal
entries. If we compare this equation with equation 9.11 we spot the term P H H H y on the
right of both equation. We deduce that in the WaRD method the rest of the terms together
with the wavelet denoising should provide an approximation to the ideal preconditioner.
On the basis of this analogy we will choose a search direction that is the wavelet denoised
version of the image
Px
xα = F H F P (−∇E|w ) (9.12)
M H MP 2
x + ασ IN
We use the same strategy except that we are calculating a search direction in wavelet space
and so we can omit the final step. The WaRD search direction is therefore given by
g(i) = ŵ.
182 CHAPTER 9. DECONVOLUTION
We can minimise this expression by setting the derivative with respect to a equal to zero
d(E(a))
= a
HP δw
2 + aδw H Aδw
da
−
δw H P H H H (y − HP w0 ) +
δw H Aw0 = 0
therefore
δw H P H H H (y − HP w0 ) −
δw H Aw0
a=
HP δw
2 + δw H Aδw
When we want to evaluate this expression we never need to do any matrix multiplications
because:
For large blurring filters it is quicker to implement the linear filters using a Fourier trans-
form.
PRESD for the steepest descent preconditioned to have ones along the diagonal of the
Hessian matrix.
PRECG for the conjugate gradient algorithm used with the preconditioned system.
WaRDCG for search directions defined by the conjugate gradient algorithm acting on
the WaRD directions.
We use the oracle estimate for the power spectrum of the original image in order that the
SNR will be a measure of the convergence of the algorithm rather than of the quality of
the power spectrum estimate. Figure
9.4 plots the improvement in SNR (ISNR) defined by
10 log 10
x − y
2 /
x − x̂
2 for the sequence {x̂(1) , x̂(2) , . . . , x̂(10) } of restored images
(n)
1. The same initialisation is used for all methods and therefore all methods have the
same performance at the start of iteration 1.
2. The first pass of the conjugate gradient algorithm uses a steepest descent search
direction and therefore the CG and SD methods give the same performance at the
start of iteration 2.
3. The CG algorithm gives better results than the SD algorithm for the PRE and
NOPRE methods but not for the WaRD iterations.
5. The WaRD method achieves a high ISNR after the first pass, but there is little
subsequent improvement.
6. The results from the preconditioned method (PRE) start at a low ISNR but steadily
improve (a later experiment will show the performance over many more iterations).
7. The ISNR actually decreases on several of the steps when the WaRD direction is
used.
184 CHAPTER 9. DECONVOLUTION
12
11
WaRD
10
9
ISNR/dB
6 PRE
4 NOPRE
3
1 2 3 4 5 6 7 8 9 10
Iteration
Figure 9.4: Performance of different search directions using the steepest descent (x) or the
conjugate gradient algorithm (o).
9.4. CONVERGENCE EXPERIMENTS AND DISCUSSION 185
The WaRD direction is designed to give an estimate of the deconvolved image based on
the assumption that the signal and noise are diagonalised in wavelet space [58]. This is a
reasonable initial approximation and consequently the WaRD direction works well the first
time. However, for subsequent iterations we expect the off-diagonal elements to become
more significant and therefore it is not surprising that the WaRD direction is less effective.
We will discuss the unusual performance of the WaRD direction more at the end of this
section.
In the second experiment we use the WaRD method to initialise the wavelet coefficients
(step Initialisation of figure 9.2). More precisely, we calculate the wavelet transform
of the image x0 (defined in equation 9.8) and then use the WaRD modification step of
equation 9.13 to generate our initial wavelet coefficient estimates. We will call this “WaRD
initialisation”. Note that this is the same as using a single pass of the algorithm with a
WaRD direction based on an intialisation of both scaling and wavelet coefficients to zero.
We compare different choices for the second search direction. Figure 9.5 plots the results
of this experiment. Note that we have a much narrower vertical axis range in this figure
than before. The preconditioned conjugate gradient search direction gives the best final
results. There is an improvement of about 0.05dB from using the preconditioned direction
rather than the WaRD direction after 10 iterations, and another 0.05dB from using the
conjugate gradient algorithm rather than the steepest descent algorithm. Note from figure
9.5 that the WaRD intialisation means that the ISNR is about 11.3dB at the start of the
start of the first iteration, while a single iteration of the WaRD direction (starting from the
original initialisation of just the scaling coefficients) only reached about 10.8dB in figure
9.4. This again supports the argument that the WaRD method works best when used as
it was originally designed rather than to construct search directions.
The ISNR is still improving after ten iterations and the third experiment examines the
improvement over 100 iterations. Figure 9.6 compares the performance for the PRECG,
WaRDCG, and PRESD methods on the same image. The PRECG method performs
best initially, reaching its peak of 11.95dB within about 20 iterations, while the PRESD
method requires about 100 iterations to reach the same ISNR level. The WaRDCG method
displays an oscillation of INSR with increasing iteration, finally settling around 11.9dB.
Figure 9.7 plots the value of the energy function E(w) of equation 9.7 at the start of
each iteration. It can be seen that the PRECG method reaches the lowest energy, as
suggested by the ISNR results. In all of the ISNR plots of this section we have seen that
186 CHAPTER 9. DECONVOLUTION
12
11.9 PRECG
PRESD
11.8
WaRDSD
11.7
11.6
ISNR/dB
11.5
NOPRE
11.4
11.3
11.2
WaRDCG
11.1
11
1 2 3 4 5 6 7 8 9 10
Iteration
Figure 9.5: Performance of different search directions using the steepest descent (x) or the
conjugate gradient algorithm (o) starting from a WaRD intialisation.
9.4. CONVERGENCE EXPERIMENTS AND DISCUSSION 187
12
PRECG
11.9
PRESD
11.8
11.7
11.6
ISNR/dB
11.5 WaRDCG
11.4
11.3
11.2
11.1
11
0 20 40 60 80 100
Iteration
0.27
0.26
0.25
0.24
Energy /pixel
0.23
0.22
0.21 WaRDCG
0.2
0.19
PRESD
0.18
PRECG
0.17
0 20 40 60 80 100
Iteration
the WaRDCG method behaves strangely in that the ISNR often decreases with increasing
iterations. Nevertheless, figure 9.7 confirms that the energy function decreases with every
iteration. We have already argued that the WaRD direction should not be expected to
produce sensible search directions except for the first pass (for which it was designed) but
it may still seem strange that the ISNR decreases. Recall that the energy function of
equation 9.7 has two terms, a “observation energy” that measures the degree to which the
current estimate matches the observations, and a “prior energy” that measures how well
the wavelet coefficients match our prior expectations3 . We now suggest an explanation for
how bad directions can cause such problems:
1. At the start of the method the wavelet coefficients are all zero and the estimated
image is a relatively poor fit to the observations. The observation energy is high, and
the prior energy is zero.
2. The first few search directions correct for the most significant places where the ob-
servations disagree with the current estimate at the cost of increasing the size of
some wavelet coefficients. This tends to improve the quality of the estimate. The
observation energy decreases and the prior energy increases.
3. The poor choice of search direction means that some wavelet coefficients are made
large during these initial stages despite having an expected low variance according
to the prior distribution.
4. Subsequent directions attempt to correct for these incorrectly large wavelet coeffi-
cients. The poor choice of search direction means that the direction also introduces
errors elsewhere in the image. The prior energy decreases but now at the cost of in-
creasing the observation energy. This will tend to reduce the quality of the estimate.
In each iteration the total energy (observation energy plus prior energy) decreases but
the internal redistribution of energy between the two terms can cause a corresponding
fluctuation in the ISNR.
We choose ten iterations of the PRECG search direction with a WaRD initialisation as
a reasonably fast and robust choice for the comparisons with alternative methods.
3
Note that we are using the word “prior” in a very loose sense. In our model the matrix A that defines
the prior for a particular image has been generated from the image itself.
9.5. COMPARISON EXPERIMENTS 189
50 50
100 100
150 150
200 200
250 250
50 100 150 200 250 50 100 150 200 250
used above, and an alternative 15 by 15 PSF more like a satellite blurring filter. This
alternative PSF is defined as
1
h(x, y) =
(1 + x2 ) (1 + y 2)
for |x|, |y| ≤ 7. This PSF is plotted in figure 9.9. This gives a product of four test data
sets which we will call
CMSQ for the cameraman image blurred with the square PSF.
CMST for the cameraman image blurred with the satellite-like PSF.
IGNSQ for the satellite image blurred with the square PSF.
IGNST for the satellite image blurred with the satellite-like PSF.
Landweber 235 iterations of the Landweber method. The number of iterations was cho-
sen to maximise the ISNR for the CMSQ image.
190 CHAPTER 9. DECONVOLUTION
0.1
0.08
0.06
0.04
0.02
6
4
2 6
4
0 2
−2 0
−4 −2
−4
−6 −6
Wiener A Wiener filter using a power spectrum estimated from the observed data[48].
Oracle Wiener A Wiener filter using the (unrealisable) oracle power spectrum estimate.
Mirror The non-decimated form of mirror wavelet deconvolution. This algorithm is de-
scribed in detail in appendix C.
PRECGDT-CWT Ten iterations of the PRECG search direction starting from a WaRD
estimate (using the standard DT-CWT filters of the (13-19) tap near orthogonal
filters at level 1 together with the 14-tap Q-shift filters at level ≥ 2).
PRECGDWT The same algorithm as described in the earlier sections for complex wavelets,
but using a real decimated wavelet formed from a biorthogonal 6,8 tap filter set.
PRECGNDWT The same algorithm as described in the earlier sections for complex
wavelets, but using a real nondecimated wavelet formed from a biorthogonal 6,8 tap
filter set. The operation of each step is equivalent to averaging the operation of a
DWT step over all possible translations.
9.5. COMPARISON EXPERIMENTS 191
Figure 9.10: Comparison of ISNR for different algorithms and images /dB
1. The realisable Wiener filter always performs worse than the oracle Wiener by at least
1dB.
2. The Landweber method always performs worse than the Oracle Wiener, but some-
times beats the standard Wiener filter.
3. The Landweber method has a very poor performance on the IGNST image. This
illustrates the problems of an incorrect choice for the number of iterations. Further
tests reveal that for the IGNST image the optimum performance is reached after 36
iterations, reaching a ISNR of 5.4dB.
4. The Mirror wavelet algorithm beats the standard Wiener filter for the satellite like
blurring function (ST), but not for the square blur (SQ).
5. The nondecimated wavelet always performs better than the decimated wavelet.
6. The DT-CWT always performs at least 0.5dB better than any of the other tested
algorithms.
The methods in the second group are always better (in these experiments) than those in
the first group, and the method in the third group is always better than any other.
Finally we attempt to duplicate the experimental setups of published results. Some
authors [124] only present results as images and thus it is hard to compare directly but
usually a measure of mean squared error (MSE) or improved signal to noise ratio (ISNR)
is reported.
The cameraman image with a uniform 9 by 9 blur and a blurred signal to noise ratio
(BSNR) of 40dB was originally used by Banham and Katsaggelos [8] who report an ISNR
of 3.58dB for Wiener restoration, 1.71dB for CLS restoration, and 6.68dB for their adap-
tive multiscale wavelet-based restoration (Constrained Least Squares, CLS, restoration was
described in section C.6 and is another deterministic restoration algorithm whose perfor-
mance on this task will always be worse than the Oracle Wiener solution). Neelamani et
al claim [84] that they use the same experimental setup and quote an ISNR of 8.8dB for
the Wiener filter and 10.6dB for the WaRD method. There is a large discrepancy in the
Wiener filter results. A small discrepancy is expected as different power spectrum esti-
mates result in different estimates; Banham and Katsaggelos [8] explicitly state that that
high frequency components of the spectrum are often lost or inaccurately estimated while
Neelamani et al add a small positive constant to the estimate to boost the estimate at high
frequencies. A close examination of the published figures reveals that in fact the setup is
slightly different for the two cases. Banham and Katsaggelos use a filter that averages the
contents in a square neighbourhood centred on each pixel, while Neelamani et al use a filter
that averages the contents in a square neighbourhood whose corner is at the pixel. This
change in setup does not affect the amount of noise added as the BSNR is insensitive to
shifts, nor does it affect the generated estimates. However, it does affect the ISNR because
the starting SNR (for the blurred image) is considerably lowered by a translation.
Fortunately, the difference merely results in a constant offset to the ISNR values. This
offset is given by the ISNR that results from using the centred blurred image rather than
the displaced one. Let H represent the offset filter and S the translation that centres the
impulse response. The blurred image produced by Neelamani et al is given by Hx + n1 ,
9.5. COMPARISON EXPERIMENTS 193
while Banham and Katsaggelos produce an image of SHx+n2 where n1 and n2 are vectors
of the noise added to the images. The difference ISNRof f set in the ISNR values for an
image estimate x̂ is therefore
x − Hx − n1
2
x − SHx − n2
2
ISNRof f set = 10 log10 − 10 log10
x − x̂
2
x − x̂
2
x − Hx − n1
x − x̂
2 2
= 10 log10
x − x̂
2
x − SHx − n2
2
x − Hx − n1
2
= 10 log10
x − SHx − n2
2
For the Cameraman image the value of this offset is ISNRof f set = 3.4260dB when there is
no noise added. Using a typical noise realisation reduces this to ISNRof f set = 3.4257dB.
We see that the noise levels are very low compared to the errors caused by blurring.
In our experiments we have followed the setup of Neelamani et al in using the displaced
filter. For comparison we have calculated the results of the PRECGDT-CWT and our
version of standard Wiener on the same image. The results from the literature (including
the adjusted results of Banham and Katsaggelos) are shown in table 9.11, our original
results are printed in bold. In these results the CLS method gives the worst results while
Figure 9.11: Comparison of different published ISNR results for a 9 by 9 uniform blur
applied to the Cameraman image with 40dB BSNR.
the PRECGDT-CWT method gives the best. The adjustment for the offset filter shows
that the WaRD method is 0.5dB better than the multiscale Kalman filter (instead of the
claimed 4dB improvement), while the PRECGDT-CWT method is 0.7dB better than the
WaRD method (and 1.2dB better than the multiscale Kalman filter).
194 CHAPTER 9. DECONVOLUTION
Figure 9.12 displays the deconvolved images for our Wiener and PRECGDT-CWT
approaches. This setup is exactly the same as for the initial experiments in section 9.4.
Figure 9.12: Deconvolution results for a 9 by 9 uniform blur applied to the Cameraman
image with 40dB BSNR using the PRECGDT-CWT method with WaRD initialisation.
The results for our method are slightly worse here (11.32dB instead of 11.9dB) because we
are now using a realisable estimate of the power spectrum. From figure 9.12 we can see
that the results of the PRECGDT-CWT method are considerably sharper and possess less
residual noise than the results of the Wiener filter.
Belge et al use a Gaussian convolutional kernel [11]
1
h(x, y) = exp −(x2 + y 2 )/(2σx σy )
4σx σy
with σx = σy = 2 to blur the standard 256 × 256 Mandrill image and add zero mean white
Gaussian noise to achieve a BSNR of 30dB. This is an unusual way of writing the kernel
9.5. COMPARISON EXPERIMENTS 195
(normally there would be a factor of π for normalisation and σx2 σy2 would be used to divide
x2 + y 2 ) but this is the kernel specified in the paper [11]. Their results are presented in
root mean square error ( RMSE = (1/N 2 )
x̂ − x
2 ) which we have converted to ISNR
values (ISNR = −20 log10 (RMSE/R0 ) where R0 is the RMSE of the blurred image). They
compare their method to CLS and a total variation algorithm. Table 9.13 compares these
results with the PRECGDT-CWT method (using a realisable power spectrum estimate).
Our original results are written in bold. We see that in this experiment the PRECGDT-
Figure 9.13: Comparison of different published ISNR results for a Gaussian blur applied
to the Mandrill image with 30dB BSNR.
CWT method improves the results by 0.46dB compared to the adaptive edge-preserving
regularization method. The original, blurred, and restored images using our method are
shown in figure 9.14. One warning should be attached to these results: the definition
of SNR is not explicitly stated in the reference, we assume the definition (based on the
variance of the image) given in section 9.4.
Sun [115] used a uniform 3 by 3 blur and 40dB BSNR acting on a 128 by 128 version
of Lenna to test a variety of Modified Hopfield Neural Network methods for solving the
Constrained Least Squares formulation. Sun tested three new algorithms (“Alg. 1”, ”Alg.
2”, ”Alg. 3”) proposed in the paper [115] plus three algorithms from other sources (the
“SA” and “ZCVJ” algorithms [133], and the “PK” algorithm [92]). We claim in section
C.6 that the converged solution must be worse than the Oracle Wiener estimate, but
acknowledge that intermediate results may be better. We tested the PRECGDT-CWT
method (using a realisable power spectrum estimate) and two choices of Wiener filter (the
oracle Wiener filter, and a Wiener filter based on the same power spectrum estimate as used
in the PRECGDT-CWT method) on this problem. The results of all these comparisons is
shown in figure 9.15. Our original results are written in bold.
196 CHAPTER 9. DECONVOLUTION
Original
Blurred Restored
Figure 9.14: Deconvolution results for a Gaussian blur applied to the Mandrill image with
30dB BSNR using the PRECGDT-CWT method with WaRD initialisation.
9.5. COMPARISON EXPERIMENTS 197
The best of the previously published results is the “SA” algorithm which attains an
ISNR of 7.19dB. This is better than the realisable Wiener filter results, but almost 1dB
worse than the Oracle Wiener estimate. The PRECGDT-CWT method does particularly
well in this case4 , outperforming the “SA” algorithm by 2.7dB.
9.5.1 Discussion
Mirror wavelets are designed for hyperbolic deconvolution. The inverse filtering produces
large noise amplification for high frequencies and, in order to achieve a bounded variation in
the amplification for a particular subband, the subbands have a tight frequency localisation
for high frequencies. This is an appropriate model for the satellite-like PSF. However, the
9 by 9 smoothing filter (SQ) has many zeros in its frequency response and consequently
the mirror wavelets are inappropriate and give poor results. A better performance could
be achieved by designing a more appropriate wavelet transform but no single wavelet
transform will be best for all blurring functions. In contrast, the Bayesian approach uses
one term (the prior) to encode the information about the image using wavelets, while a
second term (the likelihood) is used to describe the observation model and makes explicit
use of the PSF. A change in PSF requires a change in the likelihood term but the same
4
In this method we use a centred blurring filter to avoid the artificial BSNR improvement described
earlier.
198 CHAPTER 9. DECONVOLUTION
prior wavelet model should remain appropriate. Therefore the same wavelet method gives
good performance for both of the blurring functions.
If we now look at the relative performance of different wavelets we see a familiar result.
The nondecimated wavelet transform outperforms the decimated wavelet transform. The
decimated wavelet gives shift dependent results, and shift dependence will always tend to
cause worse performance for estimation tasks like this one (as discussed in section 8.4.4).
However, the improvement is only about 0.2dB. A much larger improvement is gained from
using the DT-CWT which is an average of 1.15dB better than the NDWT. It is not hard to
see a plausible reason for this; the worst errors occur near edges and the DT-CWT is able to
distinuish edges near 45◦ from those near −45◦ . The signal energy near diagonal edges will
therefore tend to be concentrated in a smaller proportion of the wavelet coefficients than
for a real wavelet transform and hence will be easier to detect. Note in particular that the
PRECGDT-CWT method outperforms even the Oracle Wiener method and consequently
will perform better than any version of standard Wiener filtering, including the Landweber
or Van Cittert iterative techniques.
We have achieved our goal of comparing the performance of complex wavelets with
decimated and nondecimated real wavelets in a practical deconvolution method but we
have certainly not “solved” deconvolution or even fully exploited the potential of complex
wavelets in this application. The most promising direction for further research is by taking
account of the correlations between wavelet coefficients. Deconvolution methods tend to
produce rather blurred estimates near edges in the original image that significantly affect
both the SNR and the perceived quality of the restoration. It may be possible to use the
HMT (Hidden Markov Tree [24]) to deduce the likely presence of large wavelet coefficients
(at a fine detail scale) from the presence of large coefficients at coarser scales and hence im-
prove the estimation. This approach has already been shown to be promising for standard
denoising when there is no blur (as described in chapter 3).
All the results here are based on simulated data in order to allow the performance to
be objectively measured. In real world applications the following isses would need to be
addressed:
1. The estimation of the noise variance and the Point Spread Function (PSF) of the
blurring filter.
9.6 Conclusions
We conclude that
1. The WaRD algorithm gives a good starting point for the method but provides inad-
equate subsequent directions.
3. The NDWT outperformed the DWT in this approach by about 0.2dB. Shift depen-
dence therefore has a small effect on performance.
5. The Mirror wavelet method performed badly on the 9 by 9 uniform blur due to the
presence of extra zeros in the response. Such minimax algorithms must be tuned to
the particular blurring case.
6. The Landweber and Van Cittert iterative algorithms are special cases of Wiener
filtering, and hence are worse than Oracle Wiener filtering.
7. The DT-CWT method performed better than the Oracle Wiener and hence bet-
ter than all versions of standard Wiener filtering, including methods based on the
Landweber or Van Cittert iteration.
8. The method based on the DT-CWT performed better than all the other methods
tested and better than the published results on similar deconvolution experiments.
In summary, complex wavelets appear to provide a useful Bayesian image model that is
both powerful and requires relatively little computation.
200 CHAPTER 9. DECONVOLUTION
Chapter 10
The aim of the dissertation is to investigate the use of complex wavelets for image process-
ing. In particular, we aim to compare complex wavelets with alternative wavelet trans-
forms. In this chapter we explain how the contents of the dissertation support the thesis
that complex wavelets are a useful tool and then discuss the wider implications of the
research. Many peripheral results have already been mentioned in the conclusions section
at the end of each chapter and we will not repeat them here.
First we describe the experimental support for the thesis. We have examined four main
image processing tasks that are described in chapters 5, 6, 8, and 9. For every applica-
tion the experimental results for the complex wavelet methods display an improvement
in accuracy over the standard decimated wavelet methods. These improvements can be
seen qualitatively in the synthesized textures of chapter 4 and most clearly quantitatively
in chapter 9. For most of the applications the complex wavelet method also gives better
results than the nondecimated wavelet transform. The exception is chapter 8 on inter-
polation. For this application the complex wavelet method produces almost exactly the
same results as the nondecimated transform. Nevertheless this application still supports
the thesis because the new method is much faster than the non-decimated method.
For each application we have compared wavelet methods with alternative methods to
determine when the wavelets are useful. The complex wavelet models were found to be
particularly good for segmentation of differently textured regions and image deconvolution.
These cases provide the main experimental justification that complex wavelets are useful
for image processing.
Now we describe the theoretical support for the thesis. There are two main reasons
201
202 CHAPTER 10. DISCUSSION AND CONCLUSIONS
why the complex wavelets are expected to give better results. The first is increased di-
rectionality. It is usually clear why this should increase performance although the precise
amount of improvement will be strongly dependent on the nature of the input images.
Therefore qualitative explanations are given rather than mathematical proofs. In chapter
4 we explain why the extra subbands are necessary for synthesizing texture with a diago-
nal orientation. As a natural corollary we explain in chapter 5 why the extra features are
useful for segmentating textures with diagonal features. The extra subbands also give a
better model for the object edges that commonly appear in images and this results in the
improved deconvolution performance of chapter 9.
The second main reason for improved results is the reduction in shift dependence as
compared to the standard fully decimated wavelet transform. Chapter 2 proves that any
non-redundant wavelet system based on short filters will have significant shift dependence.
Chapter 8 calculates an approximation for the reduction in SNR caused by shift dependence
for interpolation that predicts that complex wavelets should achieve a significant increase
in quality compared to a typical real decimated wavelet.
10.1 Discussion
The experimental comparisons did not always favour a complex wavelet model. The models
were found to be too simple for synthesizing more regular textures like brickwork. The
models were also found to be unnecessarily complicated for interpolating a stationary
random process with an isotropic autocorrelation function. In this case a solution based
on the Gaussian Pyramid transform would be both faster and less shift dependent.
The DT-CWT has a number of properties that are beneficial in different circumstances:
1. Perfect reconstruction
5. Complex outputs
10.2. IMPLICATIONS OF THE RESEARCH 203
Table 10.1 summarises the importance of these properties for a number of applications. A
√
indicates that the property is useful for the corresponding application. We include three
types of application:
A The applications we have tested that are described in the main body of the dissertation.
B The applications we have tested that are not described in this dissertation but have
been published elsewhere [33, 34].
We would expect complex wavelets to be most useful for the applications (such as decon-
volution) that require all of the properties.
dissertation will help to add complex wavelets to the list of good general purpose transforms
that are automatically considered for a new problem. This is not only on the grounds that
the DT-CWT provides an efficient substitute for the NDWT, but on the stronger claim
that the DT-CWT often improves the results over even nondecimated real transforms.
Chapter 11
Future work
In this dissertation we have shown how complex wavelets can be used on a small selection of
image processing tasks. We have proposed a number of simple methods based on the DT-
CWT that produce good results. This chapter discusses possible future research directions
for these tasks and suggests some additional applications.
11.1 Segmentation
We have demonstrated the power of the complex wavelet features for supervised texture
segmentation. This method is appropriate for the task of classifying satellite imagery into
urban and non-urban regions but images taken at more moderate distances of real world
objects will contain a mixture of image types. Texture-based segmentation will not always
be appropriate and it may be possible to combine the segmentation method described
here with more traditional edge-based segmentation algorithms. A single complex wavelet
transform could be used for detecting both texture and the object edges. Large complex
wavelet coefficients correspond to edges in an image and a simple edge detector can be
built by simply detecting such large coefficients. At each position we have responses in the
six bandpass subbands which allow the orientation to be estimated.
In some preliminary work along these lines we have found that it is possible to signifi-
cantly improve the coarse estimates from this simple scheme using a reassignment technique
[6].
Another possibility is to extend the Hidden Markov Tree (HMT) model [28] to unify
texture and edge based segmentation by adding extra hidden states that encode a form of
205
206 CHAPTER 11. FUTURE WORK
image grammar. This grammar could be used to generate regions that can be recognised
by their texture content, by the presence of large wavelet coefficients near their boundaries,
or even a combination of these. It may even be possible to use the HMT directly for object
recognition if a sufficiently sophisticated grammar is used.
11.3 Deconvolution
We mentioned in chapter 9 that the most promising direction for future research in de-
convolution is taking account of the correlations between wavelet coefficients. By using
models such as the HMT to give a better prior model for images we hope that the results
will also improve.
An alternative direction is the possibility of using the method for a “super-resolution”
application. Super-resolution is the name for the process of constructing a single high
11.4. OTHER POSSIBILITIES 207
quality image from multiple low quality views of the same image. For example, if a low
resolution video camera is used to film a document then, while individual frames may
be unreadable, it may be possible to construct a readable estimate by combining the
information from several frames. The basic mathematics is very similar but there is the
added complication of having to estimate an appropriate transformation to place all of the
images onto a common reference grid.
5. A rescaling by a factor of r of the contour will change the magnitude of every coeffi-
cient by a factor of r.
j=N
i=M
= σ2 Wij2 (A.3)
i=1 j=1
Now consider the trace of W T W (given by the sum of the diagonal elements)
j=N
T
tr(W W ) = WTW jj
(A.4)
j=1
j=N i=M
= WT ji
Wij (A.5)
j=1 i=1
209
210 Appendix A.2
j=N i=M
= Wij Wij (A.6)
j=1 i=1
j=N
i=M
= Wij2 (A.7)
i=1 j=1
Putting equations A.7 and A.3 together we get the desired result that the expected
total output energy is tr(W T W )σ 2 .
Suppose now we consider the model described in section 2.5.1. We have wavelet coeffi-
cients v consisting of the original wavelet coefficients w = W x plus a vector n containing
independent white Gaussian noise of mean zero and variance σ 2 .
v =w+n
In words, the energy of the error is given by the energy of the output of the linear transform
P applied to a vector of white noise. Using the first result of this section we can write that
the expected energy of the error is given by tr(P T P )σ 2 . Using definition 2.14 we are now
in a position to write down a first expression for the noise gain g,
E {
y − x
2 }
g =
E {
v − w
2 }
tr(P T P )σ 2
=
Mσ 2
tr(P T P )
=
M
1 2
N M
= P .
M i=1 j=1 ij
U, S, V such that
W = USV T (A.8)
where
• S has size M by N and is zero except for entries on the main diagonal S1,1 , ..., SN,N .
A
x
2 ≤
W x
2 ≤ B
x
2 (A.10)
Consider
W x
2 ,
W x
2 = xT W T W x (A.11)
= xT V S T U T USV T x (A.12)
= xT V S T SV T x (A.13)
= yT S T Sy (A.14)
i=N
= di yi2 (A.15)
i=1
i=N
where y = V T x. All the di are real and non-negative and so clearly i=1 di yi2 varies
between dN
y
2 and d1
y
2 as dN and d1 are the smallest and largest of the di . Note that
212 Appendix A.5
by writing ek for the vector in R N with a 1 in the kth place and zeros elsewhere, we can
attain these bounds by y = eN or y = e1 .
Also note that because V T V = V V T = I,
x
2 = xT x = xT V V T x =
V T x
2 =
y
2 .
Putting these last results together we discover that ∀x ∈ R N
dN
x
2 ≤
W x
2 ≤ d1
x
2 (A.16)
with the bounds attainable by x = V eN or x = V e1 . This means that the tightest possible
frame bounds for the transform are dN and d1 and that the wavelets associated with the
transform form a frame if and only if dN > 0.
tr(QT Q)σ 2 1
= tr(QT Q) (A.29)
Mσ 2 M
1
= tr((V (S T S)−1 S T U T )T V (S T S)−1 S T U T ) (A.30)
M
1
= tr((US(S T S)−1 V T )V (S T S)−1 S T U T ) (A.31)
M
214 Appendix A.7
1
= tr(US(S T S)−1 (S T S)−1 S T U T ) (A.32)
M
1
= tr((S T S)−1 S T U T US(S T S)−1 ) (A.33)
M
1
= tr((S T S)−1 S T S(S T S)−1 ) (A.34)
M
1
= tr((S T S)−1 ) (A.35)
M
1 1
i=N
= (A.36)
M i=1 di
Q represents the transform with minimum noise gain and we conclude that any linear
perfect reconstruction transform that is used to invert W has noise gain bounded below
i=N 1
by M1 i=1 di and this lower bound is achievable.
= tr(P T P ) − N (A.41)
where we have used that P W = IN (as P is a perfect reconstruction transform) and that
tr(W T W ) = N (from the normalisation condition). We can rearrange this last result to
find that:
g = (N + U)/M (A.42)
tr(P T P )
where g = M
is the noise gain of the reconstruction and U = tr (P − W T )(P T − W )
is the unbalance.
216 Appendix A.7
Appendix B
Useful results
B.1 Summary
This appendix contains a number of useful mathematical results. The results are not
original but are included (expressed in the notation of this dissertation) for the sake of
completion. Although some of the proofs are long, they are all relatively straightforward.
Lemma 1 If Z and Y are independent zero mean wide sense stationary discrete Gaussian
random processes, then the covariance of Z + Y is given by the sum of the covariances of
Z and Y.
Proof. Let RZ (d) be the covariance of Z for vector displacement d and similarly let RY (d)
be the covariance of Y. The covariance RZ+Y of the sum of the random processes is given
by
where we have made use of E {AB} = E {A} E {B} for independent random variables,
and that E {Za } = E {Zb } = 0 as the processes are zero mean. We have also made use of
217
218 Appendix B.1
the equivalence between correlation and covariance for zero mean processes, noting that
Z + Y will also have zero mean.
Proof. Suppose the filter is given by f (r) where r is the radius. Then as the filter is
separable we know that
f (r) = g(x)h(y)
and if we assume f (0) = 1 we can adjust the scaling of g and h such that g(0) = h(0) =
f (0) = 1. Then we can set y = 0 to find
h=g=f
and so w(a) is a linear function with w(0) = log f (0) = log 1 = 0. Therefore w(a) = ka
for some constant k and we can write the filter as
thus showing that the filter must be a Gaussian. If f (0) = A then it is easy to show the
filter is of the form f (r) = A exp{kr 2 }.
Lemma 3
1 1
exp − (z − a) A (z − a) exp − (z − b) B (z − b)
T T
2 2
1 −1 T −1
∝ exp − z − (A + B) (Aa + Bb) (A + B) z − (A + B) (Aa + Bb)
2
Appendix B.1 219
Proof.
1 T 1 T
exp − (z − a) A (z − a) exp − (z − b) B (z − b)
2 2
1
= exp − (z − a) A (z − a) + (z − b) B (z − b)
T T
2
1 T
= exp − z Az − 2z Aa + a Aa + z Bz − 2z Bb + b Bb
T T T T T
2
1 T
= exp − z (A + B) z − 2z (Aa + Bb) + a Aa + b Bb
T T T
2
1 −1 T −1
= k exp − z − (A + B) (Aa + Bb) (A + B) z − (A + B) (Aa + Bb)
2
where
1 −1
k = exp − − (Aa + Bb) (A + B) (Aa + Bb) + a Aa + b Bb
T T T
2
Proof. This is a special case of the matrix inversion lemma, but we shall prove it
directly by multiplying the RHS by the inverse of the LHS.
−1
2
I/σM 0 C D
+
0T 0 DT σ 2
C D C 2 −1
− IσM +C C D
DT σ 2 DT
−1
2
I/σM 0 C D C D C D
= +
0T 0 DT σ 2 DT σ 2 DT σ 2
I/σM2
0 C 2 −1
− IσM +C C D
0T 0 DT
−1
C D C 2 −1
− IσM +C C D
DT σ 2 DT
220 Appendix B.2
2
C/σM 2
D/σM 2
C/σM +I−I 2 −1
= +I− IσM +C C D
0T 0 0T
−1
C D C D 2
(IσM +C)
−1
− C D
DT σ 2 DT σ 2 0T
2
C/σM 2
D/σM 2
C + IσM −1
2
= T
+I− T
IσM +C C D 2
/σM
0 0 0
I 2
−1 2
(IσM +C)
−1
+ IσM +C C D − C D
0T 0T
2
C/σM 2
D/σM 2
C + IσM 2
−1
= T
+I− T
IσM +C C D 2
/σM
0 0 0
2
(IσM +C)
−1 2
(IσM +C)
−1
+ C D − C D
0T 0T
2
C/σM 2
D/σM I
= T
+I− T
C D 2
/σM
0 0 0
= I
where we have stacked the first S random variables into a column vector Γ, C is the
covariance between the values at the first S locations, D is the covariance between Zk and
the random variables for the first S locations, and σk2 is the variance of Zk .
The measurement equation 8.3 can be expressed as
Y s N Γ, σ2 IN (B.2)
p(Zk = z, Γ = γ | Y = y) =
T −1
1 γ C D z
k exp −
y − γ
2 /2σ 2 exp −
2 z DT σk2 z
T
1 γ−y 2
IS σ 0 γ −y
= k exp −
2 z 0 T
0 z
T −1
1 γ C D γ
exp − T
2 z D σk 2
z
where k is a normalisation constant that ensures that the expression is a valid pdf. Using
lemma 3 we can write that
T
1 γ γ
p(Zk = z, Γ = γ | Y = y) ∝ exp − −a A−1 −a
2 z z
where
−1 −1
2
IS /σ 0 C D
A = +
0T 0 DT σk2
IS /σ 2 0 −y
a = A
0T 0 0
222 Appendix B.2
−y/σ 2
= A
0
and so we have proved that the joint posterior distribution is a multivariate Gaussian
distribution with mean a and covariance matrix A.
We are now able to compute the posterior distribution for Zk alone. If we write Zk as
T
0 Γ
Zk =
1 Zk
we can use the algebraic identity proved in lemma 4 to simplify A and calculate that Zk
has a normal distribution with mean
T T
0 0 y/σ 2
a = A −
1 1 0
T
0 C D C 2 −1
= − − σ IS + C C D
1 DT σk2 DT
−y/σ 2
0
T
D −y/σ 2
−1
= − − DT σ 2 IS + C C D
σk2 0
−1
= DT y/σ 2 − DT σ 2 IS + C Cy/σ 2
−1 2 −1
= DT σ 2 IS + C σ IS + C y/σ 2 − DT σ 2 IS + C Cy/σ 2
−1
= DT σ 2 IS + C y.
Appendix C
C.1 CLEAN
The CLEAN algorithm [44] consists of two steps that are repeated until the energy of the
residual is below a certain level (Tikhonov regularisation). The algorithm starts with a
blank image x(0) and produces a sequence of restored images x(1) , . . . , x(k) . The steps at
the k th iteration are
1. Find the strength s and position of the greatest intensity in the residual image y −
Hx(k−1) . Let m(k) be the index of this greatest intensity.
2. Add a point to the restored image at the peak position of strength s multiplied by a
damping factor γ known as the loop gain.
[x(k−1) ]i + sγ i = m(k)
[x(k) ]i =
[x(k−1) ]i i = m(k)
Let K be the number of iterations before convergence. The output of the algorithm is
x(K) , the last restored image (for cosmetic reasons this output is often smoothed with a
223
224 Appendix C.1
Gaussian after this restoration process). More efficient implementations of this method
exist, two examples are the Clark algorithm [25] and the Cotton-Schwab algorithm [106].
Marsh and Richardson have proved [79] that under certain conditions the CLEAN esti-
mate is equivalent to the MAP maximisation described in section 9.1.1 (and the additional
constraint that xi ≥ 0 for all i) with the choice of
f (x) = − log(β) + α xi
i
where α is chosen to make the algorithm terminate with K non-zero point sources in the
estimate and β is a constant chosen so that the prior corresponds to a valid pdf (with total
integral equal to one). The conditions for the proof to hold are essentially that the original
image consists of sufficiently well-separated point sources.
This choice of f (x) corresponds to a prior pdf of
p(x) = β exp −α xi I(X)
i
(
= β I(xi ) exp {−αxi }
i
where p is a shape parameter that is normally in the range 0 < p < 1 for astronomical
denoising. This corresponds to a model in which the prior distribution for each pixel’s
intensity is an independent and identically distributed, one sided generalised p Gaussian.
Appendix C.2 225
The generalised p Gaussian distribution is also known as the Box-Tiao distribution and
includes many other distributions for specific choices of the shape parameter (e.g. p = 1
for exponential, p = 2 for Gaussian, p → ∞ for uniform).
One way of applying this principle to image deconvolution [29] results in the following
definition of prior probability:
where
x x
S(x) = −
i log
i
i j xj j xj
where mi is the ith component of a default image m. This default image is often chosen to
be a low resolution image of the object and will be the maximum entropy estimate in the
limit as the measurement noise increases to infinity. For this choice of entropy the prior
pdf can be factorised as
(
xi xi
p(x) ∝ I(x) exp log
i
λ mi e
226 Appendix C.3
( xi xi /λ
= I(xi ).
i
m i e
A factorised joint pdf means that the distribution of each pixel is independent. While this
may be appropriate for astronomical images, we have argued that real world images contain
significant correlations and that therefore such a maximum entropy deconvolution is less
appropriate. Note that such a conclusion rejects merely the precise application rather than
the MAXENT principle itself. The grounds for the rejection are that these methods do
not make use of all the available information about the nature of real images. Section C.10
gives an example of using the MAXENT principle together with a wavelet transform to
give a more appropriate algorithm.
Combettes uses this method for the problem of restoring an image blurred with a 9 × 9
uniform kernel by means of the following constraints (that each correspond to convex sets)
[27]:
2. It is assumed that the DFT of the image x is known on one fourth of its support
for low frequencies in both directions. (These known values are taken from the DFT
of the observed image divided by the gain of the blurring filter at the corresponding
frequencies.)
Appendix C.4 227
3. The assumption of Gaussian noise means that, with a 95% confidence coefficient, the
image satisfies the constraint
y − Hx
2 ≤ ρ
where ρ takes some value that can be calculated from statistical tables based on the
variance σ 2 of the measurement noise and the number of pixels. It is assumed that
the above constraint will be satisfied by the restored image.
For a general value of ρ this scheme does not naturally fit into the Bayesian framework,
partly because the final solution can depend on the starting conditions (normally chosen
to be the observed image). However, if ρ is reduced until the intersection of the constraint
sets contains a single point then the method becomes equivalent to Miller regularisation.
The corresponding prior is proportional to the characteristic function of the intersection
of the first two constraints described above. In other words, the prior takes some constant
value within the intersection, but is zero outside.
The problem with Wiener filtering is the estimation of signal to noise ratios. It can be
easily shown that the best gain (in terms of minimising the expected energy of the error)
for a given image x is given by SNRi = | [F x]i |2 . We call the corresponding gain the Oracle
gain but this cannot be used in practice because it requires access to the original image.
228 Appendix C.5
In terms of our Bayesian viewpoint the cost function that corresponds to Wiener filtering
is
1
f (x) = | [F x]i |2 (C.1)
i
σ 2 SNR i
The previous methods were equivalent to assuming that the pixel intensity values were
independent and indentically distributed. In contrast, the above cost function cannot be
factorised in the same way. Instead it is the Fourier components of the image that are
assumed independent, but with different Gaussian distributions for each component.
We use the notation diag {a} for a ∈ R N to represent a diagonal matrix of size N by N
with the entries of a along the diagonal. When these algorithms are used for astronomical
images there is also a step that after each iteration sets all the negative entries in xk to
zero. The restored solution is taken to be the restored image at a particular iteration.
We first describe the usual [81], but misleading, way of viewing these methods within
the Bayesian framework, and then a better way. Consider the Van Cittert and Landweber
methods. If these algorithms converge then the converged solution can be either considered
as the MAP estimate corresponding to a flat (improper) prior
p(x) ∝ 1
Appendix C.5 229
or the maximum likelihood estimate. (If the non-negativity constraint is used then the
solution is the MAP estimate for a prior of p(x) ∝ I(x)). The Richardson-Lucy method
can be viewed in the same way except that it uses a different observation model. Based
on the idea of random photon arrival times the observations are modelled as independent
samples from Poisson distributions where the parameters of the Poisson processes are the
unknown source intensities x. In this model the observations in y consist of non-negative
integer counts of the number of photons detected. The likelihood function is
( [F x]yi i
p(y|x) = exp {− [F x]i }
i
yi !
Although the iterative methods are sometimes justified [81] by these choices of prior and
likelihood the converged estimates can be severely corrupted due to the large amplification
of noise [15] while the intermediate restorations are better. The methods are therefore
unusual in that it is crucial to terminate the algorithm before convergence is reached.
To explain the effect of early convergence we assume that we are deconvolving images
without using the positivity constraint. The effect has been explained [15] with an eigen-
vector analysis but here we give an alternative treatment based on the Fourier transform.
Recall that the blurring filter can be expressed as F H MF . Let o(n) be the Fourier
transform coefficients of the restored images:
o(n) = F x(n)
This is a very simple expression because all the matrices are diagonal. We can write the
iteration separately for each Fourier coefficient as
(n+1) (n)
oi = oi (1 − αmi ) + αfi
(0)
Using the initialisation of oi = 0 we can solve this equation to find
(K)
K−1
oi = αfi (1 − αmi )n
n=0
230 Appendix C.5
1 − (1 − αmi )K
= αfi
αmi
1 − (1 − αmi )K
= fi
mi
The restored image produced by the Van Cittert iteration is given by x(K) = F H o(K) and
by comparison with the algorithm for Wiener filtering above we conclude that Van Cittert
restoration is equivalent to Wiener filtering with a gain gi given by
1 − (1 − αmi )K
gi = .
mi
The corresponding assumption about the signal to noise ratio is
1
SNRi = m∗i
gi
− |mi |2
1
= |mi |2
1−(1−αmi )K
− |mi |2
Assuming that α is small enough for the algorithm to converge then it is clear that gi →
1/mi in the limit as K → ∞ but the algorithm is designed to terminate long before
convergence. The assumption about the SNR level of a Fourier coefficient is a function of
α, K, and the level of blurring mi for that coefficient. Figure C.1 shows the assumed SNR
values for gains mi varying between 0 and 1 if K = 3 and α = 1. For a typical blurring
function that decays with increasing frequency the Van Cittert method effectively assumes
that the data has a power spectrum that also decays with increasing frequency. However,
for small gains the assumed SNR actually increases. This may lead to high frequency noise
artefacts in reconstructed images.
Similarly we can also take the Fourier transform of the Landweber method. The only
difference is the multiplication by H T . As this is a real matrix we can write
HT = HH
H
= F H MF
= F HMHF
Using this result we can rewrite the Landweber method in terms of Fourier coefficients as
1 − α|mi |2 + αm∗i fi
(n+1) (n)
oi = oi
Appendix C.5 231
70
60
Assumed SNR/dB
50
40
30
20
10
0 0.2 0.4 0.6 0.8 1
Filter gain
Figure C.1: Effective assumption about SNR levels for Van Cittert restoration (K = 3,α =
1).
232 Appendix C.5
n+1
1 − (1 − α|mi |2 )
= fi m∗i
|mi |2
n+1
1 − (1 − α|mi |2 )
= fi
mi
Again we conclude that the Landweber method is equivalent to Wiener filtering with the
following assumption about the SNR
1
SNRi = m∗i
gi
− |mi |2
1
= |mi |2
1−(1−α|mi |2 )K
− |mi |2
Figure C.2 shows this assumed SNR values for gains mi varying between 0 and 1 if K = 3
and α = 1. The figure shows that the Landweber method has a smooth decrease in
60
50
Assumed SNR/dB
40
30
20
10
0
0 0.2 0.4 0.6 0.8 1
Filter gain
Figure C.2: Effective assumption about SNR levels for Landweber restoration (K = 3,α =
1).
assumed SNR levels even for low gains and therefore the restored results should avoid the
high frequency artifacts of the Van Cittert method.
Appendix C.6 233
The Richarson-Lucy method is not as simple to express in the Fourier domain due
to the presence of multiplications and divisions that are implemented pixel-wise on im-
ages. However, we claim that early termination corresponds to making approximately the
same assumption (of a stationary Gaussian random process) about image structure as in
the Landweber method and consequently that early termination of the Richardson-Lucy
method is approximately a particular case of Wiener filtering.
To demonstrate this claim we imagine applying the Richardson-Lucy method to an
image after increasing all the intensity values (in the data and the intermediate restorations)
by a constant 1/
. The iteration becomes
−1
x(n+1) + 1/
= diag x(n) + 1/
H T diag H x(n) + 1/
(y + 1/
)
a . In other words, O(
a ) represents a polynomial function of
in which every exponent
of
is at least a. We will assume that the image has been rescaled such that the blurring
filter has unity response at zero frequency and thus H1 = H T 1 = 1 (H T corresponds to
filtering with a filter h(−x, −y) rather than h(x, y) and so will also have unity response at
zero frequency). For sufficiently small values of
this expression can be written as
x(n+1) = −1/
+ diag x(n) + 1/
H T diag
1 −
Hx(n) + O(
2 ) (y + 1/
)
= −1/
+ diag x(n) + 1/
H T
IN −
2 diag Hx(n) + O(
3 ) (y + 1/
)
= diag x(n) H T 1 + H T y − H T diag Hx(n) 1 + O(
)
= diag x(n) 1 + H T y − H T Hx(n) + O(
)
= x(n) + H T y − Hx(n) + O(
)
Comparing this with equation C.3 we conclude that (if the algorithm is initialised to have
x(0) = 0) then the shifted Richardson-Lucy method (with removed positivity constraints)
is within order
of the Landweber method. In particular, the restored image from this
shifted Richardson-Lucy method will tend to the Landweber solution in the limit as
→ 0.
We have described the link between the iterative methods and Wiener filtering. An
explicit definition of the assumed cost function is given by substituting the above expresse-
nions for the assumned SNR levels into equation C.1.
234 Appendix C.7
f (x) =
Cx
2
for some square matrix C known as the regularising operator [15, 61]. This operator is
chosen to apply little regularisation where the signal energy is expected to be high, but
significant regularisation where the noise energy dominates the signal. For many images
the signal energy is concentrated at low frequencies and so the operator is chosen to act
like a high pass filter. One common choice for the coefficients is a discrete approximation
to a 2-D Laplacian filter such as [115]
0.7 1 0.7
1 −6.8 1
0.7 1 0.7
Recent attempts to solve this problem have been based on Hopfield neural networks [133,
115, 92] where the idea is to perform gradient descent minimisation of the energy function
with the restriction that the change to each intensity value must always belong to the set
{−1, 0, 1}.
If both the blurring operator H and the regularising operator C represent linear, space-
invariant filters then the energy function can be efficiently represented in terms of the
Fourier coefficients of the image x. In this case it is straightforward to show that the
estimate that minimises the energy function is given by a Wiener filter (with the esti-
mated SNR values inversely proportional to the squares of the Fourier coefficients of the
regularising operator). This proves that the performance of the Oracle Wiener filter is an
upper bound on the performance of such methods unless stopping before convergence gives
improved results.
JT V (u) is used as the stabilising functional within Tikhonov regularisation and therefore
the corresponding f (x) is equal to a discretized version of the above integration. To avoid
difficulties with the nondifferentiability the functional Jβ (u) is often used instead [123]
# #
Jβ (u) = |∇u|2 + β 2 dxdy.
y x
The prior pdf corresponding to total variation denoising therefore penalises oscillations
in an image as this increases the total variation, and instead favours edges and tends to
produce piecewise constant images.
Markov Random Fields [56, 132] provide a more general way of constructing a prior pdf
based on local neighbourhoods that again aims to favour smooth regions while permitting
occasional discontinuities.
where Px (f) is the power spectral density of the signal, H(f) is the Fourier transform of the
linear blurring filter, σ 2 is the amount of noise added after blurring, and α is a parameter
that controls the amount of regularisation. Both the inverse filter and the wavelet denoising
can be used to reduce the level of noise. Several choices for the amount of regularisation
and the wavelet denoising method have been proposed. Donoho [38] uses α = 0 so that all
the noise removal must be done by the wavelet denoising. Wiener filtering corresponds to
α = 1 with no wavelet denoising. Nowak and Thul used an under-regularized linear filter
(0 < α < 1) [87] and Neelamani et al studied the effect of the amount of regularization and
found α ≈ 0.25 usually gave good results [84]. This approach is known as WaRD standing
for Wavelet-based Regularized Deconvolution. Kalifa and Mallat [58] use α = 0 together
with a mirror wavelet basis. This algorithm and the mirror wavelet basis are described
in detail in section C.9. An algorithm of this type is used in the production channel of
CNES satellite images[58]. Their mirror wavelet transform is similar to a standard real
236 Appendix C.8
wavelet transform except that additional filtering steps are performed on the highpass
subbands. The extra filtering produces greater frequency localisation for high frequencies.
Extra filtering can also be applied to the DT-CWT to produce a complex wavelet packet
transform [52]. Such a transform has been found to give slightly better performance than
the nondecimated version of the mirror wavelet algorithm (and much superior performance
to the decimated version) [52].
These methods are harder to place within our common framework because they are
motivated by the belief that such a framework is fundamentally flawed and that minimax
methods offer an alternative solution.
Bayesian techniques require stochastic models of the expected signals. It is claimed [58]
that there is no “good” stochastic model for natural images. Instead minimax estimation
makes use of a prior set Θ where the signal is guaranteed to be. The estimator is then
designed by trying to minimise the maximum risk over Θ. Suppose that we have obser-
vations y ∈ R N from which we wish to construct an estimator F̂(y) of the original signal
x ∈ R N . The risk of the estimator is defined to be [58]
+ ,
r(F̂, x) = EN
F̂(y) − x
2 .
Note that this is a function of the original signal x. The original signal is fixed and the
expectation is taken over all possible values for the noise in the observation model.
In the Bayesian approach we have an estimate for the relative probability of different
signals (the prior) and we can compute the total expected risk for an estimator with
the expectation taken over all possile signals. A standard result is that this total risk is
minimised by using the posterior mean estimate. However, the minimax approach avoids
using the prior pdf on the grounds that the prior is not a sufficiently “good” model. Instead
the estimator is based on the maximum risk, defined as
+ ,
r(F̂, Θ) = sup E
F̂(y) − x
2 .
x∈Θ
B is allowed to see the program and construct a test image deliberately designed to produce
the algorithm’s worst possible performance. It can easily be shown that the best approach
for A (in terms of maximising SNR) is to use the minimax approach to design the algorithm.
However, if player B is not so malicious and simply decides to produce test images according
to some stochastic model then the best approach for A is to use a Bayesian posterior mean
estimate, using B’s stochastic model for the prior pdf.
The conclusions in these two cases are widely accepted, what is not agreed is an appro-
priate approach for the case when player B is not malicious, but when the model used to
produce images is unknown. This is the case for most real world images.
We mentioned earlier the claim that there is no “good” model for natural images.
The problem with this claim is that it is not clear what “good” means. We agree that
realisations from typical Bayesian models do not produce realistic images, but models can
often give a reasonable guide to the relative probability of small deviations from a real
world image. For example, wavelet models will prefer a priori a portion of the image being
smooth rather than containing high frequency noise. Furthermore, if “good” is taken
to mean that the resulting algorithms give high accuracy results then the claim can be
experimentally tested. Later results will show that the Bayesian model is good in this
sense.
In summary, the minimax approach gives results with a known worst case performance.
The methods tend to be robust but take no advantage of the probable structure within
the data (other than limiting the data to the set Θ). Bayesian methods attempt to model
the prior information about likely image structures and thus give results whose quality
depends on the accuracy of the model. The Bayesian method has the potential to give
better reconstructions but it is possible that certain images will be very badly restored. As
we are interested in getting good results on typical images we select the Bayesian method.
We first give a brief description of the mirror wavelet transform and then explain how
this transform is used for deconvolution.
Level 3 -
Level 4
x000a
- ↓ 2 - x0000a
- -
H0a
- - Level 2 x00a
↓2
H0a
-
Level 1 - x0a
-
- -
↓2 ↓2 x0001a
H0a H1a
- - -
↓2 - - ↓2
H0a H1a x001a
-
↓2
Standard
H1a x01a
Tree
- - - x000b
↓2
x0000b
H0b
- - x00b
↓2
x
H0b
- - x0b
- - -
- -
↓2 ↓2 x0001b
H0b H1b
- - -
↓2 - - ↓2
Mirror H1a H1b x001b
Tree - H1b ↓2 x01b
orthogonal wavelets possess the least asymmetry and highest number of vanishing moments
for a given support width [30]. The filters in the mirror tree (for levels above 1) are given
by the time reverse of the filters in the standard tree:
ui =
0 otherwise
We choose
= 0.01 in our experiments. The inverse filtering step produces a new image x0
given by x0 = F H diag {u} F d (this, of course, is implemented using the Fourier transform
rather than matrix multiplication).
The wavelet denoising is based on estimates σk2 of the variance of the (inverse filtered)
noise in the subbands of the mirror wavelet transform of x0 . The inverse filtering step tends
to considerably amplify the noise for high frequencies for typical blurring functions. These
variances can be precisely computed from the Fourier transform of the filter [58] but in
practice it is easier to estimate these values by calculating the mirror wavelet transform of
an image containing white noise of variance σ 2 that has been inverse filtered. The average
energy of the wavelet coefficients in the corresponding subbands provide estimates of σk2 .
240 Appendix C.9
30
25
20
15
10
5 10 15 20 25 30
Figure C.4: 2D frequency responses of the mirror wavelet subbands shown as contours at
75% peak energy amplitude.
Appendix C.10 241
3. Apply a soft thresholding rule to all the wavelet coefficients. For a coefficient wi
belonging to subband k the new value ŵi is given by
wi − βσk wi > βσk
ŵi = wi + βσk wi < βσk
0 otherwise
4. Invert the mirror wavelet transform to compute the deconvolved estimate x̂.
This is a single pass algorithm involving only one forward and one inverse wavelet transform
and hence is fast. In practice (and in our experiments) the shift invariant version of the
mirror wavelet transform is always used as it gives better results. This can be viewed
theoretically as averaging the results of the decimated version over all possible translations.
This averaging is implemented by using the much slower nondecimated form of the mirror
wavelet.
1. Wang et al [124] used the output of an edge detector applied to the noisy data to alter
the degree of regularisation in a multiscale smoothness constraint. This algorithm
242 Appendix C.10
where W represents a forward real wavelet transform (Daubechies’ fifth order com-
pactly supported wavelet [30]) and {λi } are scaling parameters chosen using the
output of the edge detector.
2. Starck and Pantin have proposed [93] a multiscale maximum entropy method that
uses the cost function2
| [W x]i |
f (x) = − λi [W x]i − mi − | [W x]i | log
i
mi
3. Banham and Katsaggelos [8] use an autoregressive prior model which evolves from
coarse to fine scales. The parameters of the model are based on the output of an
edge detector applied to a prefiltered version of the noisy data. A multiscale Kalman
filter is then used to estimate the original image.
4. Belge et al [11] use a non-Gaussian random process model for which the wavelet
coefficients are modelled as being independently distributed according to generalised
Gaussian distribution laws. The resulting energy function is minimised in a doubly
2
This cost function appears strange because it is not a symmetric function of the wavelet coefficients.
This is probably a mistake but we have chosen to keep the form as given in the reference.
Appendix C.10 243
where W represents a forward real wavelet transform (Daubechies’ 8 tap most sym-
metric wavelets were used [30]), {λi } are scaling parameters for the different wavelet
coefficients, and p is a parameter chosen near 1.
5. Piña and Puetter use a Pixon method [94, 99] that adapts the number of parameters
describing the image to the smallest number consistent with the observed data. The
parameters in the Pixon method are coefficients of certain kernel functions. These
kernel functions are defined at a number of different scales (typically 4 per octave)
and orientations and can be regarded as the reconstruction wavelets corresponding to
some redundant wavelet transform. Using this interpretation of the kernel functions
suggests that the Pixon method is approximately equivalent to using a sparseness
prior (of the sort seen in section C.1) for the wavelet coefficients:
f (x) = |wi|p
i
where p is a real scalar parameter controlling the degree of sparseness and {wi } is
the set of parameters (wavelet coefficients) that specify the image via the relation
x = Pw
where P is a reconstruction matrix built out of the kernel functions used in the
Pixon method. Note that an estimate based on this objective function would only
approximate the true Pixon estimate as it neglects certain features of the method
(for example, for a particular position in the image there will be, say, K parameters
corresponding to the K different subbands but the Pixon method only allows at most
one of these parameters to be non-zero).
The first three methods use a prior that is a function of the noisy image and are therefore
known as empirical Bayes methods. There are many other choices for the image prior that
have been used in other applications. One example that has already been mentioned in
this dissertation is the Hidden Markov Tree (HMT) model discussed in chapter 3.
244 Bibliography
Bibliography
[2] F. Alabert. The practice of fast conditional simulations through the LU decomposi-
tion of the covariance matrix. Math Geology, 19(5):369–386, 1987.
[3] B. Alpert. A class of bases in L2 for the sparse representation of integral operators.
SIAM J. Math Analysis, 1993.
[5] H. C. Andrews and B. R. Hunt. Digital Image Restoration. Englewood Cliffs, NJ:
Prentice-Hall, 1977.
[6] F. Auger and P. Flandrin. Improving the Readability of Time-Frequency and Time-
Scale Representations by the Reassignment Method. IEEE Trans. on Signal Proc.,
43(5):1068–1089, May 1995.
[7] R. H. Bamberger and M. J. T. Smith. A filter bank for the directional decomposition
of images. IEEE Trans. on Sig. Proc., 40(4):882–893, April 1992.
[9] S. A. Barker and P. J. W. Rayner. in Lecture Notes in Computer Science Vol. 1223.
(Eds. M. Pelillo and E. R. Hancock), chapter Unsupervised image segmentation using
markov random field models. Springer-Verlag, 1997.
245
246 Bibliography
[10] C. Becchetti and P. Campisi. Binomial linear predictive approach to texture mod-
elling. In International Conference on Digital Signal Processing 97, volume 2, pages
1111–1114, 1997.
[11] M. Belge, M. E. Kilmer, and E. L. Miller. Wavelet domain image restoration with
adaptive edge-preserving regularization. IEEE Trans. on Im. Proc., 9(4):597–608,
Apr 2000.
[13] J. O. Berger. Statistical Decision Theory and Bayesian Analysis. Springer series in
statistics. Springer-Verlag Inc., New York, 1985.
[18] P. Burt and E. Adelson. A Multiresolution Spline with Application to Image Mosaics.
ACM Transactions on Graphics, 2:217–236, 1983.
[21] R. Chellappa and R.L. Kashyap. Digital image restoration using spatial interaction
models. IEEE Trans. Acoust., Speech, Signal Processing, 30:461–472, June 1982.
[22] R. Chellappa and R.L. Kashyap. Texture synthesis using 2-D noncausal autoregres-
sive models. IEEE Trans. Acoust., Speech, Signal Processing, 33(1):194–203, 1985.
[23] H. Choi and R. Baraniuk. Interpolation and denoising of nonuniformly sampled data
using wavelet-domain processing. In ICASSP 99, 1999.
[29] G. J. Daniell and S. F. Gull. Maximum entropy algorithm applied to image enhance-
ment. IEE Proceedings, part E, 127(5):170–172, September 1980.
[32] J. Daugman. Complete Discrete 2-D Gabor Transforms by Neural Networks for
Image Analysis and Compression. IEEE Trans. on Acoustics, Speech, and Signal
Proc., 36(7):1169–1179, July 1988.
248 Bibliography
[33] P. F. C. de Rivaz and N. G. Kingsbury. Complex wavelet features for Fast Texture
Image Retrieval. In ICIP 99, 1999.
[34] P. F. C. de Rivaz and N. G. Kingsbury. Fast segmentation using level set curves of
complex wavelet surfaces. In ICIP 2000, 2000.
[35] P. F. C. de Rivaz, N. G. Kingsbury, and J. Moffatt. Wavelets for Fast Bayesian Geo-
physical Interpolation CUED/F-INFENG/TR.354. Technical report, Department of
Engineering, University of Cambridge, July 1999.
[36] C. V. Deutsch and A. G. Journel. GSLIB Geostatistical Software Library and User’s
Guide. Oxford University Press, 1992.
[48] A. D. Hillery and R. T. Chin. Iterative Wiener Filters for Image Restoration. IEEE
Trans. Signal Processing, 39(8):1892–1899, Aug. 1991.
[49] D. H. Hubel and T. N. Wiesel. Receptive fields, binocular interaction and functional
architecture in the cat’s visual cortex. J. Physiol. (Lond.), 166:106–154, 1962.
[50] D. H. Hubel and T. N. Wiesel. Receptive fields and functional architecture of monkey
striate cortex. J. Physiol. (Lond.), 195:215–243, 1968.
[51] H. Igehy and L. Pereira. Image Replacement through Texture Synthesis. In ICIP
97, volume 3, pages 186–189, 1997.
[53] E. T. Jaynes. Information theory and statistical mechanics. Phys. Rev., 106(4):620–
630, May 1957.
[54] E. T. Jaynes. The rationale of maximum entropy methods. Proc. IEEE, 70:939–952,
1982.
[55] B. D. Jeffs and M. Gunsay. Restoration of blurred star field images by maximally
sparse optimization. IEEE transactions on image processing, 2(2):202–211, April
1993.
250 Bibliography
[56] F. C. Jeng and J. W. Woods. Compound Gauss-Markov random fields for image
estimation. IEEE Trans. Acoust., Speech, Signal Processing, 39:914–929, April 1991.
[58] J. Kalifa and S. Mallat. Bayesian inference in wavelet based methods, chapter Mini-
max restoration and deconvolution. Springer, 1999.
[60] M. Kass, A. Witkin, and D. Terzopoulos. Snakes: Active contour models. Int. J.
Comput. Vis., 1:321–332, 1988.
[62] N. G. Kingsbury. The dual-tree complex wavelet transform: a new efficient tool
for image restoration and enhancement. In Proc. European Signal Processing Conf.,
pages 319–322, Sep 1998.
[63] N. G. Kingsbury. Shift invariant properties of the Dual-Tree Complex Wavelet Trans-
form. In Proc. IEEE Conf. on Acoustics, Speech and Signal Processing, Phoenix, AZ,
1999.
[64] N. G. Kingsbury. Complex wavelets and shift invariance. In Proc IEE Colloquium
on Time-Scale and Time-Frequency Analysis and Applications, IEE, London, 29 Feb,
2000.
[65] N. G. Kingsbury. Complex wavelets for shift invariant analysis and filtering of signals.
Submitted by invitation to Applied Computational and Harmonic Analysis, June 2000.
[66] T. Kohonen. The Self-Organizing Map. In Proc. IEEE, volume 78, pages 1464–1480,
Sep 1990.
Bibliography 251
[68] L. Landweber. An iteration formula for fredholm integral equations of the first kind.
Am. J. Math., 73:615–624, 1951.
[69] M. Lang, H. Guo, J. E. Odegard, C. S. Burrus, and R. O. Wells Jr. Noise reduction
using an undecimated discrete wavelet transform. IEEE Signal Processing Letters,
3(1):10–12, 1996.
[71] A. Lent and H. Tuy. An iterative method for the extrapolation of band-limited
functions. J. Math. Anal. Appl., 83:554–565, October 1981.
[73] J. M. Lina and M. Mayrand. Complex Daubechies wavelets. J. of Appl. and Comput.
Harmonic Analysis, pages 219–229, 1995.
[74] J. Magarey. Motion Estimation using Complex Wavelets. PhD thesis, Cambridge
University, 1997.
[76] B. S. Manjunath and W. Y. Ma. Texture features for browsing and retrieval of
image data. IEEE Trans. Patt. Anal. Mach. Int. Special Issue on Digital Libraries,
18(8):837–842, Aug 1996.
[78] D. Marr. Vision, A Computational Investigation into the Human Representation and
Processing of Visual Information. W.H. Freeman and Company, 1982.
252 Bibliography
[79] K. A. Marsh and J. M. Richardson. The objective function implicit in the CLEAN
algorithm. Astron. Astrophys., 182:174–178, 1987.
[80] K. Miller. Least Squares methods for ill-posed problems with a prescribed bound.
SIAM J. Math. Anal., 1:52–74, 1970.
[81] R. Molina, J. Mateos, and J. Abad. Prior Models and the Richardson-Lucy Restora-
tion Method. In The Restoration of HST Images and Spectra II, R. J. Hanisch and
R. L. White, eds., pages 118–122, 1994.
[82] G. P. Nason and B. W. Silverman. The Stationary wavelet transform and some
statistical applications . Springer Lecture Notes in Statistics, 103:281–300, 1995. in
Wavelets and Statistics (ed. A. Antoniadis & G. Oppenheim).
[83] R. B. Navarro and J. Portilla. Robust method for texture synthesis-by-analysis based
on a multiscale Gabor scheme. In Proceedings of SPIE - The International Society
for Optical Engineering, volume 2657, pages 86–97, 1996.
[86] D. E. Newland. Harmonic wavelets in vibrations and acoustics. Phil. Trans. R. Soc.
Lond. A, 357(1760):2607–2625, 1999.
[89] Wonho Oh. Random Field Simulation and an Application of Kriging to Image
Thresholding. ftp://ams.sunysb.edu/pub/papers/theses/who.ps.gz , Dec 1998.
Bibliography 253
[90] S. Osher, L. I. Rudin, and E. Fatemi. Nonlinear Total Variation based noise removal
techniques. Phys. D, 60:259–268, 1992.
[91] R.D. Paget and D. Longstaff. Nonparametric multiscale Markov random field mode
for synthesizing natural textures. In Proceedings of the International Symposium on
Signal Processing and its Applications, ISSPA 96, volume 2, pages 744–747, 1996.
[93] E. Pantin and J. L. Starck. Deconvolution of astronomical images using the multi-
scale maximum entropy method. Astron. and Astrophys. Suppl. Ser., 118:575–585,
September 1996.
[94] R. K. Piña and R. C. Puetter. Bayesian Image Reconstruction: The Pixon and
Optimal Image Modeling. Publications of the Astronomical Society of the Pacific,
105:630–637, 1993.
[96] J. Portilla and E. P. Simoncelli. A parametric texture model based on joint statis-
tics of complex wavelet coefficients. International Journal of Computer Vision, To
appear, 2000.
[97] M. J. P. Powell. in J.C. Mason and M.G. Cox (Eds), Algorithms for Approximation,
chapter Radial basis functions for multivariable interpolation: a review, pages 143–
167. Oxford: Clarendon Press, 1987.
[100] T. Randen. Comments regarding the Trans. PAMI Article, April 1999.
http://www.ux.his.no/∼tranden/comments.html, 1999.
[103] J. K. Romberg and H. Choi. Software for Image Denoising using Wavelet-domain
Hidden Markov Tree Models. http://www.dsp.rice.edu/software/WHMT/.
[105] I. J. Schoenberg. Spline Functions and the problem of graduation. Proc. Nat. Acad.
Sci., 52:947–950, 1964.
[111] M. Spann and R. Wilson. A quadtree approach to image segmentation which com-
bines statistical and spatial information. Pattern Recognition, 18:257–269, 1985.
Bibliography 255
[112] J.-L. Starck and F. Murtagh. Image restoration with noise suppression using the
wavelet transform. Astronomy and Astrophysics, 288:342–348, 1994.
[113] G. Strang and T. Nguyen. Wavelets and Filter Banks. Wellesley-Cambridge Press,
1997.
[114] V. Strela and A. T. Walden. Signal and Image denoising via Wavelet Thresholding:
Orthogonal and Biorthogonal, Scalar and Multiple Wavelet Transforms TR-98-01.
Technical report, Dept. of Mathematics, Imperial College of Science, Technology &
Medicine, 1998.
[115] Yi Sun. Hopfield Neural Network Based Algorithms for Image Restoration and
Reconstruction–Part I: Algorithms and Simulations. IEEE Transactions on Signal
Processing, 48(7):2105–2118, July 2000.
[116] C. W. Therrien. Discrete random signals and statistical signal processing. Prentice
Hall, 1992.
[119] Michael Unser, Akram Aldroubi, and Murray Eden. B-Spline Signal Processing:Part
I–Theory. IEEE Trans. on Sig. Proc., 41(2):821–833, 1993.
[122] M. Vetterli and J. Kovac̆ević. Wavelets and Subband Coding. Prentice Hall, Engle-
wood Cliffs:NJ, 1995.
256 Bibliography
[124] G. Wang, J. Zhang, and G. W. Pan. Solution of inverse problems in image processing
by wavelet expansions. IEEE Trans. Image Proc., 4:579–593, May 1995.
[126] R. Wilson. Finite Prolate Spheroidal Sequences and Their Applications I: Generation
and Properties. IEEE Trans. on Patt. Anal. and Mach. Int., 9(6):787–795, Nov. 1987.
[127] R. Wilson and G. H. Granlund. The uncertainty principle in image processing. IEEE
Trans. on Patt. Anal. and Mach. Int., 6(6):758–767, 1984.
[128] R. Wilson and M. Spann. Finite Prolate Spheroidal Sequences and Their Applications
II: Image Feature Description and Segmentation. IEEE Trans. on Patt. Anal. and
Mach. Int., 10(2):193–203, March 1988.
[131] D. C. Youla and H. Webb. Image restoration by the method of convex projections:
Part 1, theory. IEEE Trans. Med. Imaging, 1:1982, October 1982.
[132] J. Zhang. The mean field theory for EM procedures in blind MRF image restoration.
IEEE Trans. Image Processing, pages 27–40, January 1993.
[134] S. C. Zhu, Y. Wu, and D. Mumford. FRAME: filters, random fields, and minimax
entropy towards a unified theory for texture modelling. In Proceedings of the IEEE
Computer Society Conference on Computer Vision and Pattern Recognition, pages
686–693, 1996.