You are on page 1of 19

Texture synthesis using gray-level co-occurrence

models: algorithms, experimental analysis,


and psychophysical support
Anthony C. Copeland
Gopalan Ravichandran
Mohan M. Trivedi, FELLOW SPIE
University of California, San Diego
Computer Vision and Robotics Research
(CVRR) Laboratory
Electrical and Computer Engineering
Department
La Jolla, California 92093-0407
E-mail: trivedi@swiftlet.ucsd.edu
Abstract. The development and evaluation of texture synthesis algo-
rithms is discussed. We present texture synthesis algorithms based on
the gray-level co-occurrence (GLC) model of a texture eld. These algo-
rithms use a texture similarity metric, which is shown to have high cor-
relation with human perception of textures. Synthesis algorithms are
evaluated using extensive experimental analysis. These experiments are
designed to compare various iterative algorithms for synthesizing a ran-
dom texture possessing a given set of second-order probabilities as
characterized by a GLC model. Three texture test cases are selected to
serve as the targets for the synthesis process in the experiments. The
three texture test cases are selected so as to represent three different
types of primitive texture: disordered, weakly ordered, and strongly or-
dered. For each experiment, we judge the relative quality of the algo-
rithms by two criteria. First, we consider the quality of the nal synthe-
sized result in terms of the visual similarity to the target texture as well as
a numerical measure of the error between the GLC models of the syn-
thesized texture and the target texture. Second, we consider the relative
computational efciency of an algorithm, in terms of how quickly the
algorithm converges to the nal result. We conclude that a multiresolu-
tion version of the spin ip algorithm, where an individual pixels gray
level is changed to the gray level that most reduces the weighted error
between the images second order probabilities and the target probabili-
ties, performs the best for all of the texture test cases considered. Finally,
with the help of psychophysical experiments, we demonstrate that the
results for the texture synthesis algorithms have high correlation with the
texture similarities perceived by human observers. 2001 Society of Photo-
Optical Instrumentation Engineers. [DOI: 10.1117/1.1412851]
Subject terms: texture synthesis; gray-level co-occurrence models; algorithms.
Paper 010018 received Jan. 16, 2001; revised manuscript received May 3, 2001;
accepted for publication May 8, 2001.
1 Introduction
Image synthesis or scene generation can be approached
from two somewhat different directions. In the rst, which
can be called qualitative perceptual-cue approach, the
goal is to develop synthetic images that have the appear-
ance of a particular type of textured surface. Capturing the
appearance quality is the primary goal of such synthesis
algorithms. They synthesized textures need to invoke a re-
alistic surface appearance in the observers eyes. Examples
of this kind of synthesis are approaches used in video
games and animated lms. In the second type of synthesis
approach, which can be called quantitative perceptual-
cue approach, the objective is to generate texture elds
that are based on quantitative, physical models underlying
important perceptual cues or physical properties. The abil-
ity to derive a texture eld that has a prescribed quantitative
characterization of the underlying physical and perceptual
models is fundamental in developing these algorithms.
Good examples of this kind of synthesis algorithms are
those required for infrared and visible scene generation for
design and evaluation of target recognition systems.
1
We
concentrate on texture synthesis algorithms of this kind.
Texture is an important preattentive cue in human and
machine vision.
2
Most natural images are rich in texture,
which is the result of regular and repetitive spatial arrange-
ments of some characteristic tiling pattern. Texture models
are shown to form the basis of human preattentive vision.
3
We present texture synthesis algorithms based on the gray-
level co-occurrence GLC model of a texture eld. One of
the important and unique features of this research is to pro-
vide psychophysical experimental support to the synthesis
algorithms. This support is sought for two reasons: rst, to
seek a quantitative metric to compare the similarities be-
tween two textures, which can provide a useful termination
criterion, and second to correlate the performance of a syn-
thesis algorithm to the human observers assessment of tex-
ture similarities and differences. These texture synthesis al-
gorithms are evaluated using extensive experimental
analysis. These experiments are designed to compare vari-
ous iterative algorithms for synthesizing a random texture
possessing a given set of second-order probabilities as char-
2655 Opt. Eng. 40(11) 26552673 (November 2001) 0091-3286/2001/$15.00 2001 Society of Photo-Optical Instrumentation Engineers
acterized in a GLC model. Three texture test cases are se-
lected to serve as the targets for the synthesis process in the
experiments. The three texture test cases are selected to
represent three different types of primitive texture: disor-
dered, weakly ordered, and strongly ordered. For each ex-
periment, we judge the relative quality of the algorithms by
two criteria. First, we consider the quality of the nal syn-
thesized result in terms of the visual similarity to the target
texture, as well as a numerical measure of the error be-
tween the GLC models of the synthesized texture and the
target texture. Second, we consider the relative computa-
tional efciency of an algorithm, in terms of how quickly
the algorithm converges to the nal result. We conclude
that a multiresolution version of the spin ip algorithm
as described in Sec. 3, using a new weighted error crite-
rion, performs the best for all of the texture test cases con-
sidered.
2 Texture Representation and Experimental
Methodology
2.1 GLC Model
The second-order gray level probability distribution of a
texture image can be calculated by considering the gray
levels of pixels in pairs two at a time. A second-order
probability is often called a GLC probability. For a given
displacement vector
x

y
, the joint probability of a
pixel at location (x, y) having a gray level i, and the pixel at
location (x
x
, y
y
) having a gray level j in the tex-
ture, is represented by P(i, j):
P i, j:

1
N

x, y
x, y
I
g f x, yi, f x
x
, y
y
j ,
i0,1, . . . , G1,
j 0,1, . . . , G1, 1
where N is the number of pairs of pixels separated by the
displacement such that both lie within the image I, and
g. 1 if f (x, y)i and f (x
x
, y
y
)j , and g.
0 otherwise. Allowing i and j to take on any of the G
possible integer gray-level values, the GLC probabilities
for any single displacement are normally tabulated in the
form of a GG matrix, with i serving as the row index and
j serving as the column index. The notation P() will be
used to refer to the entire GLC matrix for displacement .
A GLC matrix P is a discrete joint probability distribu-
tion, and as such, the sum of its elements is unity:

i0
G1

j 0
G1
P i, j1. 2
A texture model is developed on the basis of GLC ma-
trices, inspired by the work of Gagalowicz and Ma on tex-
ture synthesis.
4
The model T consists of a set of GLC ma-
trices:
TP :D, 3
where D is the set of displacement vectors. To simplify the
nomenclature, a texture and the model computed from it
will be synonymous, and will be represented as T. The
texture model T is essentially a vector of GLC matrices.
The set of displacement vectors D is an ordered set, dened
as
D


x

y

x
,
y
, T
NX
, T
NY
I
0
x
T
NX
0
y
T
NY

y
0 0
90tan
1
x
y
90

. 4
The displacement vectors are nonredundant and T
NX
and
T
NY
represent the maximum displacement in the x and y di-
rection. For digital images, all
x
and
y
are discrete and
belong to the set of integers I. Figure 1 shows the spatial
axis convention for determining the displacement vector

x

y
for a GLC matrix. Notice that using symmetry
P(i, j)P( j , i), so we need to consider only dis-
placements in directions varying over 180 deg. Thus, while
the x coordinate for the displacement vector is varied from
T
NX
to T
NX
, the y coordinate is varied only from 1 to
T
NY
, plus there are T
NX
additional displacements from 1 0
to T
NX
0. The number of displacements T
NGLC
corre-
sponding to the texture model T is:
T
NGLC
2T
NX
T
NY
T
NX
T
NY
. 5
The number of GLC matrices comprising the model in-
creases drastically and nonlinearly with the latter maximum
displacement values. Higher values of T
NX
and T
NY
will
result in a more extensive texture model, but the computa-
tional cost for a large model may overwhelm the desire for
quality, and a judicious compromise must be made.
After B. Julesz made the important conjecture about the
role of second-order statistics in human texture discrimina-
tion, GLC models have found many useful applications in
machine vision.
5
Many studies have utilized features com-
Fig. 1 Denition of the spatial neighborhood of a pixel for a GLC
model.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2656 Optical Engineering, Vol. 40 No. 11, November 2001
puted from GLC matrices, such as inertia, cluster shade,
entropy, and local homogeneity. Specic denitions for
these measures may be found in Refs. 69. It is known that
these measures do not gauge all the important texture con-
text information contained in a GLC matrix. Therefore the
elements of a GLC matrix themselves are also used as mea-
sures. In several studies to compare the relative power of
various texture analysis techniques to perform texture dis-
crimination, GLC matrices generally outperformed other
methods.
6,1013
GLC matrices have also been used for ob-
ject detection,
7,8
scene analysis,
9,14
as well as texture
synthesis.
4,15,16
Other studies have demonstrated the wealth
of texture information contained within GLC matrices.
1719
Also, the human preattentive vision mechanism has been
shown to be described quantitatively by GLC matrices.
7,12
GLC matrices contain essentially the same information as
some other texture analysis tools, such as Gibbs/Markov
random elds,
20
in that they consist of tabulated second-
order probabilities.
2.2 Experimental Methodology for Comparative
Analysis of Algorithms
We discuss several experiments designed to compare vari-
ous iterative algorithms for synthesizing a random texture
possessing a given set of second-order probabilities as tabu-
lated in a GLC model. For each experiment, we judge the
relative quality of the algorithm in terms of two criteria.
First, we consider the quality of the nal synthesized result,
both qualitatively and quantitatively. Qualitative judgments
are made by comparing the visual appearance of the syn-
thesized texture to that of the original target texture. Quan-
titative judgments are made using a numerical measure of
the error between the GLC models of the synthesized tex-
ture and the target texture. The measure we use for this
purpose is simple average co-occurrence error ACE,
which has also been found to be highly correlated with
human judgments of the visual distinctness between differ-
ent textures.
21,22
It is dened as:
ACE
1
T
NGLC

i0
G1

j 0
G1
P
t
i, jP
b
i, j. 6
Second, we consider the relative computational efciency
of an algorithm in terms of how quickly the algorithm con-
verges to the nal result. Computational efciency is
judged by examining how quickly the value of the ACE
measure decreases versus computing time. All experiments
were performed on the same machine, a Silicon Graphics
Indy with a 132-Mhz IP22 processor. All of the iterative
algorithms discussed require the generation of pseudoran-
dom numbers, which in itself carries a certain computa-
tional overhead. No attempt is made to separate the com-
putational overhead of random number generation from the
rest of the algorithm. We consider the generation of needed
random numbers to be an implicit part of the algorithm.
Fig. 2 The three test cases for the texture synthesis experiments; (a) disordered
(pigskin), (b) strongly ordered (rafa), and (c) weakly ordered (wood grain).
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2657 Optical Engineering, Vol. 40 No. 11, November 2001
2.3 Selection of Texture Test Patterns
We would like to analyze the effectiveness of various syn-
thesis algorithms regardless of what texture is being syn-
thesized. However, image textures have widely varying vi-
sual and statistical qualities. Some texture representation or
synthesis methods may be more or less effective for some
textures than others. For this reason, we selected a set of
three texture test cases to serve as the target textures for all
of the experiments. These three textures are from the Bro-
datz album of textures,
23
and represent all three of the
classes of primitive textures in Raos taxonomy.
24
The three
selected textures are shown in Fig. 2. The pigskin texture,
D92 from Brodatz, is classied by Rao as a disordered
texture; the rafa texture D84 is classied as strongly
ordered; the wood grain texture D68 is classied as
weakly ordered.
As explained previously, the co-occurrence probabilities
in a complete GLC texture model are tabulated in a total of
T
NGLC
matrices, each of which is of size GG. The three
selected texture images were originally quantized to the
standard G256 gray levels. To keep the texture models to
a more easily manageable size, it was desired to reduce the
quantization level of each of the three texture images to
G8 levels. It was also desired to accomplish this histo-
gram reduction with as little change in the appearance of
the textures as possible. This means that we wish to mini-
mize the change in gray levels for every pixel. For this
reason, the K-means clustering algorithm
25
was used to se-
lect the eight gray levels for the new histogram. The algo-
rithm was run separately for each of the three texture test
case images. Figure 3 shows the resulting reduced histo-
grams for the three 256256 texture test images. The vi-
sual appearance of the images with the reduced histograms
is indistinguishable from the original G256 level images
shown previously in Fig. 2. For all of our experiments, we
use the GLC models computed from these G8 reduced
histogram texture images as the target model for the syn-
thesis.
Fig. 3 The three histograms reduced to eight gray levels by clustering: (a) disordered (pigskin), (b)
strongly ordered (rafa), and (c) weakly ordered (wood grain).
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2658 Optical Engineering, Vol. 40 No. 11, November 2001
3 Spin-Flip Versus Spin-Exchange Synthesis
Algorithms
Using a GLC model for image texture, texture synthesis
consists of generating a random pattern with the particular
set of second-order probabilities contained within the target
GLC model. The general procedure is to iteratively modify
a random image so as to bring its second-order probabilities
closer to the target probabilities. There are two basic algo-
rithms that have been used to accomplish this iterative
modication of the image. In the Metropolis spin-ip
algorithm,
26,27
an individual pixels gray level is changed to
the gray level that most reduces the error between the im-
ages current second-order probabilities and the target prob-
abilities. This is essentially the method of Gagalowicz and
Ma.
4
In the Metropolis spin-exchange algorithm, intro-
duced in image analysis by Cross and Jain
28
and applied to
GLC models by Ravichandran, King, and Trivedi
29
and by
Lohmann,
16
pairs of pixels are chosen randomly to be con-
sidered for a gray-level exchange. If exchanging the gray
levels of the two pixels reduces the error between the cur-
rent and target second-order probabilities, then the ex-
change is executed. A temperature annealing schedule can
also be used,
30
which essentially means that the exchange
occurs with probability min1,expE/T), where E is a
measurement of the change in probabilities and T is a tem-
perature that is gradually reduced to zero. Annealing could
also be included with the spin-ip algorithm. However, we
wish to study the performance of synthesis algorithms in-
dependent of annealing schemes, so the synthesis experi-
ments described use no annealing. This corresponds to an
innite annealing temperature, and simply means that the
ip or exchange is always executed if it results in a reduc-
tion in co-occurrence error.
In the rst synthesis experiment, we compare the rela-
tive efciency of the spin-ip and spin-exchange algo-
rithms for iterative modication. For this experiment, the
GLC models used as the targets of the synthesis included
GLC matrices for all displacements up to T
NX
T
NY
8
pixels. In actual practice, the GLC model for the current
image as well as the target GLC model are stored in pro-
Fig. 4 ACE convergence for the spin-ip and spin-exchange algorithms: (a) disordered (pigskin), (b)
strongly ordered (rafa), and (c) weakly ordered (wood grain).
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2659 Optical Engineering, Vol. 40 No. 11, November 2001
gram memory as matrices of integers, representing the ab-
solute number of co-occurrences for every gray-level pair
and for every displacement. If we used the corresponding
probabilities P(i, j), this would require the use of oat-
ing point numbers. Manipulation of integer values gener-
ally requires less computation time and memory than for
oating point numbers. The GLC model for the current
image is updated after every modication by simply incre-
menting or decrementing the appropriate elements in the
matrix for each displacement. To determine how a modi-
cation would affect the co-occurrence error, we count the
number of matrix elements in which the value would be
brought closer to the corresponding value in the target GLC
model. The result of this is that the measure of co-
occurrence error used to determine if a modication would
be benecial is essentially the same as the ACE measure
given in Eq. 6.
For both algorithms, the initial starting point for the it-
erative modication is a 256256 image consisting of pix-
els with uncorrelated, randomly generated gray levels. The
gray level is chosen for each pixel such that the probability
of any particular gray level is the same as its proportion in
the histogram of the target texture. Thus, we can expect that
the histogram of this initial image will be approximately
the same as the histogram of the target texture shown in
Fig. 3.
One iteration is counted when every pixel has been con-
sidered for a modication, and no pixel is considered twice
during a single iteration. The procedure for selecting a pixel
for consideration is to rst select a random location in the
Fig. 5 Spin ip executes a higher proportion of the modications considered: (a) disordered (pigskin),
(b) strongly ordered (rafa), and (c) weakly ordered (wood grain).
Table 1 The number of modications considered and executed.
Executed Considered %
Pigskin s-f: 43,671 327,680 13.3
s-e: 31,499 424,420 7.4
Rafa s-f: 52,395 327,680 16.0
s-e: 38,923 429,064 9.1
Wood grain s-f: 74,712 327,680 22.8
s-e: 54,362 424,710 12.8
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2660 Optical Engineering, Vol. 40 No. 11, November 2001
Fig. 6 The result of ve spin-ip iterations. Synthesized: (a) pigskin, (b) rafa, and
(c) wood grain.
Fig. 7 The result of 15 spin-exchange iterations. Synthesized: (a) pigskin, (b) rafa,
and (c) wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2661 Optical Engineering, Vol. 40 No. 11, November 2001
image. If that pixel has already been considered during the
current iteration, then we step through the image in raster
order until we nd a pixel that has not yet been considered
during the current iteration. We present the result of ve
iterations for the spin-ip algorithm and 15 for spin-
exchange, requiring a roughly similar length of computa-
tion time.
For each of the three texture test cases and for both of
the algorithms, a total of ten patterns was synthesized, each
with a different number provided as the initial seed for the
random number generator. Since the initial random number
seed has an effect on the progress of the synthesis as well
as the nal synthesized result, any single synthesis run is
essentially drawing a sample from the space of all possible
results for any given target GLC model. For this reason, it
would be unwise to draw conclusions about a synthesis
algorithm from only one sample from this space.
Figure 4 shows the value of the ACE measure versus
computing time, for both the spin-ip and the spin-
exchange algorithms. The ACE measure that is plotted in
each case is the average over the ten test runs. These plots
indicate that the spin-ip algorithm converges more quickly
than spin-exchange. It is also evident that the reduction in
ACE levels off to a lower nal level for spin ip than for
spin exchange.
Figure 5 shows the number of modications considered
and the number actually executed for this same experiment.
Again, the statistics plotted are averaged over the ten test
runs. In every case, we see that the spin-exchange algo-
rithm considers modications more quickly. The spin-ip
algorithm requires more time to consider a modication
because it must compute the effect on the error of changing
the pixels gray level to each of the seven other possible
gray levels, while the spin-exchange algorithm must only
consider one possibilitythe simple exchange of gray lev-
els between two pixels. This fact, along with the fact that
the spin-exchange algorithm considers two pixels at a time,
explains why 15 iterations of the spin-exchange algorithm
can be completed in roughly the same computing time as
only ve iterations of spin ip. Also from the plots in Fig.
5, we see that although the spin-exchange algorithm is con-
sidering more modications, the spin ip is actually execut-
Fig. 8 There is a slight change in the image histograms as a result of the spin-ip iterative process: (a)
pigskin, (b) rafa, and (c) wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2662 Optical Engineering, Vol. 40 No. 11, November 2001
ing more. Because the spin-ip algorithm can change a
pixels gray level to any of the other possible gray levels, it
has more exibility and is more likely to discover a change
that will reduce the error. Table 1 gives the nal number of
modications considered and executed. For all three texture
test cases, we see that the spin-ip algorithm executed al-
most double the percentage of modications executed by
spin exchange.
Figure 6 shows the nal result of the spin-ip algorithm
for one of the ten test runs. Figure 7 shows the nal result
of the spin-exchange algorithm. All of the synthesized im-
ages exhibit some speckle, which resembles high-
frequency noise. This is an artifact left over from the ran-
dom uncorrelated gray levels, which served as the initial
image for the synthesis. But we can see that the spin-ip
results exhibit less of this speckle, and generally appear
more similar to the target textures of Fig. 2.
The evidence appears to favor the spin-ip algorithm
over the spin-exchange algorithm. However, we must ad-
dress one important advantage of the spin-exchange algo-
rithm. Since it only allows gray-level exchanges, the histo-
gram of the image being synthesized never changes. For
some applications, this may be required. For example, we
have used the spin-exchange algorithm to generate stimuli
for the texture perception experiments described in Sec. 7.
Since we wished to study the perceptual qualities repre-
sented by second-order statistics separate from rst-order
statistics, we needed images that all possessed exactly the
same histogram. In Fig. 8, we plot the average change,
from initial to nal image, in the number of pixels at each
gray level for the spin-ip algorithm. The error bars show
the spread of the amount of this change over the ten test
runs. For the pigskin texture, the maximum change over all
the gray levels and over all ten test runs was 0.018%; for
rafa, 0.015%; and for wood grain, 0.019%. We feel that
for most applications, the advantages of the spin-ip algo-
rithm in terms of convergence speed and visual quality of
the result outweigh the slight modication of the histogram.
Spin ip is the algorithm used in the experiments that fol-
low.
Fig. 9 ACE convergence for the spin-ip algorithm using weighted error and using absolute error: (a)
pigskin, (b) rafa, and (c) wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2663 Optical Engineering, Vol. 40 No. 11, November 2001
4 GLC Similarity Measures: Absolute Error
Versus Weighted Error
In the previous experiment, to determine how a modica-
tion would affect the co-occurrence error, we counted the
number of matrix elements in which the value would be
brought closer to the corresponding value in the target GLC
model. A change by one co-occurrence in any matrix ele-
ment is considered equivalent to a change of one co-
occurrence in any other matrix element. We refer to this as
a measure of absolute co-occurrence error. In this next ex-
periment, we consider the use of a different, weighted mea-
sure of co-occurrence error. In this new measure, a change
by one co-occurrence in any matrix element is weighted by
the current surplus or decit in co-occurrences, compared
to the target model, in that matrix element. The result is that
if there is a large surplus or decit for a particular matrix
element, this is considered more important than a small
surplus or decit in another element. Using absolute error,
these would be considered of equal importance.
Five iterations of the spin-ip algorithm, using the
weighted error criterion, were run for the three texture test
cases. Figure 9 shows plots of the convergence of the algo-
rithm along with plots from the spin-ip convergence from
the previous experiment, using absolute error. Again, all
statistics are averaged over ten test runs. During the early
stages of the iterative modication, the ACE using absolute
error drops more quickly than the ACE using weighted er-
ror. This is most evident in the plot for wood grain. But
eventually, the algorithm using weighted error settles to a
Fig. 10 Using weighted error executes a much higher percentage of changes: (a) pigskin, (b) rafa,
and (c) wood grain.
Table 2 The number of modications considered and executed.
Executed Considered %
Pigskin absolute: 43,671 327,680 13.3
weighted: 222,910 327,680 68.0
Rafa absolute: 52,395 327,680 16.0
weighted: 199,240 327,680 60.8
Wood grain absolute: 74,712 327,680 22.8
weighted: 165,370 327,680 50.5
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2664 Optical Engineering, Vol. 40 No. 11, November 2001
lower ACE value for all three test cases. Figure 10 shows
that both algorithms consider modications at about the
same rate, but the algorithm using weighted error executes
many more of them. Table 2 gives the nal number of
modications considered and executed. Again, we see that
using weighted error greatly increases the proportion of
modications considered that are executed. Figure 11
shows the nal result after ve iterations of the spin-ip
algorithm using weighted error for one of the ten test runs.
Comparing these images to the ones for absolute error in
Fig. 6, we see that using weighted error results in less of the
speckle that was evident previously, and produces a nal
result that appears more similar to the desired target tex-
tures. Spin ip using weighted error is the algorithm used
in the experiments that follow.
5 Evaluating Spatial Neighborhood Extent
Effects
As mentioned previously, the number of matrices in a GLC
model increases drastically and nonlinearly with higher val-
ues of T
NX
and T
NY
. In the next experiment, we compare
the results of texture synthesis for varying values of T
NX
and T
NY
. In the previous experiments, we used GLC mod-
els with T
NX
T
NY
8 pixels. In this experiment, we try
values for these parameters of 2, 4, and 16 pixels. In every
case, these parameters describe the extent of the spatial
neighborhood for the target GLC model as well as the
model of the image being synthesized.
Figure 12 shows the convergence of spin-ip iterative
modication using weighted error for various values for the
maximum spatial extent of the texture model. It is of no
benet to compare the magnitude of ACE computed for
GLC models for different values of T
NX
and T
NY
, since the
error is averaged over a different set of displacement vec-
tors D. Instead, these plots are presented to compare how
quickly the value of ACE levels off to a nal level. It is
evident the ACE levels off much more quickly for maxi-
mum displacements of 2 or 4 pixels than for 8 from the
previous experiment or 16 pixels. Figure 13 shows the
number of iterative modications considered and executed
for various values of T
NX
and T
NY
. The smaller the spatial
extent of the GLC model, the more quickly modications
are both considered and executed. This is because the algo-
rithm must examine the GLC matrix for every displacement
in the set D and consider the effect the modication would
have on the error for that matrix.
6 Multiresolution Texture Synthesis Approach
The previous experiment demonstrated how much more
quickly the synthesis considers and executes modications
for GLC models of lesser spatial extent. However, a GLC
model using a spatial model of lesser extent is less success-
ful at capturing information about patterns with larger tex-
ture tiles.
29
In this section, we examine a multiresolution
approach to the synthesis algorithm, which is capable of
synthesizing larger tile patterns while still taking advantage
of the increased speed of using a GLC model of small
Fig. 11 The result of ve spin-ip iterations using weighted error: (a) synthesized
pigskin, (b) synthesized rafa, and (c) synthesized wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2665 Optical Engineering, Vol. 40 No. 11, November 2001
spatial extent. Figure 14 shows the general scheme for mul-
tiresolution texture synthesis. The original texture image,
which will be the target of the synthesis, is at the upper left
of the diagram. The GLC model is computed from the tex-
ture image at its original scale, then the resolution of the
image is halved twice, and the GLC model is also com-
puted from these two smaller images. The synthesis begins
at the lowest level of resolution, at the bottom right of the
diagram. The initial image subjected to the spin-ip algo-
rithm at the lowest level consists of pixels with uncorre-
lated, randomly generated gray levels. The initial image for
the two higher levels is the one synthesized at the next
lower level, but doubled in size. In this manner, larger tex-
ture tiles can be synthesized rst, and then the ner details
of the texture are synthesized.
Figure 15 shows the result of multiresolution synthesis,
using a model at each resolution level with maximum spa-
tial extent of T
NX
T
NY
2. Figures 16 and 17 show the
result for spatial extents of T
NX
T
NY
4 and T
NX
T
NY
8. Comparing the images in Fig. 15 to those in Fig. 11,
we see that we can achieve results using the multiresolution
approach and relatively small T
NX
T
NY
2 models compa-
rable to the single resolution results using a much larger
T
NX
T
NY
8 model. Also from these results, we see that
for the pigskin and rafa textures, there is no noticeable
difference in the multiresolution results as we increase the
size of the models from T
NX
T
NY
2 to T
NX
T
NY
8.
These texture patterns consist of relatively small tiles. For
the wood grain texture, the results for T
NX
T
NY
4 and
T
NX
T
NY
8 have large shading patterns similar to the tar-
get texture in Fig. 2, which are not evident in the results for
T
NX
T
NY
2. It is clear that some textures will require a
GLC model of larger spatial extent to capture information
about larger tiling patterns.
The texture synthesis algorithms presented can be used
for a wide range of textures. As an illustration, Fig. 18
shows an image of stones and bushes from a natural scene
and the result of multiresolution synthesis of the natural
texture, using models with spatial extents of T
NX
T
NY
4
pixels. The total computation time was 2.5 min.
Fig. 12 Spin-ip iterative modications for various values of the parameters representing the maxi-
mum spatial extent of the texture model, T
NX
and T
NY
: (a) pigskin, (b) rafa, and (c) wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2666 Optical Engineering, Vol. 40 No. 11, November 2001
7 Hybrid Texture Synthesis and Psychophysical
Study
The purpose of this next experiment is to assess the ability
of the GLC-based error metric Eq. 6 to model the per-
ceptual distance between textured patterns by considering
the case where the texture patterns are hybrids of two sig-
nicantly different textures. The creation of the stimuli to
be used in the experiment was accomplished as follows.
Two different 256256 texture patterns were selected. Af-
ter experimenting with several different pairs of textures,
we settled on a wood grain texture and a grass texture, both
from the Brodatz album of textures.
23
These two texture
patterns are shown in Fig. 19. The grass texture is consid-
ered disordered, while the wood grain texture is weakly
ordered.
24
The GLC models were then computed from the two tex-
ture images, considering all possible displacements of up to
nxny8 pixels. From these two GLC models, nine new
synthetic models were created by linearly combining the
two real models using nine different weighting schemes.
This linear combination was performed by simply taking
each element of each GLC matrix for texture model A,
multiplying it by the weight w
A
, and adding it to the cor-
responding matrix element from texture model B multiplied
by weight w
B
. The weights were chosen such that they
always summed to unity, meaning that the resulting syn-
thetic model represents a proper probability distribution in
that the elements in each GLC matrix also sum to unity.
This combination of two real GLC models to form a syn-
thetic model is described by Eq. 7:
P
w
A
, w
B

i, jdw
A
P
A
i, jdw
B
P
B
i, jd i, j , d
w
A
w
B
1. 7
A synthetic texture model created in this way from textures
A and B can be described by the two weights, w
A
and w
B
.
These models will be referred to as hybrid texture models.
Designating the grass texture model as A and the wood
grain model as B, the nine hybrid texture models for our
Fig. 13 Iterative modications considered and executed for various values for the maximum spatial
extent of the texture model: (a) pigskin, (b) rafa, and (c) wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2667 Optical Engineering, Vol. 40 No. 11, November 2001
Fig. 14 The general scheme for multiresolution texture synthesis.
Fig. 15 The result of multiresolution synthesis using a model with maximum
spatial extent of T
NX
T
NY
2 pixels: (a) synthesized pigskin, (b) synthesized raf-
a, and (c) synthesized wood grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2668 Optical Engineering, Vol. 40 No. 11, November 2001
Fig. 16 The result of multiresolution synthesis using a model with maximum spa-
tial extent of T
NX
T
NY
4 pixels. Synthesized: (a) pigskin, (b) rafa, and (c) wood
grain.
Fig. 17 The result of multiresolution synthesis using a model with maximum spa-
tial extent of T
NX
T
NY
8 pixels. Synthesized: (a) pigskin, (b) rafa, and (c) wood
grain.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2669 Optical Engineering, Vol. 40 No. 11, November 2001
experiment were created using the weighting schemes
(w
A
, w
B
) as follows: 0.9,0.1, 0.8,0.2, 0.7,0.3,
0.6,0.4, 0.5,0.5, 0.4,0.6, 0.3,0.7, 0.2,0.8, and
0.1,0.9. Together with the two original models, A 1,0
and B 0,1, we now have a total of eleven GLC models.
Next, eleven different 256256 textures were synthesized
with the spin-exchange method, using the eleven GLC
models as inputs. The synthesis process in every case was
continued until no further improvement in the results was
evident. Also, a different initial seed for the random num-
ber generator was used for each of the eleven textures,
resulting in a unique initial spatial distribution of pixel in-
tensities. These eleven different synthesized textures would
serve as the background patterns for the experiment stimuli.
Target patterns were again synthesized in a 9696
square in the center of each of the 256256 background
textures. The GLC model from which the target pattern was
synthesized in every case was the model computed from
the original grass texture the 1,0 model. Thus, the
stimuli all had the same target texture model and only the
background textures were different. The spin-exchange al-
gorithm was used for the synthesis, with blending along the
boundary between target and background to minimize edge
effects. Once again, the synthesis process in every case was
continued until no further improvement in the results was
evident, and a different initial random number seed was
used for each target. The eleven stimuli used in the experi-
ment are shown in Fig. 20. Stimulus 1 should rheoretically
have no target visible, since the original grass 1,0 model
was used for both target and background synthesis. Stimu-
lus 11 should theoretically have the most visible target,
since it consists of a texture synthesized from the grass
1,0 model against a background synthesized from the
wood 0,1 model. The nine stimuli between these two ex-
tremes have targets synthesize from the grass 1,0 model
against backgrounds synthesized from the hybrid texture
models.
A paired-comparison experiment was conducted using
the synthesized stimuli. Since there were n11 stimuli
used in the experiment, there were a total of n(n1)/2
(11)(10)/255 possible pairs of stimuli. For each paired
comparison, the human observer was required as before to
choose the image in which he thought the target pattern is
more distinct from its background. So the attribute being
judged in the experiment is the perceptual distinctness of
the target from the background, but no specic instructions
were given on what perceptual cues the test subjects were
Fig. 18 A (a) natural texture and (b) the result of multiresolution synthesis for the
texture.
Fig. 19 The original texture images for the texture hybridization experiment: (a)
grass and (b) wood.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2670 Optical Engineering, Vol. 40 No. 11, November 2001
to use when making their decisions. Ten observers were
used. The data that were collected from the experiment
consist of the number of times, out of ten observations, that
each of the stimuli was judged greater than each of the
other stimuli, i.e., its target pattern was judged more dis-
tinct. This raw data was used in a law of comparative judg-
ment LCJ analysis to solve for the scale values for each
stimulus.
31
The scale values resulting from this method are
given in the fourth column of Table 3. Figure 21 shows
graphically the relative locations of the scale values along
the perceptual continuum representing target distinctness.
Note that stimulus 11 could not be assigned a relative scale
because it was chosen over every other stimulus by every
observer. In this case, we can think of the normal curve
Fig. 20 The stimuli used in the texture hybridization experiment.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2671 Optical Engineering, Vol. 40 No. 11, November 2001
representing the distribution of discriminal processes for
stimulus 11 as being so far separated from the distributions
of the other stimuli as to have practically zero overlap, so
we cannot accurately estimate its relative location on the
continuum. It was impossible to foresee this situation when
the stimuli for the experiment were created. There was,
however, plenty of perceptual overlap among the other ten
stimuli, so the LCJ analysis was successful when only these
ten were analyzed. These scale values, neglecting stimulus
11, exhibit a correlation of 0.93 with the ACE measure Eq.
6. Figure 22 shows the ten nite stimuli plotted using the
ACE metric computations and the LCJ scale values. Also
shown is the best tting line from a linear regression analy-
sis.
8 Concluding Remarks
We have presented development and analysis of texture
synthesis algorithms based on GLC model of a texture
eld. One of the important and unique features of this re-
search is to provide psychophysical experimental support to
the synthesis algorithms. This support is sought for two
reasons: rst, to seek a quantitative metric to compare the
similarities between two textures, which can provide a use-
ful termination criterion; and second, to correlate the per-
formance of a synthesis algorithm to the human observers
assessment of texture similarities and differences. These al-
gorithms are evaluated using extensive experimental analy-
sis. These experiments are designed to compare various it-
erative algorithms for synthesizing a random texture
possessing a given set of second-order probabilities as char-
acterized in a GLC model. Three texture test cases were
selected to serve as the targets for the synthesis process in
the experiments. The three texture test cases are selected so
as to represent three different types of primitive texture:
disordered, weakly ordered, and strongly ordered. For each
experiment, we judge the relative quality of the algorithms
by two criteria. First, we consider the quality of the nal
synthesized result in terms of the visual similarity to the
target texture as well as a numerical measure of the error
between the GLC models of the synthesized texture and the
target texture. Second, we consider the relative computa-
tional efciency of an algorithm, in terms of how quickly
the algorithm converges to the nal result. We conclude
that a multiresolution version of the spin-ip algorithm,
using a new weighted error criterion, performs the best for
all of the texture test case considered. Also, with the help of
psychophysical experiments, we were able to demonstrate a
Fig. 21 The relative locations of the scale values along the percep-
tual continuum representing target distinctness.
Fig. 22 The ten nite stimuli in the texture hybridization experiment plotted using the
ACE metric computations and the LCJ scale values.
Table 3 The scale values for the 11 stimuli in the texture hybridiza-
tion experiment.
Stimulus # Target Model Bkgnd. Model Scale Value
1 (1,0) (1,0) 1.29
2 (1,0) (.9,.1) 0.00
3 (1,0) (.8,.2) 2.14
4 (1,0) (.7,.3) 2.14
5 (1,0) (.6,.4) 1.61
6 (1,0) (.5,.5) 2.90
7 (1,0) (.4,.6) 3.16
8 (1,0) (.3,.7) 3.77
9 (1,0) (.2,.8) 5.22
10 (1,0) (.1,.9) 4.37
11 (1,0) (0,1)
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2672 Optical Engineering, Vol. 40 No. 11, November 2001
high degree of correlation between synthetically generated
textures and how human observers perceive texture differ-
ences.
Acknowledgments
This research was partially supported by grant DAAK70-
93-C-0037 from the Night Vision and Electronic Sensors
Directorate of the U.S. Army. We also thank Dr. Mukul
Shirvaikar for his assistance.
References
1. G. R. Gerhart, E. L. Bednarz, T. J. Meitzler, E. Sohn, and R. E.
Karlsen, Target acquisition methodology for visual and infrared im-
aging sensors, Opt. Eng. 3510, 30263036 1996.
2. M. D. Levine, Vision in Man and Machine, McGraw-Hill, New York
1985.
3. B. Julesz and R. Bergen, Textons, the fundamental elements in pre-
attentive vision and perception of textures, in RCV87, pp. 243256
1987.
4. A. Gagalowicz and S. De Ma, Sequential synthesis of natural tex-
tures, Comput. Vis. Graph. Image Process. 30, 289315 1985.
5. B. Julesz, Visual pattern discrimination, IRE Trans. Inf. Theory
82, 8492 1962.
6. R. M. Haralick, K. Shanmugan, and I. H. Dinstein, Textural features
for image classication, IEEE Trans. Syst. Man Cybern. 3, 610621
1973.
7. M. M. Trivedi, C.A. Harlow, R. W. Conners, and S. Goh, Object
detection based on gray level cooccurrence, Comput. Vis. Graph.
Image Process. 28, 199219 1984.
8. M. M. Trivedi and C. A. Harlow, Identication of unique objects in
high resolution aerial images, Opt. Eng. 243, 502506 1985.
9. R. W. Conners, M. M. Trivedi, and C. A. Harlow, Segmentation of a
high-resolution urban scene using texture operators, Comput. Vis.
Graph. Image Process. 253, 273310 1984.
10. R. W. Conners and C. A. Harlow, A theoretical comparison of tex-
ture algorithms, IEEE Trans. Pattern Anal. Mach. Intell. PAMI-23,
204222 1980.
11. P. P. Ohanian and R. C. Dubes, Performance evaluation for four
classes of textural features, Pattern Recogn. 258, 819833 1992.
12. R. W. Conners and C. T. Ng, Developing a quantitative model of
human preattentive vision, IEEE Trans. Syst. Man Cybern. 196,
13841407 1989.
13. J. S. Weszka, C. R. Dyer, and A. Rosenfeld, A comparative study of
texture measures for terrain classication, IEEE Trans. Syst. Man
Cybern. 6, 269285 1976.
14. C. A. Harlow, M. M. Trivedi, R. W. Conners, and D. Phillips, Scene
analysis of high resolution aerial scenes, Opt. Eng. 253, 347355
1986.
15. A. Gagalowicz, A new method for texture elds synthesis: Some
applications to the study of human vision, IEEE Trans. Pattern Anal.
Mach. Intell. PAMI-35, 520533 1981.
16. G. Lohmann, Co-occurrence-based analysis and synthesis of tex-
tures, in 12th IAPR Intl. Conf. Patt. Recog. (ICPR), Vol. 1, pp. 449
453, Jerusalem, Israel 1994.
17. A. R. Figueiras-Vidal, J. M. Paez-Borrallo, and R. Garcia-Gomez,
On using cooccurrence matrices to detect periodicities, IEEE
Trans. Acoust., Speech, Signal Process. 351, 114116 1987.
18. J. Parkinnen, K. Selkainaho, and E. Oja, Detecting texture periodic-
ity from the cooccurrence matrix, Pattern Recogn. Lett. 11, 4350
1990.
19. C. C. Gotlieb and H. E. Kreyszig, Texture descriptors based on
co-occurrence matrices, Comput. Vis. Graph. Image Process. 51,
7086 1990.
20. I. M. Elfadel and R. W. Picard, Gibbs random elds, cooccurrences,
and texture modeling, IEEE Trans. Pattern Anal. Mach. Intell. 161,
2437 1994.
21. A. C. Copeland and M. M. Trivedi, Signature strength metrics for
camouaged targets corresponding to human perceptual cues, Opt.
Eng. 372, 582591 1998.
22. A. C. Copeland and M. M. Trivedi, Texture perception in humans
and computers: Models and psychophysical experiments, Proc. SPIE
2742, 436446 1996.
23. P. Brodatz, TexturesA Photographic Album for Artists and Design-
ers, Dover Publications, New York 1966.
24. A. Ravishankar Rao, A Taxonomy for Texture Description and Identi-
cation, Springer-Verlag, New York 1990.
25. J. T. Tou and R. C. Gonzalez, Pattern Recognition Principles,
Addison-Wesley, Reading, MA 1974.
26. N. Metropolis, A. Rosenbluth, M. Rosenbluth, A. Teller, and E. Teller,
Equation of state calculations by fast computing machines, Chem.
Phys. 21, 10871092 1953.
27. J. M. Carstensen, Description and Simulation of Visual Texture,
PhD thesis, Technical University of Denmark 1992.
28. G. R. Cross and A. K. Jain, Markov random eld texture models,
IEEE Trans. Pattern Anal. Mach. Intell. 51, 2539 1983.
29. G. Ravichandran, E. J. King, and M. M. Trivedi, Texture synthesis:
A multiresolution approach, in Proc. Ground Target Modeling and
Validation Conf., Houghton, MI 1994.
30. R. W. Picard, I. M. Elfadel, and A. P. Pentland, Markov/Gibbs tex-
ture modeling: Aura matrices and temperature effects, in Proc. IEEE
Computer Soc. Conf. on Computer Vision Patt. Recog. (CVPR), 371
377 1991.
31. A. C. Copeland, M. M. Trivedi, and J. R. McManamey, Evaluation
of image metrics for target discrimination using psychophysical ex-
periments, Opt. Eng. 356, 17141722 1996.
Anthony C. Copeland received the BSEE
degree in 1988 from the US Military Acad-
emy at West Point, New York, and the
MSEE and PhD degrees in 1993 and 1996
from the University of Tennessee, Knox-
ville. He was a signal corps ofcer in the
US Army from 1988 to 1991, which in-
cluded service as a communications node
platoon leader from the 24th Infantry Divi-
sion (Mechanized) during Operation Desert
Shield/Storm. He was employed as a re-
search engineer during 1996 to 1997 in the Electrical and Computer
Engineering Department at the University of California, San Diego,
performing research in image understanding, texture analysis, and
human visual perception. Since 1997, he has developed real-time
signal processing systems for hyperspectral sensors at PAR Gov-
ernment Systems Corporation in San Diego.
Gopalan Ravichandran is the co-founder and CTO of iTrenders
Inc. He received his BTech degree from the Indian Institute of Tech-
nology at Madras, India in 1987, followed by his MS and PhD de-
grees from Carnegie Mellon University at Pittsburgh in 1989 and
1992, respectively. He was a research associate at the Computer
Vision and Robotics Research (CVRR) Laboratory, Department of
Electrical Engineering, University of Tennessee, Knoxville, where he
contributed to the work on texture analysis and synthesis, before he
moved on to SRI International in 1995. His recent work includes the
application of pattern recognition techniques to business intelligence
systems for automated detection of general market trends, and spe-
cically customer behavioral trends to streamline the positioning of
products and services.
Mohan M. Trivedi is a professor in the
Electrical and Computer Engineering De-
partment of the University of California,
San Diego where he serves as the Director
of the Computer Vision and Robotics Re-
search Laboratory (http://cvrr.ucsd.edu).
He and his team are engaged in a broad
range of research studies in active percep-
tion and novel machine vision systems, in-
telligent (smart) environments, distrib-
uted video networks, and intelligent
systems. At UCSD, Trivedi also serves on the Executive Committee
of the California Institute for Telecommunication and Information
Technologies, Cal (IT) 2, leading the team involved in the Intelligent
Transportation and Telematics projects. Trivedi serves as the Editor-
in-Chief of Machine Visions and Applications, the ofce journal of
the International Association of Pattern Recognition. He is a fre-
quent consultant to various national and international industry and
government agencies. Trivedi is a recipient of the Pioneer Award
(Technical Activities) and the Meritorious Service Award of the IEEE
Computer Society and the Distinguished Alumnus Award from the
Utah State University. He is a Fellow of SPIE.
Copeland, Ravichandran, and Trivedi: Texture synthesis . . .
2673 Optical Engineering, Vol. 40 No. 11, November 2001

You might also like