ANN

Published on March 2017 | Categories: Documents | Downloads: 43 | Comments: 0 | Views: 419
of x
Download PDF   Embed   Report

Comments

Content


Pattern Recognition 36 (2003) 2395–2409
www.elsevier.com/locate/patcog
Neuro-fuzzy synergism to the intelligent system for edge
detection and enhancement
Siwei Lu
a;∗
, Ziqing Wang
a
, Jun Shen
b
a
Department of Computer Science, Memorial University of Newfoundland, St. John’s, Newfoundland, Canada A1C 5S7
b
Institut de Geodynamique, Universite de Bordeaux III, 33405 Talence, France
Received 20 September 2001; received in revised form 1 October 2002; accepted 1 October 2002
Abstract
The paper presents a fuzzy neural network system for edge detection and enhancement. The system can both: (a) obtain
edges and (b) enhance edges by recovering missing edges and eliminate false edges caused by noise. The research is comprised
of three stages, namely, adaptive fuzziÿcation which is employed to fuzzify the input patterns, edge detection by a three-layer
feedforward fuzzy neural network, and edge enhancement by a modiÿed Hopÿeld neural network. The typical sample patterns
are ÿrst fuzziÿed. Then they are used to train the proposed fuzzy neural network. After that, the trained network is able to
determine the edge elements with eight orientations. Pixels having high edge membership are traced for further processing.
Based on constraint satisfaction and the competitive mechanism, interconnections among neurons are determined in the
Hopÿeld neural network. A criterion is provided to ÿnd the ÿnal stable result that contains the enhanced edge measurement.
The proposed neural networks are simulated on a SUN Sparc station. One hundred and twenty-three training samples are well
chosen to cover all the edge and non-edge cases and the performance of the system will not be improved by adding more
training samples. Test images are degraded by random noise up to 30% of the original images. Compared with standard edge
detection operators and enhancement techniques, the proposed system based on the neuro-fuzzy synergism obtains very good
results.
? 2003 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved.
Keywords: Fuzzy neural network; Edge detection; Edge enhancement; Hopÿeld neural network; Image processing
1. Introduction
Experiments with the human visual system show that
edges in images are extremely important. Edges are also
important features widely used in image processing, pat-
tern recognition, and computer vision. A local edge is a
small area in images where the local gray levels change
rapidly in a simple way [1]. Most previous edge detection
techniques used ÿrst-order derivative operators such as the
Roberts edge operator [2], the Prewitt edge operator [3]
and the Sobel edge operator [4]. If a pixel falls on the

Corresponding author. Tel.: +1-709-737-4540; fax: +1-709-
737-2009.
E-mail address: [email protected] (S. Lu).
boundary of an object in an image, then its neighborhood will
be a zone of gray-level transition. The Laplacian operator
[5] is a second-order derivative operator for functions of
two-dimension operators and is used to detect edges at the
locations of the zero crossing. However, it will produce an
abrupt zero-crossing at an edge and such zero-crossings do
not always correspond to edges. Another gradient operator
is the Canny operator [6] that is used to determine a class of
optimal ÿlters for dierent types of edges, e.g., step edges or
ridge edges. Amajor point in Canny’s work is that a trade-o
between detection and localization emerged: as the scale
parameter increases, the detection increases and localization
decreases. In order to set the appropriate value for the scale
parameter, the noise energy must be known. However, it is
not an easy task to locally measure the noise energy because
both noise and signal aect any local measure.
0031-3203/03/$30.00 ? 2003 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved.
doi:10.1016/S0031-3203(03)00083-9
2396 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
The Kirsch masks [1], Robinson masks [7], Compass
Gradient masks [8], and other masks [9] are popular
edge-template matching operators. Although the edge ori-
entation and magnitude can be estimated rapidly by deter-
mining the largest response for a set of masks, template
mask methods give rise to large angular errors and do not
give correct values for the gradient.
Many edge detectors rely totally on gray-level dierences
for their approximation of the image gradient function ei-
ther directly or by representing these dierences in a more
analytical form such as the Huekel edge detector [10]. Other
approaches include attempts at identifying the type of edge
as well as the edge position to subpixel accuracy by analyz-
ing the location and type of phase congruence of Hilbert–
Fourier representations using local energy characteristics
[11]. However, the latter method has not been demonstrated
to work in noisy images.
There has been an explosive growth in the study of re-
laxation labeling techniques for image processing, such as
image restoration [4], edge enhancement [12], edge detec-
tion [13–16], and image segmentation. Relaxation labeling
uses contextual information to resolve object labeling ambi-
guities as locally as possible. The amount of contextual in-
formation employed is expanded recursively until a unique
labeling result. The problem of relaxation labeling was ÿrst
described by Rosenfeld et al. [16].
The statistical or stochastic methods for boundary ex-
traction, such as Markov random ÿeld [17,18] and MAP
estimation [19] do not perform very well since these meth-
ods lack a powerful two-dimensional structure knowledge.
The statistical measurement for edge detection is much
less powerful than fuzzy systems since the statistical pro-
cess employs only a single formula for all the dierent
edge patterns.
As a matter of fact, we cannot recognize an edge with
100% conÿdence. Uncertainty arises because of ambiguity
or lack of information or evidence. In recent years, an in-
creasing number of researchers have been involved in the
subject of fuzzy neural networks (FNNs) [20–26] in the hope
of combining the strengths of fuzzy logic and neural net-
works and achieving a more useful tool for fuzzy informa-
tion processing and for exploring the functioning of human
brains. Neural networks are considered a sort of model-free
signal processing device [27,30]. They map data points in
input data space to points in output data space. The training
data points should be properly distributed and suciently
dense [28]. On the other hand, fuzzy neural networks try to
reduce the requirements on the training data sets by incor-
porating expert knowledge within the fuzzy concept. They
perform a set-to-set mapping. This is achieved by adding
point-to-set (fuzzify) and set-to-point (defuzzify) conver-
sion to the input and output, respectively.
A fuzzy ÿlter and edge detection technique was intro-
duced by Tyan and Wang [29]. The fuzzy rules are used
for contrast enhancement, requiring arbitrary deÿnitions of
dark and bright pixels, which the authors admit require ad-
justment by a human operator. Images are further enhanced
by an interesting fuzzy low-pass ÿlter. The edge detection
scheme also relies on arbitrary dark and bright deÿnitions
(again requiring user adjustment), and operates on a 2 × 2
area. A fuzzy edge detection technique was also introduced
by Tao and Thompson [21]. In this technique, 16 possible
edge structures in a 3 × 3 area are considered, and fuzzy
edge membership is determined by fuzzy if–then rules. Af-
ter redundant edge pixels are discarded, the remaining edge
pixels are thresholded based on a noise factor. Neither of
the techniques above acknowledge the possibility of var-
ious edge shapes such as corners and triple points, leav-
ing gray-level dierences among immediate neighbors as
the only determining factor in edge extraction. Furthermore,
both techniques operate on very small regions, ignoring the
possibility of broader edges in the process.
In the ÿrst phase of our research, before using the pro-
posed fuzzy neural network for edge detection, an adaptive
fuzziÿcation procedure is used to normalize input patterns,
and a window division method is also applied to each pat-
tern. The proposed FNN is a three-layer feedforward neural
network that takes the input pattern in a noise corrupted im-
age and produces the edge credit as intermediate results for
non-edge or edge measures with one of eight orientations.
Hence, there is one non-edge credit map and there are eight
edge credit maps. For many complex real-world images, all
the above edge detection systems (including FNN which is
much better than other mask operators) will yield unsatis-
factory results due to noise, gradual variations in gray-level
or non-uniform lighting. In other words, these results con-
tain false, missing, and weak edges. In the second phase
of our research, stable structures for edges are analyzed
by discovering an energy function whose minimum should
correspond to the possible stable situations. Based on the
constraint satisfaction, the competitive mechanism, and the
energy function, the structure of a Hopÿeld neural network
is designed. It eciently captures the topological and struc-
tural properties of the edge data obtained fromthe ÿrst phase.
This leads to updating the neural computation toward the
right solution by establishing proper interconnections among
neurons.
This paper analyzes the problem of edge detection and
provides a summary of the research on the topic. Adaptive
fuzziÿcation is introduced in Section 2 to obtain the mem-
bership function for measuring the relative darkness and
brightness. In Section 3, an input pattern in the window
form is arranged such that the structure information can
be fully utilized. The structure of FNN and the training of
FNN are provided in Section 4. Edge maps are obtained
for further edge enhancement. Hopÿeld neural networks
are discussed in Section 5. The system accomplished the
tasks of reinforcing true edges, recovering missing edges,
and suppressing false edges. In Section 6, experiments are
reported in comparison with other major edge detection
techniques. The paper ÿnishes with concluding remarks in
Section 7.
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2397
210 215 205 135 145 140
220 215 208 150 149 151
210 208 216 146 156 140
220 210 216 150 148 146
0
x
198 200 210 145 155 160
200 210 225 140 150 145
y
Fig. 1. Edge pattern with Northern orientation.
2. Adaptive fuzziÿcation
The application of adaptive fuzziÿcation on patterns plays
a very important role in the proposed system. It can be
deÿned as a mapping from an observed input space to labels
of a fuzzy set in a speciÿed input universe of discourse.
When considering an edge in a pattern, we can represent it
as follows:
f(x) =
_
¸
¸
_
¸
¸
_
g
2
if x ¿0;
(g
1
+ g
2
)=2 if x = 0;
g
1
if x ¡0;
where g
1
is a gray value that indicates the relative dark part,
g
2
is a gray value that indicates the relative bright part, x is a
position of pixels (Fig. 2a), and the origin of the coordinate
system is the center grid of the window (Fig. 1).
The edge image with normal noise is modeled as Fig. 2b.
For a window with an edge having relative brightness
in the left part and with relative darkness in the right part,
Fig. 2. Gray value representation of an edge image: (a) image without noise, and (b) image with noise.
the dierence of the gray values between the two parts
that can be distinguished by the human eye in the noise
case is more than 20 gray levels (threshold). That is: |g
1

g
2
| ¿threshold (g
1
; g
2
∈[0; 255]).
Hence, there are 1 + 2 + · · · + 234 + 235 possible com-
binations (g
1
; g
2
) with threshold ¿20 for the edge pattern
with Northern orientation. So the number of samples for one
class is
N =
235 + 1
2
∗ 235 = 27730:
Because there are 10 classes of edge patterns with dierent
orientations to be classiÿed, more than 200,000 samples are
needed to train neural networks to obtain a good result.
However, it is noticed that the following two samples belong
to the same case (Fig. 3).
For gray value g
2
, it represents relative darkness in Fig.
2a, but relative brightness in Fig. 2b. So “bright” or “dark”
are fuzzy concepts depending on the given patterns. For this
reason, it is impossible for us to ÿnd a relationship between
absolute gray value and degree of “bright/dark” and directly
apply a global membership function. Hence, an adaptive
fuzziÿcation processing is proposed.
When there is an edge in a window, the histogram can
be used to represent the relationship between the number of
pixels in a window and their gray values (see Fig. 4a). For
a image with normal noise, the gray value of the relative
bright part should be around g
1
, and the gray value of the
relative dark part should be around g
2
(see Fig. 4b).
Based on the above analysis, the following fuzzy mem-
bership function is created (Fig. 5).
By using the above membership function, each pixel in
the input pattern is fuzziÿed and represented by its fuzzy
measurement. The value of the pixel approaches 0 when it is
relatively bright and approaches 1 when it is relatively dark.
For example, after adaptive fuzziÿcation, an edge sample
with gray values 200 on the left part and gray values 180
on the right part is equivalent to an edge sample with gray
values 180 on the left part and gray values 160 on the right
2398 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
Fig. 3. Gray value representation of two images in the same class.
Fig. 4. Histograms for an edge image: (a) edge image without noise, and (b) edge image with noise.
g g
1 2
1
0
A(p,q)
the degree of darkness
f (A(p,q))
a
input grey values of pixels
Fig. 5. Adaptive fuzzy membership function.
part. So the number of samples for training are reduced
signiÿcantly.
The fuzzy membership function depends on each local
pattern. For an edge in an image with normal noise (see Fig.
4b), the histogram follows a normal distribution (Fig. 6).
The values of g
1
and g
2
can be determined by us-
ing estimation and learning methods, such as the Parzen
Window approach. However, it is too complicated and
time-consuming especially when such a technique is ap-
plied on large images. Since neural networks will be used
to do the further processing, the estimation procedure can
be simpliÿed and the values of g
1
and g
2
can be roughly set
by using the following approach.
If there is a k × k window with an edge and without
noise (see Fig. 4a). After sorting the pixels in the window
by graylevel, g
1
is the ÿrst pixel and g
2
is the last pixel
in the sorted list. If the window has noise in it g
1
is no
longer the ÿrst one and g
2
is also not the last one in the
sorted list (see Fig. 4b). Let the proposed system allow Á%
input noises. For a chosen k ×k window, the system allows
k
2
∗ Á% noise pixels. Assume that half of the noise pixels’
values are either greater than g
2
or less than g
1
, and the
other half of the noise pixels’ values are between g
1
and g
2
.
Therefore, the number of pixels with gray values less than
g
1
or greater than g
2
is k
2
∗ Á%=4. The estimation procedure
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2399
2
g g
1
Number of pixels
Grey value
0
Fig. 6. Normal distribution for an edge pattern.
p p p p p p p p p p p
1 36 35 34 32 31 2 3 4
p
5 6 33
g
2
g
1
Fig. 7. Sorted pixels with less than 30% of noise.
can be done by ÿrst sorting the values of pixels of the input
pattern in an ascending order, then setting g
1
at the position
of 1+k
2
∗ Á%=4 and g
2
at the position of k
2
−3=4∗k
2
∗Á%,
respectively. For example, if 30% of noise is allowed, and
the pixels in a 6 × 6 window are sorted in an ascending
order represented by P =p
1
; p
2
; : : : ; p
36
, g
1
should take the
fourth element, and g
2
should take the 33rd element of the
sorted array (Fig. 7).
3. Window division
In general, 10 patterns shown in Fig. 8 are considered
as typical edge patterns in this application. In order to take
advantage of the structure information, a window division
technique is introduced in this research.
CLASS 1 CLASS 2 CLASS 3 CLASS 4 CLASS 5
W
E
S
N
NE
SW NW
SE
CLASS 6 CLASS 7 CLASS 8 CLASS 9 CLASS 10
Fig. 8. Ten edge patterns (eight edge patterns and two non-edge patterns).
The local edge pattern to be inputted to the system is
a 6 × 6 window. The input window is divided into four
rectangle blocks (1–4) for detecting horizontal or verti-
cal edges. Since the window with a horizontal or vertical
edge has two adjacent relatively dark rectangle blocks and
two adjacent relatively bright rectangle blocks. Also the
input window is divided into four triangle blocks (5–8)
for detecting edges with diagonal direction. Since the win-
dow with a diagonal edge has two adjacent relatively dark
triangle blocks and two adjacent relatively bright triangle
blocks.
Block division makes the structure information in the
input pattern fully utilized and the network becomes
more powerful. To correspond to the division, the se-
quence of original inputs are rearranged (see Figs. 9
and 10).
2400 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
3
5
8
10 11 12
13
16
19
22 24
25 26
30
32 33
2
6
9 7
1
23
20 21
27 34
31
28 29
36 35
17 18
15 14 4
Block 1 Block 2
Block 3 Block 4
.
central grid
Fig. 9. Reordered sequence of elements (square blocks).
51
41
42
53
54
60 59
Block 5 Block 7
Block 8
central grid
37
39
40
38
43 44 45 46
48
47
49
50
52
58 57 56 55
Block 6
Fig. 10. Reordered sequence of elements (triangle blocks).
4. Fuzzy neural network for edge detection
4.1. The overview of fuzzy neural network
The structure of the proposed fuzzy neural network shown
in Fig. 11 is a three-layer feedforward network. It consists
of two subnets. Subnet 1 is used to identify class 1–6, and
subnet 2 is used to classify class 7–10. Based on the window
division, the inputs of subnet 1 have 36 elements which
come from four square blocks, and the inputs of subnet 2
have 24 elements which come from four triangular blocks.
Therefore, there are 60 neurons at the input layer. The second
layer is a hidden layer with 16 neurons divided into eight
groups. Every pair of neurons as a group accept inputs from
the corresponding block at layer one. One neuron, marked A,
is used to measure the darkness of the corresponding block,
and the other, marked B, is used to measure the brightness
of the corresponding block.
Take the neurons whose inputs come from block 1 at layer
one and the neurons of group 1 at layer two as an example.
The links between these two layers are illustrated in Fig.
12a. The neurons at layer 1 are fully connected to neurons
at layer two. The inputs to layer one represent the darkness
of the pixels in block 1. The neuron A at layer two provides
the fuzzy measurement how dark the block 1 is, and the
neuron B measures as to how bright the block 1 is.
If all the values of nine inputs approach 1 (relative dark),
this block is dark. So the output of neuron A approaches 1.
On the other hand, if input values approach 0, it has little
possibility that this block is dark. So the output of neuron
A approaches 0. Therefore, the fuzzy membership function
applied on neuron A should have the shape of f
d
shown
in Fig. 12b. For the other neuron, neuron B at layer two, a
similar analysis can be used such that the neuron B should
use the fuzzy membership function which has the shape
of f
b
.
A similar concept is applied on the other seven blocks
of layer one and the seven corresponding groups of layer
two. The structure fuzzy measurement is used to obtain the
characteristic features for the dierent edge patterns. Hence,
the outputs represent the measurement of the certainty of
the features for each block.
The third layer is used to model human decision making
within the conceptual framework of fuzzy logic and approx-
imate reasoning. Here, neurons perform the fuzzy intersec-
tion operations. The output of each neuron at layer three
represents the certainty that this pattern belongs to a cor-
responding class. Every neuron in the third layer connects
four neurons in layer two which come from four groups,
respectively. Which four neurons linked to the neuron at
layer three depends on which class the output of this neuron
represents.
The net input of the ÿrst node at layer three comes from
four neuron outputs at layer two that correspond to four
square blocks, respectively (see Fig. 13). Two neurons are in
type A and the other two are in type B. If these four outputs
all approach 1, it means that blocks 1 and 2 are relatively
dark, and blocks 3 and 4 are relatively bright. Hence, the
input pattern is deÿnitely an edge pattern which belongs to
class 1. The outputs of this layer provide the ÿnal fuzzy
measurements of the classiÿcation.
4.2. Fuzzy membership function
Afuzzy set
˜
A in the universe of discourse U can be deÿned
as a set of ordered pairs,
˜
A = {(x; u
˜
A
(x)) | x ∈U};
where u
˜
A
(:) is called the “membership function” of
˜
A and
u
˜
A
(x) is the degree of membership of x in
˜
A, which indicates
the degree that x belongs to
˜
A.
At the layer two of the proposed fuzzy neural network, the
net input to each neuron is ÿrst obtained by using the nor-
malized weighted sum of the output from layer one. Then
the activation function, which is the fuzzy membership func-
tion here, applies on the net output of each neuron at layer
two. The proposed fuzzy membership function is shown in
Fig. 14.
The mathematical representation is
f
d
(net) = e
−a∗(net−1)
2
and f
b
(net) = e
−a∗net
2
:
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2401
1
37
27
28
42
43
48
49
54
55
60
A
B
0
0
Block 1
Block 2
Block 3
Block 4
Block 5
Block 6
Block 7
Block 8
Layer 1 Layer 2 Layer 3
i
j
k
f
f
b
W
ji
Class 1
Class 6
Class 7
Class 10
d
B
group 1
group 2
group 3
group 4
group 5
group 6
group 7
group 8
SUBNET 1
SUBNET 2
9
10
18
19
36
A
A
A
A
A
A
A
1
1
B
B
B
B
B
A
B
B
Fig. 11. The structure of FNN for edge detection.
4.3. Weight updating
One of the basic entities to specify the model of a neural
network is the learning rules for updating the connecting
weights. The weight updating in this research is based on the
generalized delta rule formulated by Rumelhart et al. [31].
Based on the structure analysis to the proposed fuzzy
neural network, the weights between layer two and layer
three are unity. So the weight updating rule derived here
is to update weights between layer one and layer two. Let
E
(2)
p
be the error of neurons at layer two (the superscript
represents the record layer), and the partial derivative be
2402 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
A
B
i j
W
ji
Block 1
I
pi
O
pj
(b) (a)
output
1
0
f
f
b
B
A
input
d
Fig. 12. The connection between block 1 at layer 1 to layer 2.
Class 1
Node
Node
Node
Node
Node
1
Block 1
Block 2
Block 3
Block 4
Layer 2 Layer 3
O
O
pk (k=1)
pj (j=1)
j
k
B
A
A
B
1
3
6
8
Fig. 13. The connection between layer 2 and node 1 at layer 3.
evaluated using the chain rule. That is
w
ji
= −Á
@E
(2)
p
@w
ji
= −Á
@E
(2)
p
@net
pj
@net
pj
@w
ji
;
E
p
=
1
2

k
(t
pk
− O
pk
)
2
: (1)
As the net
pj
is the input to the pth neuron at layer two,
and it is the normalized weighted sum of all the outputs from
layer one, that is
@net
pj
@w
ji
=
@
@w
ji

n
i=1
w
ji
I
pi

n
i=1
w
ji
=
−(

n
l=1; l=i
w
jl
+ 1)
(

n
i=1
w
ji
)
2
I
pi
:
(2)
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2403
1
1 0.5
f (x)
f (x)
OUTPUT
INPUT
0
d b
Fig. 14. Fuzzy membership function.
Using the chain rule again, the partial derivative @E
(2)
p
=@net
pj
yields
@E
(2)
p
@net
pj
=
@E
(2)
p
@O
pj
@O
pj
@net
pj
: (3)
Because output O
pj
is the output of the neuron j after
fuzzy membership function f (f
d
or f
b
) is applied on the
neuron input, therefore,
@O
pj
@net
pj
=
@f(net
pj
)
@net
pj
= f

(net
pj
): (4)
When f(net) represents the membership function f
d
,
f
d
(net) = e
−a∗(net−1)
2
(see Section 4.2),
f

d
(net
pj
) = −2a ∗ (net
pj
− 1) ∗ e
−a∗(net
pj
−1)
2
= −2a ∗ (net
pj
− 1)O
pj
; (5)
that is
f

d
(net
pj
) = −2a ∗
_
n
i=1
w
ji
I
pi

n
i=1
w
ji
− 1
_
O
pj
= −2a ∗

n
i=1
w
ji
(I
pi
− 1)

n
i=1
w
ji
O
pj
: (6)
For those neurons that measure the darkness of the cor-
responding blocks, the f

(net
pj
) uses f

d
(net
pj
).
w
ji
= −Á
@E
(2)
p
@O
pj
−(

n
l=1; l=i
w
jl
+ 1)
(

n
i=1
w
ji
)
2
I
pi
×
_
−2a ∗

n
i=1
w
ji
(I
pi
− 1)

n
i=1
w
ji
O
pj
_
; (7)
w
ji
= −2aÁ
@E
(2)
p
@O
pj
(

n
l=1; l=i
w
jl
+ 1)
(

n
i=1
w
ji
)
3
×
_
n

i=1
w
ji
(I
pi
− 1)
_
I
pi
O
pj
: (8)
When f(net) represents the membership function f
b
,
f
b
(net) = e
−a∗net
2
, (see Section 4.2)
Similarly, for those neurons that measure the brightness
of the corresponding blocks, the f

(net
pj
) uses f

b
(net
pj
):
w
ji
= −2aÁ
@E
(2)
p
@O
pj
(

n
l=1; l=i
w
jl
+ 1)
(

n
i=1
w
ji
)
3
×
_
n

i=1
w
ji
I
pi
_
I
pi
O
pj
: (9)
Therefore, the rule for weight updating is
w
ji
(t + 1) = w
ji
(t) + w
ji
(t): (10)
If neuron j measures the darkness, w
ji
(t) will be calcu-
lated by using Eq. (8). If neuron j measures the brightness,
w
ji
(t) will be calculated by using Eq. (9).
In the research, 123 typical edge patterns are used in train-
ing the proposed FNN. It is observed that the recognition
ability of the FNN has no improvement if more training
samples are added. This proved that the adaptive fuzziÿca-
tion did work well to cut down the size of training data.
After using the proposed FNN to detect edges in an image,
10 output maps are obtained. Two maps contain the infor-
mation for non-edge elements. Eight maps stored the edge
credits for each orientation. They are going to be used for
edge enhancement.
5. Hopÿeld neural network for edge enhancement
In this phase, our purpose is to enhance edges to obtain
an edge map with one pixel width if there exists an edge, re-
move noise and recover missing edges. Several factors such
as what kind of edge structures are stable, and how to update
the edge measurement to approach the ÿnal result should
be considered. The neural network structure has to be con-
structed to perform the updating. Hopÿeld networks [32] are
widely employed in the area of solving optimization prob-
lems. That is, the network is expected to ÿnd a conÿguration
for minimizing an energy function. Hence, the key problem
is to formulate an optimization problemwith a proper energy
function that can be used to construct a Hopÿeld network.
To design such a neural network with an energy function
for an entire image is impossible and impractical. However,
we noticed that the inuence is small between two distant
elements. Hence, a 7 × 7 window is applied to the image.
The neurons inside the window are fully connected to each
other. The correlation between the central element and the
element outside the window can be ignored without eect-
ing the ÿnal result. Analyzing the possible stable edge struc-
ture, for each of eight edge orientations we conclude that
the neural computation is ÿnished if each window reaches
one of the following three cases:
1. an edge with the orientation under consideration through
the window,
2404 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
2. an edge with the orientation has an endpoint in the win-
dow, and
3. no edge in the window.
Therefore, the energy function for the north orientation
should be constructed such that it favors states that:
1. have in each row only one +1 and other all −1,
2. have all −1 in all rows, and
3. have all −1 or +1 in a column.
Here, the value “−1” is an edge credit for the element
which is deÿnitely a non-edge, and the value “+1” is an
edge credit for the element which is deÿnitely an edge.
The energy function which satisÿes the above states for
the north orientation is
E = A
7

x=1
7

i=1
7

j=1; j=i
(V
x; i
+ 1) (V
x; j
+ 1)
+B
7

x=1
_
7

i=1
(V
x; i
+ 1) − 2
_
2
7

j=1
(V
x; j
+ 1)
+C
7

i=1
_
6

x=1
V
x; i
V
x+1; i
− 6
_
2
+D
7

i=1
_
5

x=1
V
x; i
V
x+2; i
− 5
_
2
+E
7

i=1
_
4

x=1
V
x; i
V
x+3; i
− 4
_
2
; (11)
where, V represents the output of the neural cell with val-
ues ranging from −1 to +1, and A, B, C, D, and E are
parameters.
Each item in the energy function has minimum value 0
since the output V is from −1 to 1. The ÿrst two items (with
the parameters A and B) are designed to satisfy the ÿrst state.
When having all −1 in all rows, (V
x; i
+ 1) and (V
x; j
+ 1)
are zero. So the ÿrst two items have minimum value zero.
When having each row only one +1 and other all −1, since
i = j, either (V
x; i
+ 1) or (V
x; j
+ 1) will be zero, which
yields the ÿrst item becomes zero. For the second item, as
there is only one +1 at each row,

7
i=1
(V
x; i
+ 1) will be
2, which makes the ÿrst term [

7
i=1
(V
x; i
+ 1) − 2]
2
equal
zero. Therefore, the ÿrst two items reach their minimum
zero when the edge structure in a window is stable at state 1.
The last three items are designed to satisfy the second state.
When having all −1 or +1 in a column,

6
x=1
V
x; i
V
x+1; i
will
be 6, and (

6
x=1
V
x; i
V
x+1; i
− 6)
2
will be zero, which makes
the whole item with parameter C equal zero. The same result
can be obtained for the last two items. The above analysis
shows that the proposed energy function is able to reach
its minimum to meet the requirement of the stable edge
structures in a window as discussed above.
Actually, Eq. (11) has deÿned the system evolution law.
The ÿnal result of the edge enhancement is obtained when
certain stable edge structures are reached after a certain num-
ber of iterations by neuron computation. The neural network
structure has to be constructed to perform the updating of
edge measurement to approach the ÿnal result. The follow-
ing will show that evolution performs a downhill movement
along the surface of the energy function, and eventually
reaches a steady point. From the energy function, the time
derivation of the central unit in a window can be derived as
dy
4; 4
dt
= −
y
4; 4

− A
7

i=1; i=4
(V
4; i
+ 1)
−B
_
7

i=1
(V
4; i
+ 1) − 2
_
2
−2B
7

i=1
(V
4; i
+ 1) (V
4; 3
+ V
4; 5
+ 2)
×
_
7

j=1
(V
4; j
+ 1) − 2
_
−2C(V
3; 4
+ V
5; 4
)
6

x=1
(V
x; 4
V
x+1; 4
− 1)
−2D(V
2; 4
+ V
6; 4
)
5

x=1
(V
x; 4
V
x+2; 4
− 1)
−2E(V
1; 4
+ V
7; 4
)
4

x=1
(V
x; 4
V
x+3; 4
− 1): (12)
The terms with coecients A and B are for interactions
between the central unit and the other units on the row.
Analyzing the terms with A and B, they are never less than
zero. If the parameters A and B are set with positive values,
the whole part (including the sign before A and B) will never
be positive. That implies the other units at the central row
send signals to suppress the central unit. The last three terms
determine the interactions between the central unit and the
other units on the column. It is known that no summation
in these terms will be greater than 0. The ÿrst part of them
determines whether the interaction should be inhibited or
excited since the summation part is always less than or equal
to zero. Besides, it is observed that the closer the unit is to
the central unit, the bigger the eect it has on the central
unit. Therefore, the parameters C, D and E should be set so
that the term with V
3; 4
+ V
5; 4
plays a more important role
for the lateral interaction than the terms with V
2; 4
+V
6; 4
and
V
1; 4
+V
7; 4
. Hence, C is greater than D and D is greater than
E. All parameters in the above equation are positive. When
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2405
the system does not reach a stable state, the ÿrst parts of
the last three terms decide whether to inhibit or excite the
central unit, and how strong the interaction is. When it is
close to a stable state, the second parts approach 0 so that
the exciting or inhibiting is very small. Furthermore, it can
be concluded that the terms with coecients A and B play
a horizontal suppression role and the terms with coecient
C, D, and E play either a vertical suppression or a vertical
reinforcement role to the edge element or central unit. If
suppression is strong, it is good for eliminating false edge
elements caused by noise. On the other hand, reinforcement
contributes to edge element enhancement and missing edge
element recovery.
According to the energy function, the following stable
edge structures correspond to the minimum energy:
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
×
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
:
However, there are two cases which could not be stable
as they do not correspond to the minimum energy.
1. End-point edge in the window:
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 −1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
:
2. Non-vertical edge through the window:
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
−1 −1 1 −1 −1 −1 −1
−1 −1 1 −1 −1 −1 −1
−1 −1 1 −1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
−1 −1 −1 1 −1 −1 −1
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
:
It is very dicult to ÿnd an energy function to cover
these unstable states. Moreover, dierential equation (12)
has terms containing the product of several outputs from
the neural units. It is also very dicult to generate such
products by neurons. Hence, the neural network structure in
the thesis is designed based on both the energy function and
the competitive mechanism. Actually, the result is based on
the local updates to approach the global minimization of
the energy function. For clearly representing the structure
of the proposed network, there is an additional layer (called
the top layer) which is required to get input from the ÿrst
layer (called the bottom layer) and to give feedback to the
ÿrst layer through the weights which are derived from Eq.
(12). The modiÿed Hopÿeld network for edge enhancement
at north orientation is illustrated in Fig. 15.
We only show the interconnections to the central unit of
7 × 7 window (V
4; 4
). The weights (coecients A; B; C : : :)
are selected such that the neural structure reaches stable
states for case 1 (edge through window) and case 3 (no edge
in the window), or make a little change of the credit values
for case 2.
The input map of this phase is based on the output maps of
the previous phase. To construct the input map for the north
orientation, we consider ÿve maps obtained after FNN. Maps
consist of elements with a north, or northeast, or northwest
orientation. Another two maps consist of non-edge credits.
The procedure to build an input map follows:
1. If the largest value of output from the FNN is the node
corresponding to the orientation in consideration, then
the edge credit value is taken to the input map.
2. If the largest value of output from FNN is the node cor-
responding to the adjacent orientation in consideration
and there are not more than two elements adjacent to this
node in the same orientation, then the edge credit value
is taken into the input map.
3. Otherwise, the largest value of output from non-edge
maps is negated and taken to the input map.
The enhancement procedure will be terminated when neu-
ral computation enters into a situation such that most of the
windows are in a stable state with minimum energy and only
a certain number of windows (windows with an endpoint
inside) are still under slow updating. After processing maps
2406 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
V(4,4)
Top Layer
Bottom Layer
V(4,4)
Top Layer
Bottom Layer
(a)
(b)
Fig. 15. Modiÿed Hopÿeld network for edge enhancement: (a) the
weight connections for neurons at the same column, and (b) the
weight connections for neurons at the same row.
in each of eight orientations, we assemble eight resultant
maps into one edge map.
6. Experiments
The system had been employed in our vision lab for object
recognition and other image pre-processing. More than 500
noise corrupted images have been used to obtain boundaries
of objects by our edge detection and enhancement system.
Since we use neural networks which have a high parallel
computation mechanism, the computational complexity for
one pixel is the same order as most of the edge detectors
available today. For an n ×n size image, when applying the
pre-processing procedure, Adaptive Fuzziÿcation and Win-
dow Division, on the image to get the inputs for FNN, there
are (n − 5) × (n − 5) patterns generated. For each pattern,
we need to re-order the sequence of pixels. The computa-
tion complexity to do it is a constant since the window size
is ÿxed as 6 × 6. Therefore, the computational complexity
to ÿnish the pre-processing procedure is O(n
2
). When using
trained FNN to detect edges in an n × n images, to obtain
each pixel on one of the output maps, it takes constant time
to do the calculation. Hence, the computation complexity to
generate 10 output maps is O(n
2
). The proposed HNN is
ÿnally used to perform edge enhancement. The steps to ac-
complish it are (e.g. north orientation): (1) Build an input
map (discussion in Section 5), it is easy to see that the com-
putation complexity to do it is O(n
2
). (2) Initialize proper
parameters such as A; B; C; D; E, maximum acceptable itera-
tion value (M
iteration
) and the maximum acceptable unstable
elements number (M
unstable
). (3) Update the edge element
in each window. Since the window size (7 × 7) is ÿxed, to
calculate the time derivation of the central unit in a window
by using Eq. (12) only costs constant time. Hence, the time
to compute all edge element in an n×n input map is O(n
2
).
(4) Calculate the number of unstable windows (N
unstable
). It
is a simple comparison procedure, only takes O(n
2
) time to
do it. (5) Termination check. If N
unstable
¡M
unstable
, or the
acceptable iteration value is reached, the edge enhancement
procedure will be terminated and the ÿnal result is stored in a
ÿle (could be called Map
N
) corresponding to north orienta-
tion (no more than O(n
2
) time). Otherwise, going to step 3.
To sum up the above analysis, the computational complex-
ity of the proposed neuro-fuzzy method for edge detection
and enhancement is O(n
2
).
Comparing the ÿrst phase output of our fuzzy neural
network with output of general edge detection approaches,
such as dierent masks [33], our system works much
better. As is well known, to quantitatively compare the
experimental results, computer-generated images must be
used. Because we know the exact location of edge pix-
els in the computer-generated images, we can analyze the
precision of an edge detection method and the false edges
and missing edges due to noise. More than 40 dierent
computer-generated noisy images with the variance of addi-
tive white noise are tested. The minimum distance between
dierent edges in the images is 5 pixels and the contrast of
the edges in the noise-free images is between 5 and 190.
Fig. 16 illustrates the dierences of the results using these
approaches on one of the typical computer-generated noisy
images.
A comparison of the ÿnal results from our algorithm with
other typical methods [34,35] has been done. Three criteria
are taken into account.
1. Edge localization error: an edge pixel detected with a lo-
cation error 0 6e
i
62 pixels from the true position of
the edge pixel in the ideal image is considered being de-
tected “normally” with the location error e
i
. The variance
of e
i
gives a measure of edge localization error.
2. False edge error: an edge pixel detected with e
i
¿2 is
considered as a false edge. The ratio of “number of false
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2407
(a) (b)
(c) (d)
(e) (f)
Fig. 16. The demonstration of the test image: (a) original noisy
image, (b) using proposed FNN, (c) using xv package, (d) using
Rebert mask, (e) using Prewitt mask, and (f) using Sobel mask.
edge pixels/total number of edge pixels” measures a false
edge error.
3. Missing edge error: an edge pixel which is not normally
detected is considered as a missing edge pixel. The ratio
of “number of missing edge pixels/total number of edge
pixels” measures missing edge error.
As is well known, the choice of the parameters in these
algorithms aects the performance of the edge detection and
given an image, it is dicult to determine a priori the pa-
rameters we should use. Of course, to test the performance
of dierent algorithms, we should compare the best results
we obtained from other algorithms with those from our al-
gorithm. The proposed algorithm does not perform well for
edges at corners comparing to other algorithms (see Fig. 17).
But, the overall result of our method, even without adding
our corner detection algorithm, is still better than others. In
Table 1 we show the statistical results of the comparison
between these algorithms for a set of computer-generated
noisy images.
(a) (b)
(c) (d)
Fig. 17. Comparison of the results of edge enhancement by using
HNN and other methods: (a) using DRF method, (b) using GEF
method, (c) using SDEF method, and (d) using proposed HNN.
We have tested these algorithms in real images too. Be-
cause for real images, we do not know the exact location of
edge pixels, and the edge pixels which should be detected
are to a certain extent subjective, no quantitative statistics
can be given. The quality of the edge detection results was
only examined visually. The results show that the proposed
system can more eectively remove false edges and de-
tect weak or missing edges and recover them (see Figs. 17
and 18).
7. Conclusions
The synergism of fuzzy logic and neural network tech-
niques in combination has been applied in our intelligent
system for edge detection and enhancement. Since the gen-
eralization capabilities are enhanced by the adaptive fuzziÿ-
cation, the network can be trained by only 123 typical edge
samples with a 6×6 window. It eciently detected the edge
elements with eight orientations. The trained fuzzy neural
network also is capable of handling uncertainty or impre-
ciseness in the input representation. The output decision is
inferred in terms of membership value to output classes. The
proposed learning algorithm can be viewed as an extension
of the BP algorithm in the case of inputs represented by
their gray values and fuzzy target outputs. Taking advan-
tage of the fuzzy neural network proposed in the ÿrst phase,
we obtain a set of edge maps so that we are able to achieve
a better ÿnal result by using them as the input of our second
phase. The edge enhancement is performed on the eight edge
orientations separately. This makes our algorithm able to
2408 S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409
Table 1
Statistical result for the test of computer-generated noisy images
Edge localization False edge Missing edge
Methods error error (%) error (%)
Gaussian smooth ÿlter 1.21 34.55 4.15
Optimal dierence recursive ÿlter (DRF) 0.8 6.34 8.29
First derivative operator 0.7 7.12 6.58
of symmetric exponential ÿlter (GSP)
Second derivative operator of 0.008 1.87 7.86
Symmetric exponential ÿlter (SDEF)
Proposed fuzzy neural network 0.009 0.8 4.31
(b) (c)
(d) (e)
(a)
Fig. 18. The demonstration of the test image (2): (a) the original
image, (b) using DRF method, (c) using GEF method, (d) using
SDEF method, and (e) using proposed system.
distinguish the dierent types of noise and therefore elimi-
nate them separately. The edge maps are updated after each
iteration by simulating the Hopÿeld net at the edge enhance-
ment phase. This approach enables the utilization of global
edge information as the information is “propagated” to
surrounding elements in the edge maps. Therefore, the
fuzzy neural network proposed by us can enhance weak
edges, recover more missing edges, and eliminate most of
the noise (false edges).
References
[1] D.H. Ballard, C.M. Brown, Computer Vision, Prentice-Hall
Inc., Englewood Clis, NJ, 1982.
[2] L.G. Roberts, Machine perception of three-dimensional solids,
in: J.K. Aggarwal, R.O. Duda, A. Rosenfeld (Eds.), Computer
Methods in Image Analysis, IEEE, Los Angeles, 1977, pp.
285–323.
[3] J.M.S. Prewitt, Object enhancement and extraction, in:
B.S. Lipkin, A. Rosenÿeld (Eds.), Picture Processing and
Psychopictorics, Academic Press, New York, 1970.
[4] L.S. Davis, A survey of edge detection techniques, Computer
Graphics, Image Processing 4 (1975) 248–270.
[5] R.C. Gonzalez, R.E. Woods, Digital Image Processing,
Addison-Wesley Publishing Company, Reading, MA, 1992.
[6] J. Canny, A computational approach to edge detection, IEEE
Trans. Pattern Anal. Mach. Intell. 8 (6) (1986) 679–687.
[7] G.S. Robinson, Edge detection by compass gradient masks,
Comput. Graphics Image Process. 6 (1977) 492–501.
[8] R.H. Park, W.Y. Choi, A new interpretation of the compass
gradient edge operators, Comput. Vision Graphics Image
Process. 42 (2) (1989) 259–265.
[9] P. Meer, B. Georgescu, Edge detection with embedded
conÿdence, IEEE Trans. Pattern Anal. Mach. Intell. 23 (12)
(2001) 1351–1365.
[10] R. Nevatia, Evaluation of a simpliÿed Huekel edge-line
detector, Comput. Graphics Image Process. 6 (1977)
582–588.
[11] M. Kisworo, S. Venkatesh, G. West, Modeling edges at
subpixel accuracy using the local energy approach, IEEE
Trans. Pattern Anal. Mach. Intell. 16 (1994) 405–410.
[12] B.J. Schachter, A. Lev, S.W. Zucker, A. Rosenfeld, An
application of relaxation methods to edge reinforcement, IEEE
Trans. Systems Man Cybernet. 7 (1977) 813–816.
[13] E.R. Hancock, J. Kittler, Edge-labeling using dictionary-based
relaxation, IEEE Trans. Pattern Anal. Mach. Intell. 12 (2)
(1990) 165–181.
[14] E.R. Hancock, J. Kittler, Discrete relaxation, Pattern
Recognition 23 (1990) 711–733.
S. Lu et al. / Pattern Recognition 36 (2003) 2395–2409 2409
[15] E.R. Hancock, J. Kittler, A label error process for discrete
relaxation, IEEE 10th ICPR, Vol. 1, 1990, pp. 523–528.
[16] A. Rosenfeld, R.A. Hummel, S.W. Zucker, Scene labeling by
relaxation operations, IEEE Trans. Systems Man Cybernet. 6
(1976) 420–433.
[17] F.R. Hansen, H. Elliott, Image segmentation using simple
Markov random ÿelds, Comput. Graphics Image Process. 20
(1982) 101–132.
[18] L. Pelkowitz, A continuous relaxation labeling algorithm for
Markov random ÿelds, IEEE Trans. Systems Man Cybernet.
20 (3) (1990) 709–715.
[19] W. Deng, S.S. Iyengar, A new probabilistic relaxation scheme
and its application to edge detection, IEEE Trans. Pattern
Anal. Mach. Intell. 18 (4) (1996) 432–437.
[20] H.-S. Wong, L. Guan, A neural learning approach for
adaptive image restoration using a fuzzy model-based network
architecture, IEEE Trans. Neural Networks 12 (3) (2001)
516–531.
[21] C. Tao, W. Thompson, J. Taur, A fuzzy if–then approach
to edge detection, Proceedings of the Second International
Conference on Fuzzy Systems, Vol. 2, San Francisco, 1993,
pp. 1356–1360.
[22] G. Ashish, N.R. Pal, S.K. Pal, Self-organization for object
extraction using a multilayer neural network and fuzziness
measures, IEEE Trans. Fuzzy Systems 1 (1) (1993) 54–68.
[23] P.K. Simpson, Fuzzy min–max neural networks—Part 2:
clustering, IEEE Trans. Fuzzy Systems 1 (1) (1993) 32–45.
[24] Chin-Teng Lin, C.S. George Lee, Neural Fuzzy Systems,
Prentice-Hall, Upper Saddle River, NJ, 1996.
[25] A. Moghaddamzadeh, D. Goldman, N. Bourbakis, Fuzzy-like
approach for smoothing and edge detection, Int. J. Pattern
Recognition Artif. Intell. 12 (6) (1998) 801.
[26] J.C. Bezdek, S.K. Pal, Fuzzy Models for Pattern Recognition,
IEEE Press, New York, 1992.
[27] Y.H. Pao, Adaptive Pattern Recognition and Neural Networks,
Addison-Wesley Publishing Company, Reading, MA, 1989.
[28] S.W. Lu, A. Szeto, Hierarchical artiÿcial neural networks
for edge enhancement, Pattern Recognition 26 (8) (1993)
1149–1163.
[29] C. Tyan, P. Wang, Image processing-enhancement, ÿltering
and edge detection using the fuzzy logic approach,
Proceedings of the Second International Conference on Fuzzy
Systems, Vol. 1, San Francisco, 1993, pp. 600–605.
[30] A. Ghosh, M.R. Pal, S.K. Pal, Self-organization for object
extraction using a multi-layer neural network and fuzziness
measures, IEEE. Trans. Fuzzy Systems 1 (1) (1993)
54–68.
[31] D.E. Rumelhart, G.E. Hinteon, R.J. Williams, Learning
internal representation by error propagation, in: D.E.
Rumelhart, J.L. McClelland (Eds.), Parallel Distributed
Processing, Vol. 1, MIT Press, Cambridge, MA, 1986, pp.
318–362.
[32] J.J. Hopÿeld, Neural networks and physical systems with
emergent collective computational abilities, Proc. Natl. Acad.
Sci. USA 79, 1982, pp. 2554–2558.
[33] M. Heath, S. Sarkar, K. Bowyer, Comparison of edge
detectors: a methodology and initial study, Proceedings
of the IEEE Conference on Computer Vision and Pattern
Recognition, IEEE CS Press, June 1996, pp. 143–148.
[34] J. Shen, S. Castan, An optimal linear operator for step edge
detection, CVGIP: Graphical Models Image Process 54 (1992)
112–133.
[35] J. Canny, A computational approach to edge detection, IEEE
Trans. Pattern Anal. Mach. Intell. 29 (1) (1997) 47–59.
About the Author—SI WEI LU was born in Jiansu, China. He graduated from Electrical Engineering Department, Tsinghua University,
Peking, China, in 1967, and received M.S., and Ph.D. degree in Department of Systems Design Engineering from University of Waterloo in
1982 and 1986, respectively. He was Assistant Professor in Department of Computer Science, Concordia University, Montreal, Canada. He
is Associate Professor in Department of Computer Science, Memorial University, Newfoundland, Canada. He is Senior Member of IEEE.
His present research interests include image processing, computer vision, artiÿcial intelligence, neural networks, and pattern recognition.
About the Author—ZIQING WANG received her B.E. from Department of Computer Science and Engineering at Southeast University,
China in 1985, and received M.S. degree from Department of Computer Science at Memorial University, John’s, Canada in 1999. St. From
1986 to 1995, she worked as a lecturer at Jiangsu Petrochemical and Technology Institute, Changzhou, China. From 1997 to 2000, she
worked as a senior programmer/analyst at Global Information Center, McCain Foods Limited, Canada.
Now she is a senior software engineer at Systems Engineering Inc., USA. Her research interests are computer vision, neural networks, and
pattern recognition.
About the Author—JUN SHEN is a Professor in Computer Science and Image Processing and head of Image Laboratory at Institute of
Geodynamics, Bordeaux-3 University, France. He is author or co-author of more than 100 publications in image processing and computer
vision. He received “Outstanding Paer Honorable Mention” from IEEE Computer Society in 1986. His current research interests include
signal and image processing, pattern recognition, and neural network applications.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close