For each a > 0, each
and each
,
we
define the bivariate ridgelet
:
by
Figure 2 graphs a few ridgelets with different parameter values. The top right, bottom left and right panels are obtained after simple geometric manipulations of the upper left ridgelet, namely rotation, rescaling, and shifting.
Given an integrable bivariate function f(x), we define its ridgelet
coefficients by
Ridgelet analysis may be constructed as
wavelet analysis in the Radon domain. Recall
that the Radon transform of an object f is the collection of line
integrals indexed by
given by
This viewpoint strongly suggests developing approximate Radon transforms for digital data. This subject has received a considerable attention over the last decades as the Radon transform naturally appears as a fundamental tool in many fields of scientific investigation. Our implementation follows a widely used approach in the literature of medical imaging and is based on discrete fast Fourier transforms. The key component is to obtain approximate digital samples from the Fourier transform on a polar grid, i.e. along lines going through the origin in the frequency plane.
A fast implementation of the RT can be performed in the Fourier domain. First the 2D FFT is computed. Then it is interpolated along a number of straight lines equal to the selected number of projections, each line passing through the origin of the 2D frequency space, with a slope equal to the projection angle, and a number of interpolation points equal to the number of rays per projection. The one dimensional inverse Fourier transform of each interpolated array is then evaluated. The FFT based RT is however not straitforward because we need to interpolate the Fourier domain. Furthermore, if we want to have an exact inverse transform, we have to make sure that the lines pass through all frequencies.
For our implementation, we use a pseudo-polar grid. The geometry of the
rectopolar grid is illustrated in Fig. 3. We select 2
n radial lines in the frequency plane obtained by connecting the
origin to the vertices
(k1,k2) lying on the boundary of the array
(k1, k2), i.e. such
that k1 or
.
The polar grid
(
serves to index a given radial line while the
position of the point on that line is indexed by m) that we shall use
is the intersection between the set of radial lines and that of
cartesian lines parallel to the axes. To be more specific, the sample
points along a radial line
whose angle with the vertical
axis is less or equal to
are obtained by intersecting
with the set of horizontal lines
.
Similarly, the intersection with the
vertical lines
defines our sample points whenever the angle between
and the
horizontal axis is less or equal to
.
The cardinality of the
rectopolar grid is equal to 2 n2 as there are 2 n radial lines and
n sampled values on each of these lines. As a result, data
structures associated with this grid will have a rectangular format. We
observe that this choice corresponds to irregularly spaced values of
the angular variable
.
More details can be found
in Starck et al. (2002).
To complete the ridgelet transform, we must take a one-dimensional wavelet transform along the radial variable in Radon space. We now discuss the choice of digital one-dimensional wavelet transform.
Experience has shown that compactly-supported wavelets can lead to many
visual artifacts when used in conjunction with nonlinear processing -
such as hard-thresholding of individual wavelet coefficients -
particularly for decimated wavelet schemes used at critical sampling.
Also, because of the lack of localization of such compactly-supported
wavelets in the frequency domain, fluctuations in coarse-scale wavelet
coefficients can introduce fine-scale fluctuations; this is
undesirable in our setting. Here we take a frequency-domain approach,
where the discrete Fourier transform is reconstructed from the inverse
Radon transform. These considerations lead us to use band-limited
wavelet - whose support is compact in the Fourier domain rather than
the time-domain. Other implementations have made a choice of compact
support in the frequency domain as well (Donoho 1998; Donoho 1997). However, we
have chosen a specific overcomplete system, based on the work of Starck et al. (1994, 1998), who constructed such a
wavelet transform and applied it to interferometric image
reconstruction. The wavelet transform algorithm is based on a scaling
function
such that
vanishes outside of the interval
.
We defined the scaling function
as a renormalized B3-spline
This transform enjoys the following features:
Figure 4 shows the flowgraph of the ridgelet
transform. The ridgelet transform of an image of size
is
an image of size
,
introducing a redundancy factor
equal to 4.
We note that, because our transform is made of a chain of steps, each one of which is invertible, the whole transform is invertible, and so has the exact reconstruction property. For the same reason, the reconstruction is stable under perturbations of the coefficients.
Last but not least, our discrete transform is computationally
attractive. Indeed, the algorithm we presented here has low complexity
since it runs in
flops for an
image.
The ridgelet transform of a digital array of size
is
an array of size
and hence introduces a redundancy factor
equal to 4.
The ridgelet transform is optimal to find only lines of the size of the image. To detect line segments, a partitioning must be introduced (Candès 1998). The image is decomposed into smoothly overlapping blocks of sidelength b pixels in such a way that the overlap between two vertically adjacent blocks is a rectangular array of size b by b/2; we use overlap to avoid blocking artifacts. For an n by n image, we count 2n/b such blocks in each direction.
The partitioning introduces redundancy, as a pixel belongs to 4 neighboring blocks. We present two competing strategies to perform the analysis and synthesis:
![]() |
|||
![]() |
|||
![]() |
(5) |
It is worth mentioning that the spatial partitioning introduces a redundancy factor equal to 4.
The curvelet transform (Donoho & Duncan 2000; Candès & Donoho 1999a; Starck et al. 2002), open us the possibility to analyze an image with different block sizes, but with a single transform. The idea is to first decompose the image into a set of wavelet bands, and to analyze each band by a local ridgelet transform. The block size can be changed at each scale level. Roughly speaking, different levels of the multiscale ridgelet pyramid are used to represent different subbands of a filter bank output. At the same time, this subband decomposition imposes a relationship between the width and length of the important frame elements so that they are anisotropic and obey width = length2.
The discrete curvelet transform of a continuum
function
f(x1,x2) makes use of a dyadic sequence of scales,
and a bank of filters with the property that the passband filter
is concentrated near the frequencies
[22s, 22s+2],
e.g.
The curvelet decomposition is the sequence of the following steps:
It seems that the "à trous'' subband filtering algorithm is
especially
well-adapted to the needs of the digital curvelet transform.
The algorithm decomposes an n by n image I as a superposition of
the form
A sketch of the discrete curvelet transform algorithm is:
This implementation of the curvelet transform is also redundant. The redundancy factor is equal to 16J+1 whenever J scales are employed. Finally, the method enjoys exact reconstruction and stability, because these invertibility holds for each element of the processing chain.
Copyright ESO 2003