Sie sind auf Seite 1von 6

TWO LOW LEVEL IMAGE PROCESSING TECHNIQUES FOR

THE CHARACTERIZATION OF COMPOSITE SYSTEMS



Julio Martn-Herrero

Department of Signal Theory and Communications
University of Vigo
Vigo, Spain
Fax: +34-986-812-121
Phone: +34-986-812-126
julio@uvigo.es


ABSTRACT
Composite systems are usually modeled as regular host matrixes with inclusions of one or several
different species. From a computational point of view, this kind of representation, either in two or three
dimensions, is undistinguishable from a digital image. Therefore, fundamental low level image
processing techniques can be, and de facto are, applied to the study of composite systems. One of the
basic tasks at the root of many studies is the identification and characterization of aggregates of matrix
cells belonging to the same species. Another common necessity is the characterization of the local
structure at every node in the matrix. I present novel techniques for these two tasks which are specially
suited for typical problems in spatial analysis of composites: Hybrid cluster identification, an algorithm
for the identification of aggregates which outperforms the best known algorithms for cluster labeling
while allowing the simultaneous characterization of the aggregates, and Sthr Edge Encoding (SEE), an
encoding scheme for the local configuration of matrix nodes which facilitates the implementation of
discrete, grid based numerical methods, such as finite elements (FEM), finite differences (FDM), or
boundary elements (BEM). I will describe the methods and show an example of the application of both
techniques to the characterization of the effective response of composites using a numerical method to
solve the Dirichlet problem of the potential at the boundaries of the inclusions.

Keywords: Low-level image processing, grid methods, composite systems


INTRODUCTION
Image processing techniques are extensively used for the analysis of samples of composite materials,
using imaging methods such as light microscopical techniques, from optical reflection microscopy and
confocal laser scanning microscopy to novel techniques such raman microscopy, tomography, and
microtomography, as well as non-optical microscopy techniques including electron microscopy, nuclear
magnetic resonance and ultrasonics, and scanning acoustic microscopy [1]. However, image processing
techniques can also be successfully used in the implementation of numerical methods for the analysis of
composite systems when these are modeled with regular discrete grids, which, from a computational
point of view, do not differ from digital images.
Composites are often modeled as host matrixes with inclusions of one or several species, and regular
lattices are used to discretize matrix and inclusions. Thus modeled, if lattice cells covering host material
are interpreted as background pixels, and lattice cells covering inclusion material are interpreted as
pixels of different colors (different species), the model is indistinguishable from a digital monochrome
(if only one species is present) or color (if several species are present) image. As such, there is a wealth
of image processing techniques that can be used to aid in analysis and simulation.
One of the basic tasks is the identification and characterization of aggregates of cells belonging to the
same species. This is known in image processing as object labeling or connected component labeling
[2], and in statistical physics as cluster identification or labeling [3]. Another common task is the
characterization of the local structure of the lattice. In this paper I present novel techniques for these two
tasks which are specially suited for typical problems in spatial analysis of composites. Hybrid cluster
identification [4] is an algorithm for the identification of aggregates which outperforms the best known
algorithms while allowing the simultaneous characterization of aggregates. Hybrid cluster identification
combines traditional recursive labeling [5][2] with iterative scanning, keeping the advantages of
recursive and two-pass iterative methods while minimizing their drawbacks: The risk of a stack
overflow, and the necessity of a second pass and additional data structures, respectively. Sthr Edge
Encoding (SEE) [6][7] is an efficient encoding scheme for the local configuration of lattice nodes which
facilitates the implementation of discrete, grid based numerical methods, such as finite differences
methods. SEE allows fast indexing of lattice nodes by their local structure, and keeps a convenient
internal representation of the local structure of each node, which optimizes the computation of boundary
conditions at interfaces and the resolution of surface and volume integrals, among others.
In the following I describe both techniques and show an example of their application to the
characterization of the effective response of composites using a Monte Carlo method to solve the
Dirichlet problem of the potential at the boundaries of the inclusions [6][8].

HYBRID CLUSTER IDENTIFICATION
Cluster labeling algorithms can be classified into two classes: Recursive or cluster growth techniques
and two-pass iterative techniques. The classical recursive technique [9][10][5] labels all aggregates in
the lattice with a single pass over the lattice, assigning the same integer label to every cell of each
aggregate. Labels are consecutive, and each aggregate is labeled with definitive labels at the first touch,
allowing very easy characterization, such as area/volume, perimeter/surface, centre of masses, axes, or
bounding box, during the labeling. The algorithm is very simple: When the first cell in an aggregate is
found, a recursive function is called which assigns the current label to that cell, looks into the
neighborhood for more inclusion cells and, if any is found, calls itself to repeat the procedure at that
cell. The major drawback of the recursive techniques is the need of an oversized stack to hold a high
number of recursive calls when labeling big aggregates. The stack size is usually limited by the system,
and labeling even moderately sized aggregates may become impossible.
Two-pass iterative techniques [2][11] use exclusively iterative scanning, first assigning temporary labels
to each cell, and then in a second pass translating conflicting labels into correct ones according to a
global equivalence table, constructed during the first pass by adding equivalence entries every time a
conflicting label (a label in an adjacent cell different from the current label) is found. The global
equivalence table is implemented with optimized structures, such as the Union-Find data structure [12].
However, this implies greater complexity than the recursive technique. Besides, the temporary labeling
hinders the parallel characterization of the aggregates, and usually a third pass is needed for
characterization. Parallel characterization is possible, but at a considerable cost [13].
Hybrid cluster labeling takes the best of both worlds to keep the advantages of recursive labeling
(simplicity and parallel aggregate characterization) while minimizing the stack size, without needing to
resort to additional data structures. It labels cells in bursts, which it scans iteratively, and reserves
recursive calls exclusively to enter the bursts. A burst of cells is a set of adjacent cells along the same
lattice row, bounded by lattice boundaries or host cells. When the first cell in an aggregate is detected, a
function labels iteratively the whole burst including the cell, and then examines the adjacent rows along
the burst in search of another inclusion cell. If any is found, the function calls itself to repeat the
procedure with the newly found burst. If every inclusion in the host matrix were covered by a single
cell, hybrid labeling and traditional recursive labeling would have the same cost. If inclusion cells are
grouped, and speaking about aggregates has sense, the number of recursive calls per aggregate is
reduced in proportion to the aggregation density [4]. If the aggregation is anisotropic, as it is the case
with oriented fibers, and the composite is modeled with the principal axis of the fibers in the direction of
the lattice rows, the decrease can be impressive.
Concretely, using a 512
2
lattice, hybrid labeling needed 9% of the recursive calls needed by traditional
recursive labeling for uniform random distributions of inclusion cells, 3% for Ising samples, and 0.2%
for random distributions of square aggregates of cells in the same lattices. This was accompanied with a
speed increase of 17%, 26%, and 74%, respectively. It was also faster than Union-Find iterative labeling
(1%, 9%, and 42%, respectively), while allowing for easy simultaneous aggregate characterization.
A typical application of aggregate labeling is checking for percolation (connectivity between
boundaries) [14]. With two-pass iterative methods, a third pass is needed after the whole lattice has been
labeled, and the conflicting labels translated, to check for matches between opposite lattice borders.
Recursive labeling allows percolation detection during the labeling (by checking if two opposite
boundaries are visited during the labeling of a single aggregate), clearly outperforming the iterative
methods. Moreover, if percolation checking is the only purpose of the labeling, only the aggregates
touching one of the lattice boundaries need to be labeled. If the opposite boundary is reached during the
procedure, percolation does exist. This very fast percolation checking., can be made even faster, and
robust, if hybrid labeling is used instead of traditional recursive labeling, with lattice rows in the
direction of suspected percolation.

STHR EDGE ENCODING
Solving numerical methods on the lattice that represents the composite usually involves iterative
computations at each cell of the lattice, or at each node of the mesh rendered by the lattice, computations
determined by the local configuration of the nodes. The determination of the local configuration requires
the inspection of the neighbor cells of each node to determine if they cover inclusion or host material.
Doing this in each iteration is a considerable overhead.
A solution is to encode the local configuration of the cells surrounding each node according to an
efficient scheme, such that later, during the iterative computations, the code associated to each node will
determine the local configuration. One such a scheme is Sthr Edge Encoding (SEE) [7].
Let us call a lattice cell covering inclusion material an occupied cell, and a cell covering host material an
empty cell. A mesh of node codes is set to all zeros. An integer weight is assigned to each corner of
every cell in the lattice, such that in a single scan the weight of each corner of each occupied cell is
added to the code of the corresponding node. After the scan, every node in the mesh has a code
describing the configuration of the surrounding cells.
We use as weights the first four (2D) or eight (3D) elements in the 4(-8)-Sthr sequence. An h-Sthr
sequence [15] is defined as follows: let a
1
= 1 and define a
n+1
to be the least integer greater than a
n

which cannot be written as the sum of at most h addends among the terms a
1
, a
2
, , a
n
. Using the first
members of the 4(-8)-Sthr sequence warrants that all the possible sums where each element can occur
at most once span an entire integer interval from 0 ([0, 15] in the 2D case), i.e. every code belongs to the
interval, and every integer in the interval is a meaningful code. This allows using the codes directly as
indexes in a look-up table (LUT) of parameters.

Fig.1. SEE with Bornvon Karman periodic boundaries. Dark cells are inclusion cells. Node codes (right)
are the result of adding up (center) the corresponding weights in dark cells (left). A 0 node is embedded in
host material, a 15 node is embedded in an inclusion. All the rest are boundaries inclusion/host.
I will illustrate the 2D case for clarity. The 3D case follows in a straightforward manner. The first four
elements of the 4-Sthr sequence are {1, 2, 4, 8}. The assignation of weights to each of the four corners
in a 2D cell determines the correspondence between codes and local configurations. Each cell is
assigned the weights in the same order (Fig.1, left).
Let ui be an operator that increments integer i in u units. If c
x,y
is the code of node (x,y), a single scan
over the lattice performing 1c
x,y+1
, 2c
x+1,y+1
, 4c
x,y
, and 8c
x+1,y
for each occupied cell (x,y) would
produce the result in Fig. 1 (center), where the resulting code of each node uniquely identifies its local
configuration (Fig. 1, right). The cost of the SEE scheme is just four integer sums per cell covering
inclusion material. The 3D case is similar, using the first eight elements of the 8-Sthr sequence to
produce the 256 codes necessary for the 256 different local configurations possible in a 3D mesh.

EXAMPLE: EFFECTIVE PERMITTIVITY OF COMPOSITES UNDER LWA
The effective permittivity of a non-loss non-magnetic composite under the long wave approximation
(LWA) can be estimated by computing the potential at the boundaries of the inclusions when the unit
cell is subjected to a known macroscopic electric field [6]. Using a regular lattice to model the
composite, the problem is reduced to the computation of the potential at the mesh nodes on the
boundaries of inclusions. This is a Dirichlet problem, that can be solved by traditional Finite Differences
methods or Monte Carlo random walk. Either of them requires a set of interpolation coefficients
(transition probabilities in the Monte Carlo method) for each node in the mesh, which depend on the
local configuration of the nodes (the permittivity of each cell surrounding a node). SEE allows
constructing a LUT of interpolation coefficients indexed by the SEE codes. Moreover, the coefficients
are computed directly from the SEE codes, because these include an internal representation of the local
configuration they represent. Each bit in a SEE code corresponds to one of the neighboring cells of the
node. If the bit is set, the cell is occupied. Therefore, obtaining the corresponding interpolation
coefficients is just a matter of counting bits in the SEE codes.

Figure 2. Effective permittivity of a layered ABA BCC arrangement of spherical inclusions (two species) in a
host with ,
h
=3, v. contrast of constituent permittivities (,
B
:,
A
, with ,
A
=10) and volume fraction.
After obtaining the potential at the inclusion boundary nodes, a surface integral has to be computed for
each inclusion, to obtain the macroscopic field in the inclusion. In a discrete lattice, this is a summation
involving only the cells belonging to a given inclusion. A cluster labeling algorithm can identify the
cells belonging to each inclusion, and hybrid labeling is specially well suited: As a recursive algorithm
that allows cluster characterization during the labeling, it allows performing the summation during the
labeling. Its advantages with respect to classical recursive labeling have already been discussed.
Thus the procedure can be summarized as follows: A SEE code is assigned to each node in the mesh. A
LUT of interpolation coefficients is built using the SEE codes. The potential is solved iteratively with
the coefficients provided by the LUT. The local field in each inclusion is obtained by integrating the
potential at the surface using hybrid cluster identification. The formula derived in [6] is applied to obtain
the effective permittivity of the composite (Fig. 2).

REFERENCES
[1] Clarke, A. and C. Eberhardt, Microscopy Techniques for Materials Science. Cambridge,
England: Woodhead Publishing, 2002.
[2] Shapiro, L.G. and G.C. Stockman, Computer Vision. New Jersey: Prentice Hall, 2001.
[3] Gould, H. and S. Tobochnick, An Introduction to Computer Simulation Methods: Applications
to Physical Systems, vol. 2, 2
nd
ed. New York: Addison-Wesley, 1996.
[4] Martn-Herrero, J., Hybrid cluster identification, J. Phys. A, vol. 37, pp. 9377-9386, 2004.
[5] Tanimoto, S., The Elements of Artificial Intelligence using Common LISP. New York:
Freeman, 1990.
[6] Martn-Herrero, J., Computation of Long Wave Electromagnetic Response of Nonhomogeneous
Media, submitted to IEEE Trans. Geosci. Remote Sensing.
[7] Martn-Herrero, J., Sthr Edge Encoding: A scale and rotation variant descriptor for object
recognition, pose determination, defect detection, and texture classification,'' in preparation.
[8] Pen-Fernndez, J., J. Martn-Herrero, N. Banerji, T.P. Iglesias, Numerical study of effective
permittivity in composite systems, Appl. Surf. Sci., vol. 226, pp. 78-82, 2004.
[9] Leath, P.L., Cluster size and boundary distribution near percolation threshold, Phys. Rev. B.,
vol. 14, pp. 5046-5055, 1976.
[10] Aho, A., J. Hopcroft, J. Ullman, Design and Analysis of Computer Algorithms. Reading, MA:
Addison-Wesley, 1979.
[11] Hoshen, J. and R. Kopelman, Percolation and cluster distribution: Cluster multiple labeling
technique and critical concentration algorithm, Phys. Rev. B, vol. 14, pp. 3438, 1976.
[12] Tarjan, R.E., Efficiency of a good but not linear set union algorithm, J. Assoc. Comput. Mach.,
vol. 22, pp. 215-225, 1975.
[13] Hoshen, J., M.W. Berry and K.S. Minser, Percolation and cluster structure parameters: The
enhanced Hosehn-Kopelman algorithm, Phys. Rev. E, vol. 56, pp. 1455, 1997.
[14] Satuffer, D. and A. Aharony, Introduction to Percolation Theory. London, England: Taylor
and Francis, 1994.
[15] Sthr, A., Gelste und ungelste Fragen ber Basen der natrlichen Zahlenreihe. I, II,'' J. reine
Angew. Math., vol. 194, pp. 40-65, 111-140, 1955.

Das könnte Ihnen auch gefallen