CONTENTS |
GENERALIZED RIESZ-WAVELETS | |
Download [Version 1.0] |
Nicolas Chenouard, Dimitri Van De Ville and Michael Unser
We have recently presented a functional framework for the design of tight steerable wavelet frames in any number of dimensions [1]. The 2-D version of the method can be viewed as a generalization of Simoncelli's steerable pyramid [2] that gives access to a larger palette of steerable wavelets via a suitable parametrization. The backbone of the construction is a primal isotropic wavelet frame that provides the multiresolution decomposition of the signal. The steerable wavelets are obtained by applying a one-to-many mapping (Nth-order generalized Riesz transform) to the primal ones. The shaping of the steerable wavelets is controlled by an MxM unitary matrix (where M is the number of wavelet channels) that can be selected arbitrarily; this allows for a much wider range of solutions than the traditional equiangular configuration (steerable pyramid). Toolbox ContentA toolbox that contains Matlab routines for computing the forward and backward generalized Riesz-wavelet transform of high order is provided. We have included utilities for orientation computation, coefficients steering, basic denoising, frame learning. The following demonstration routines may serve as tutorials on the use of the toolbox:
|
This routine performs the decomposition of an image in a higher-order Riesz-wavelet frame, and then reconstruction of the original image from the coefficients in an attempt to illustrate the self-invertibility of the transform.
Number of wavelet scales, order, and image to analyze are all optional input arguments of the routine. By default, the order 2 Riesz transform is used. The Riesz-wavelet filters are dilated versions of the rotating filters shown above, but with a fixed orientation. Intuitively, these filters correspond to the second-order gradient of a smoothing filter. As shown in the animation, perfect steering of the filters is possible by forming suitable linear combinations of the primary filters.
The Riesz-wavelet coefficients are given on the right for the second scale of the transform applied to Barbara. One can check that the first channel contains mostly vertical features as it corresponds to a second-order derivative along the x-axis. The same is valid for the third channel that corresponds to a second-order derivative along the y-axis, while the second channel contains diagonal features of a different kind (first-order derivative along x and y).
Because the Riesz-wavelet transform is a tight frame of L2(ℝd), the transform can be inverted by applying the adjoint operator. In the present case, the root mean square error of reconstruction is 6.5e-14, which is due to numerical inaccuracies.
Riesz-wavelet coefficients (N=2) at scale 2 for Barbara.
This is a demonstration of the monogenic analysis [3] using the isotropic Riesz-wavelet transform toolbox. The monogenic analysis relies on a structured tensor that is based on a complex combination of the Riesz-wavelet transform of orders 0 and 1. This is an extension to the 2-D and multiscale case of the analytic signal. As a result, one can obtain a point-wise estimation of the orientation, phase, amplitude, coherency, and instantaneous frequency for each scale of the wavelet transform.
A composite representation of both orientation and coherency estimated values for 3 wavelet scales of Barbara is shown above. The local orientation is color-coded between -π/2 and π/2, while the coherency value (i.e. the degree of directionality) is coding the transparency: isotropic features are transparent and directional features are opaque.
This routine gives an examplar use of the monogenic analysis for image processing: the equalization of the amplitude in an image is performed, while the phase component is preserved. Reconstruction is performed thanks to the self-invertibility of the Riesz-wavelet transform.
This function demonstrates how to gain rotation-invariance of representation and maximize SNR via point-wise coefficient steeering. Coefficients are steered point-wise with respect to the angle that maximizes the energy of the response of a steerable wavelet profile. This profile is defined as an arbitrary linear combination of primary Riesz-wavelet functions.
We show the steered coeffcients for Barbara with N=2 when the reference profile corresponds to the first Riesz-wavelet function (i.e. the linear combination is [1 0 0]). Because the optimization process of the filters orientation is performed point-wise, we see that the representation becomes rotation-invariant: irrespective of the their orientation, ridge-like features give rise to high energy coefficients. This is not the case for the original Riesz-wavelet representation which is orientation selective because of the fixed orientation of the Riesz-wavelet functions.
It is also been shown [1] that steering the Riesz-wavelet functions in the direction of the local gradient energy, may be beneficial to the analysis and processing of noisy images. This is because white noise lacks any preferred direction. Hence, steering the coefficients as to maximize the energy in a given channel is improving the signal-to-noise ratio in this channel.
This routine is a demonstration of processsing of Riesz-wavelet coefficients. Coefficient denoising is performed in a steered generalized Riesz-wavelet frame before reconstructing the denoised image. The function allows one to check that steering the Riesz-wavelet coefficients may improve the performance of image denoising procedures [1].
Original Riesz-wavelet coefficients at scale 1 (left) v.s. coefficients steered point-wise (right). |
Original Riesz-wavelet coefficients at scale 3 (left) v.s. coefficients steered point-wise (right). |
This is a demonstration of the construction of the Simoncelli's steerable pyramid [2] based on the Riesz-wavelet transform. A specific generalization matrix U is evaluated in order to obtain the basis functions of the steerable pyramid as linear combinations of the Riesz-wavelet ones. It is worth noting that the first channel of the Riesz-wavelet and steeable pyramid transforms are the same and that other filters are equiangular rotated versions of the first one for the Simoncelli's pyramid. Hence, the generalization matrix U encodes equiangular rotation operations of the first Riesz-wavelet filter.
Riesz-wavelet filters at a given scale (N=7). | Steerable pyramid filters at a given scale obtained by linear combination of Riesz-wavelet filters. |
This routine demonstrates a Riesz-wavelet frame learning technique that is using principal component analysis (PCA) [1]. The key idea is to build the unitary generalization matrix U (tight frame) that maximizes signal energy in the first channel, then in the second channel, etc. To do so, eigenvalue decomposition of the covariance matrix through channels of the Riesz transform is performed. It is possible to steer the Riesz-wavelet coefficients according to the local orientation, prior to the learning step. This yields a rotation-invariant procedure for learning tight frames.
Learned Riesz-wavelet filters with PCA for Barbara (2nd scale, N=5). |
Learned Riesz-wavelet filters with PCA for Barbara (2nd scale, N=5). Coefficient steering (tensor) is used prior to learning. |
We show above the filters that are obtained by using the PCA learning technique at the second scale of a Riesz-wavelet transform of order 5 for Barbara. We check (left) that the learning procedure adapts to the dominant orientation of the pattern of the trousers when no steering procedure is used: the first and second basis functions have dominant orientation that is aligned and perpendicular to the stripes of the trousers. The learnining procedure is therefore not rotation-invariant.
When steering is used prior to the learning stage (right), the basis function that yields higher energy response is an edge detector-like function whose orientation is 0. It indicates that edge-like patterns are dominant in this image and at this scale. The learning technique is made rotation-invariant by the steering procedure, as shown by the lack of correlation between learnt filters orientation and the direction of the stripes in the image.
Installation
Decompress the archive and include its content to the matlab path.
Usage
See README.txt or just start one of the demonstration routine listed above.
Version
The current version is 1.0. Changelog:
[1] D. Van De Ville, N. Chenouard and M. Unser, "Steerable Pyramids and Tight Wavelet Frames in L2(ℝd)", IEEE Transactions on Image Processing, vol. 20, no. 10, pp. 2705-2721, October 2011.
[2] E. Simoncelli and W. Freeman, "The steerable pyramid: A flexible architecture for multi-scale derivative computation," in Proceedings of the International Conference on Image Processing, Oct. 23-26, 1995, vol 3, pp. 444-447.
[3] M. Unser, D. Sage, D. Van De Ville,"Multiresolution Monogenic Signal Analysis Using the Riesz-Laplace Wavelet Transform", IEEE Transactions on Image Processing, vol. 18, no. 11, pp. 2402-2418, November 2009.
Nicolas Chenouard is the main author of this library. Dimitri Van De Ville contributed to its development. The work was done under the supervision of Micheal Unser.
Please, address feedback information to Nicolas Chenouard: nicolas #.# chenouard #@# gmail #.# com
© 2022 EPFL • webmaster.big@epfl.ch • 11.08.2022