next up previous
Next: Direct Calculation of Weights Up: Wavelet Networks for Vision Previous: Introduction


Introduction to Wavelet Networks


To define a WN, we begin by taking a family of $ N$ wavelet functions $ {\bf\Psi}=\{\psi_{{\bf n}_1},\ldots,\psi_{{\bf n}_N}\}$ with parameter vectors $ {\bf n}=(c_x,c_y,\theta,s_x,s_y)^T$ of some mother wavelet $ \psi$:

    $\displaystyle \psi_{{\bf n}}({\bf x})= \psi({\bf S}{\bf R}({\bf x}-{\bf t}))\; .$ (1)

The $ c_x$, $ c_y$ defines the translation $ {\bf t}$ of the wavelet, $ s_x$, $ s_y$ defines the dilation $ {\bf S}$ and $ \theta$ defines the orientation $ {\bf R}$. The parameters vector $ {\bf n}$ (translation, orientation and dilation) of the wavelets may be chosen arbitrarily at this point. According to wavelet theory, any function $ f \in
\Bbb{L}^2(\Bbb{R}^2)$ can be losslessly represented by their continuous wavelet transform and thus, with arbitrary precision, by a wavelet network. We therefore interpret the image $ f$ to be a function of the space $ \Bbb{L}^2(\Bbb{R}^2)$ and assume further, without loss of generality that $ f$ is DC-free. In order to find the WN for image $ f$ we minimize the energy functional

$\displaystyle E = \operatornamewithlimits{min}_{{\bf n}_i,w_i \text{\scriptsize\ for all } i} \Vert f - \sum_{i=1}^N w_i \psi_{{\bf n}_i}\Vert _2^2$ (2)

with respect to the weights $ w_i$ and the wavelet parameter vectors $ {\bf n}_i$. Equation (2) says that the $ w_i$ and $ {\bf n}_i$ are optimized, i.e. translation, dilation and orientation of each wavelet are chosen such that the image $ f$ is optimally approximated by the weighted sum of wavelets $ \psi_{{\bf n}_i}$. We therefore define a wavelet network as follows:

Definition:
Let $ \psi_{{\bf n}_i}$, $ i=1,\ldots, N$ be a set of wavelets, $ f$ a DC-free image and $ w_i$ and $ {\bf n}_i$ chosen according to the energy function (2). The two vectors

$\displaystyle {\bf\Psi}= (\psi_{{\bf n}_1},\ldots,\psi_{{\bf n}_N})^T \;$and$\displaystyle \; {\bf w}= (w_1,\ldots,w_N)^T$    

define then the wavelet network $ ({\bf\Psi}, {\bf w})$ for image $ f$.

It should be mentioned that it was proposed before [Daubechies, 1990,Daugman, 1988,Lee, 1996] to use an energy functional (2) in order to find the optimal set of weights $ w_i$ for a fixed set of non-orthogonal wavelets $ \psi_{{\bf n}_i}$. The WN concept enhances these approaches by finding also the optimal parameters $ {\bf n}_i$ for each (not-necessarily orthonormal) wavelet $ \psi_{{\bf n}_i}$. WNs also appear to enhance the RBF neural network approach considerably. This was pointed out recently by [Reyneri, 1999], even though he investigated a considerably simplified version of WNs with radial wavelets which limits the potentials of the WNs considerably.

The parameters $ {\bf n}_i$ are chosen from continuous phase space and the wavelets are positioned with sub-pixel accuracy. This is precisely the main advantage over the discrete approach of [Daubechies, 1990,Lee, 1996]. While in the case of a discrete phase space local image structure has to be approximated by a combination of wavelets, only a single wavelet needs to be chosen in the continuous case to reflect precise the local image structure. This assures that a maximum of the image information can be encoded with only a small number of wavelets.

In order to find a WN $ ({\bf\Psi}$, $ {\bf w})$ for a function $ f$, we use the Levenberg-Marquardt method. As initialization, we distribute the wavelets homogeneously over the region of interest. The orientations are initialized randomly, the scales are initialized to a constant value that is related to the density with which the wavelets are distributed. We constrained the wavelet parameters to prevent degenerated wavelet shapes. For the two wavelet types in this paper (odd Gabor, difference-of-Gaussian) we used constrains according to [Daugman, 1985]. In several experiments we have found that this rough initialization is sufficient. Also, we apply a coarse-to-fine strategy by first optimizing a set of wavelets initialized to coarse scale, followed by the optimization of a set of wavelets, initialized to a finer scale. Intuitively, a coarse-to-fine strategy for optimization makes sense because this minimizes the energy functional (2) more efficiently. To optimize a WN with 16 wavelets it takes about 30s on a 750 MHz Pentium processor.

Using the optimal wavelets $ {\bf\Psi }$ and weights $ {\bf w}$ of the wavelet network of an image $ f$, $ f$ can be (closely) reconstructed by a linear combination of the weighted wavelets:

$\displaystyle \hat{f}=\sum_{i=1}^{N}w_i \psi_{{\bf n}_i}={\bf\Psi}^T {\bf w}\; .$ (3)

The quality of image representation and reconstruction depends on the number $ N$ of wavelets used (see fig. 1). The quality may be varied from a coarse representation to an almost photo-realistic one.

Figure 1: The top images indicate the variability in precision with a varying number of wavelets. The wavelets were chosen in the order they were optimized.
\epsfig {file=/home/vok/tex/wavelets/images/progress.eps, width=\textwidth}

Example reconstructions can be seen in fig. 1: A WN with $ N=216$ wavelets was optimized on the inner-face region of image $ I$ (rightmost image) 1. As mother wavelet, the odd Gabor function has been used. The reconstructions were computed with formula (4) for various $ N$, and we have chosen in each case the $ N$ wavelets according to the order they were optimized. This means that a WN, optimized with $ N=16$ wavelets, results in the WN shown in the leftmost image. The quality can be further increased by choosing the wavelets with the $ N$ largest coefficients.

The images in fig. 2 show the relation between the optimized positions of the wavelets (right), and their reconstructions(left) for two different mother wavelets: the odd Gabor function (top) and an anisotropic difference-of-Gaussian (DOF) (bottom).

Figure 2: These images show examples for two different mother wavelets, the odd gabor function (top), and the non-isotropic difference-of-Gaussian (bottom). The left images show the reconstruction with 16 wavelets, the right images show their superimposed optimized wavelet positions.
\epsfig {file=/home/vok/tex/wavelets/images/normal_4.eps, width=\textwidth}  \epsfig {file=/home/vok/tex/wavelets/images/normal_4_pos.eps, width=\textwidth}
\epsfig {file=/home/vok/tex/wavelets/images/even_gabor.eps, width=\textwidth}  \epsfig {file=/home/vok/tex/wavelets/images/even_gabor_pos.eps, width=\textwidth}




Subsections
next up previous
Next: Direct Calculation of Weights Up: Wavelet Networks for Vision Previous: Introduction
Volker Krueger
2001-05-31