Professional Documents
Culture Documents
= dxdy y x f y x b a CRT
b a f
) , ( ) , ( ) , , (
, ,
(1)
where, 2D ridgelet function,
a,b,
(x,y) is generated from a
univariate function, (x) which has vanishing mean and sufficient
decay. The ridgelet,
a,b,
(x,y) is given as,
) / ) sin cos (( ) , (
2 1
, ,
a b y x a y x
b a
+ =
(2)
A ridgelet is a wavelet type function and is constant along the
lines, xcos +ysin = const. Fig. 1(a) shows a typical ridgelet [5].
A ridgelet is much sharper than a sinusoidal wavelet. Fig. 1(b)
shows the 3D view of a wavelet function. In contrast to wavelet
which is efficient in detecting points, a ridgelet is efficient in
(a)
Fig. 1. Visualization of waveforms of (a) ridgelet, (b) wavelet,
and (c) Gabor functions.
(b)
(c)
562 978-1-4244-4291-1/09/$25.00 2009 IEEE ICME 2009
Authorized licensed use limited to: Monash University. Downloaded on November 10, 2009 at 20:32 from IEEE Xplore. Restrictions apply.
detecting lines. The sharp peak in Fig 1(b) indicates that wavelet
can localize the point singularity whereas the sharp edge in Fig.
1(a) means that ridgelet can localize the line singularity. A ridgelet
is also mathematically compared with wavelet and it has been
shown point parameters of a wavelet are replaced by the line
parameters of a ridgelet [5]. This similarity means that like Gabor,
a ridgelet can be tuned at different scales and orientation to create
curvelets. However, unlike Gabor which has oval shape in its
waveform as shown in Fig. 1(c), curvelets are linear in edge
direction (Fig. 1(a)). Therefore, a ridgelet can capture lines and
edges more accurately than Gabor. Furthermore, because of the
oval shapes of Gabor filters, the frequency spectrum covered by a
set of Gabor filters is not complete. In contrast to Gabor, curvelet
covers the entire frequency spectrum. Fig. 2(a) shows that there
many holes between the ovals in the frequency plan of the Gabor
filters [3]. Fig. 2(b) shows the frequency tiling by curvelet
transform with 4 scale decomposition [11]. In Fig. 2(b), s
i
means
scale i, and 1, 2, 3, etc. are the subband or orientation numbers.
Fig. 2(b) clearly shows that curvelet covers the entire frequency
spectrum.
2.2. Curvelet feature extraction
Given a digital image f[m, n] of dimension M by N, the digital
transform, CT
D
(a, b, ) is obtained as,
=
< < N n
D
b a
M m
D
n m n m f b a CT
0
, ,
0
] , [ ] , [ ) , , (
(3)
Equation (3) is implemented in frequency domain and can be
expressed as,
])) , [ ( ]) , [ ( ( ) , , (
, ,
n m FFT n m f FFT IFFT b a CT
D
b a
D
= (4)
A detail description for the implementation of Equation (4)
can be found in [10]. After obtaining the coefficients in CT
D
(a, b,
), the mean and standard deviation are calculated from each set of
curvelet coefficients. Therefore, if n curvelets are used, a feature
vector of dimension 2n is used to represent an image.
This feature extraction is applied to each database image.
Each image is decomposed into 4 or 5 levels of scales using
curvelet transform. The numbers of subbands at different scales are
different. For 4 levels of decomposition, there are 1, 16, 32, and 1
subbands at decomposition level 1, 2, 3, and 4, respectively.
Therefore, 4 levels decomposition creates 50(=1+16+32+1)
subbands of curvelet coefficients. However, because a curvelet
oriented at an angle, produces the same coefficients as a curvelet
oriented at an angle, +, only half of the subbands at level 2 and 3
are used. Therefore, for 4 levels decomposition, total
26(=1+8+16+1) subbands of curvelet coefficients are used. Thus a
feature vector of 52 (=2X26) dimensions is created for each image.
To make the features of different images compatible to each
other, feature elements from different subbands are organized in
the same order in the feature vector, as shown in Fig. 2. According
to Fig. 2, the feature vector, f, for the 0 oriented images of Fig.
3(a) is organized as,
f = {
s1b1
,
s1b1
,
s2b1
,
s2b1
,
s2b2
,
s2b2
, ...,
s2b8
,
s2b8
,
s3b1
,
s3b1
,
s3b2
,
s3b2
, ...,
s3b16
,
s3b16
,
s4b1
,
s4b1
} (5)
where,
sibj
and
sibj
are the mean and standard deviation calculated
from the subband b
j
at scale s
i
. Each image in the database is
represented and indexed using this feature vector.
During retrieval, an image is given as a query. The feature
vector of the query image is compared with the feature vectors of
all images in the database using L
2
distance measure. The distance,
D, between a query feature vector, Q, and a target feature vector,
T, is given by
=
=
n
i
i i
T Q D
2
1
2 2
) (
(6)
Finally, database images are ranked based on the distance
measures and displayed to the users.
3. ROTATION INVARIANT CURVELET FEATURE
The curvelet features described in the previous section are not
rotation invariant. The feature vector changes significantly when
an image is rotated. Consider the three images in Fig. 3. Though
these images have different orientations, their textures are similar.
However, Fig. 4(a) shows that their feature vectors are quite
different. Fig. 4(a) shows some portion of the curvelet feature
values of the three images for a 4 level analysis. The mean
energies of different subbands are shown in the figure. The
maximum and the second maximum mean energies, which identify
the dominant directions of these images, appear in the different
positions in the vectors. Therefore, the feature distances between
these images will be large. Eventually, these images will not be
treated as similar during retrieval though they are actually similar.
Thus, rotation invariant curvelet features are needed so that similar
images with different orientations should have similar feature
vectors.
Fig. 3. Three similar images with orientation (a) 0,
(b) 30, and (c) 60.
In the following, we propose an efficient technique to solve
the rotation variant issue. The idea is to rearrange the feature
values based on their dominant orientation. The feature elements
which show the dominant direction are kept at the first position in
the feature vector and the other elements are shifted circularly
relative to the maximum element. This is done for each scale
(a) (c) (b)
Fig. 2. Frequency Spectrum coverage by (a) Gabor and
(b) curvelet.
(b)
u
U
h
U
l
v
(a)
1
1
1
2 3 4 5 6 7 8 9
10
11
12
13
14
15
16
2 3 4
5
6
7
8
s
1
s
2
1
s
4
s
3
563
Authorized licensed use limited to: Monash University. Downloaded on November 10, 2009 at 20:32 from IEEE Xplore. Restrictions apply.
separately because the numbers of subbands at different scales are
different. By analysing the energy distribution among the feature
elements, it is found in Fig. 4(a) that the maximum and the second
maximum elements always appear together. This is because the
energy of the dominant orientation of an image usually spreads
between two neighboring subbands. Therefore, during
reorganizing the feature elements, these two maximum feature
elements are kept together in the reorganized feature vector
preserving their original relative order. For example, consider the
feature elements of the 0 oriented image of Fig. 3(a) at scale 2.
The maximum and the second maximum mean energies are found
at subbands 3 and 2, respectively. Therefore, the mean energies at
scale 2 are rearranged as,
{
s2b2
,
s2b3
, . . .,
s2b8
,
s2b1
} new arrangement of means
{
s2b1
,
s2b2
, . . .,
s2b7
,
s2b8
} previous arrangement of means
Fig. 4. Energy distribution of different images at different
subbands. (a) Before rotation invariance (b) After rotation
invariance.
Note that the first two maximum means of scale 2 appear
together at the first two positions in the new organization and
s2b2
appears before
s2b3
to maintain their original order. The mean
energies at other scales are also reorganized in the similar way. As
the mean energies determine the dominant orientation of an image,
the standard deviations of different subbands are rearranged in the
same order of the means. After everything is restructured, the final
rotation invariant curvelet feature vector is given as,
f = {
s1b1
,
s1b1
,
s2b2
,
s2b2
, ...,
s2b8
,
s2b8
,
s2b1
,
s2b1
,
s3b4
,
s3b4
,
...,
s3b16
,
s3b16
,
s3b1
,
s3b1
, ...,
s3b3
,
s3b3
,
s4b1
,
s4b1
} (7)
Fig. 4(b) shows the rearranged energies of sub-bands of
scale2 and 3. It is clear that the feature values of different images
are more similar in Fig. 4(b) than in Fig. 4(a).
4. EXPERIMENTAL RESULTS
This section compares the texture retrieval performance of curvelet
features with and without rotation invariance. In this experiment,
we use the widely used Brodatz texture database which consists of
112 images of size 640 by 640 pixels. As the performance of the
rotation invariant feature is tested, a database is needed which
consists of sufficient number of similar images rotated at different
orientations. Therefore, each of original 112 images is rotated to
0
, 30
, 60
, 90
, , and 330