Content uploaded by A. T. Papagiannakis
Author content
All content in this area was uploaded by A. T. Papagiannakis on Oct 24, 2014
Content may be subject to copyright.
978-1-4244-2794-9/09/$25.00 ©2009 IEEE SMC 2009
An Improved Canny Edge Detection Application for
Asphalt Concrete
Sos Agaian, Ali Almuntashri
Department of Electrical and Computer Engineering
University of Texas at San Antonio
San Antonio, TX 78249
A.T Papagiannakis
Department of Civil and Environmental Engineering
University of Texas at San Antonio
San Antonio, TX 78249
Abstract — In this paper we introduce an improved Canny
edge detection algorithm and an edge preservation filtering
procedure for Asphalt Concrete (AC) applications. Datasets
from Asphalt Concrete–images were randomly selected to test
this algorithm. Computer simulations show that that the
improved algorithm can make up for the disadvantages of Canny
algorithm, detect edges of Asphalt Concrete images effectively,
and is less time-consuming process. Particularly, it has been
shown that the presented algorithm can not only eliminate noises
effectively but also protect unclear edges.
Keywords—Asphalt concrete, Canny operator, edge detection,
gradient vector, image fusion , image segmentation
I. INTRODUCTION
Image edge detection is an effective image processing tool
that provides essential image edge information and
characteristics. This information is used in wide areas such as
image segmentation, image categorization, image registration,
image visualization, and pattern recognition. These applications
may vary in their outputs but they all share the common need
of precise edge information in order to carry out the needed
tasks successfully. An edge detector can be defined as a
mathematical operator that responds to the spatial change and
discontinuities in a gray-level (luminance) of a pixel set in an
image [1][7].
Asphalt Concrete (AC) mixtures are uniquely complex
heterogeneous materials composed of air voids, mastics, and
aggregates. Mastics consist of binder and fines. The overall
performance of AC is highly dependent of the proportions of
these materials as well as the distribution and characterization
of their physical properties [4] [5]. The development of high
resolution X-ray computed tomography (CT) has shown a
considerable promise to efficiently characterize the AC
microstructure. X-ray CT imaging technique generates 2D and
3D high resolution images with the capability of capturing the
details of microstructures. Several studies have demonstrated
the potential application of such imaging technique to
characterize different properties of AC mixtures. Recently, it is
used effectively to quantify air void distributions, aggregate
orientation, segregation, and surface textures [5].
These studies started to incorporate methods of digital
asphalt concrete image processing as well as other
manual/subjective techniques for processing AC images in a
format suited to numerical simulations. Image processing
techniques include image contrast enhancement, image noise
removal, thresholding, edge detection and image segmentation.
Typically, the gray level threshold that separates aggregates
from mastics, referred to as thresholding, is selected
subjectively. Additional pixel modifications are required to
adjust the relative promotions of aggregates and mastic to
reflect the actual volumetric of the AC [4].
The application of image processing algorithms to AC
mixtures involves three main stages. The first stage involves
image pre-processing for contrast enhancement and noise
removal. Noise removal can be achieved using various methods
of image digital filtering techniques. The common filter used
for AC is the median filter with different window sizes ranging
from 3 x 3 to 9 x 9. The second stage is concerned with the
main thresholding routine where the enhanced image in stage
one and the volumetric information for the AC are fed to this
stage. It consists of two components, namely volumetric-driven
thresholding and 3D representation/sectioning. The third stage
further enhances particle separation through edge detection and
image segmentation [4]. The common edge detection algorithm
is Canny edge detection algorithm.
Moreover, edge information can be used to feed-in various
applications seeking the shapes, size, or edge locations of
particular objects. In all edge detection algorithms, the main
objective is to locate the edge (intensity transitions) from the
scene neither with prior information nor with human
interpretation. Some popular algorithms include Sobel,
Roberts, Prewitt, Laplace, LOG, and Canny Algorithm [2].
These edge detection operators share almost the same
concept which is to find the singularities and locate them
accurately. The gradient intensity changes rapidly in the edge
and the maximal intensity change along a particular orientation
produces a peak or a zero-crossing. Hence, the first derivative
and the second derivative of the gradient of every pixel in an
image are used to find edges in the image [1]-[3].
Canny method has proven to be superior over many of the
available edge detection algorithms and thus was chosen
mostly for real time implementation and testing. Canny edge
detection algorithm was introduced in 1986 [2]. It is considered
as the modern "standard" in the sense that the validity of all
other algorithms is often checked against it [3]. In Canny
algorithm, the Gaussian function is used to smooth the image
prior to edge detection. The filtering or smoothing operation
SMC 2009
actually services two purposes. The first one is the reduction of
the effect of noise prior to the detection of pixel intensity
changes. The second purpose is setting the resolution or scale
at which intensity changes are to be detected [3]. These factors
contribute effectively towards a precise edge detection method,
overcoming the problem of detecting false edges resulted from
noise sitting on some pixels.
Canny algorithm has the defect of being vulnerable to noise
disturbances, so there are certain limitations to its
application. Also, the traditional Canny operator will adopt the
2 x 2 difference template to calculate the gradient amplitude,
or the second order differential operator [-1 0 1] and [-1 0 1 ]T.
This method has a precise edge positioning but quite sensitive
to noise and may detect false edges, as well as missing some
details of real edges in an image [1]. This issue is of a great
importance in noisy images where many false edges resulting
from noise are detected. Moreover, Canny algorithm compares
the adjacent pixels on the gradient direction to determine if the
current pixel has local maximum, which results in inaccuracy
of edge detection and influences a connected edge points [1].
Furthermore, the Canny edge detector cannot also detect
branching edges [8]. By closely analyzing the gradient
magnitudes and directions of the missed edges, it is observed
that although gradient magnitudes at the missing edges are
larger than those of pixels adjacent to them, such maxima are
not in the gradient direction. Since gradient maxima in an
image form ridges, and since at the ridge points the slopes are
either zero or very small, the directions of the slopes cannot be
accurately determined [8]. Considering the hysteresis
threshold values, one might need to manually set threshold
values to detect certain edges that were smoothed by Gaussian
smoothing filter [9]. In addition, because of the noisy nature of
Asphalt Concrete data and characteristic of Asphalt Concrete
depth-image, traditional Canny algorithm doesn’t perform well
in these cases. On the one hand, it can’t eliminate some noises
and will generate many false edges; hence, it will lose some
edges with less gray level changing. It is difficult to design a
general edge detection algorithm which performs well in many
contexts and captures the requirements of subsequent
processing stages. Consequently, over the history of digital
image processing, a variety of edge detectors have been
devised which differ in their mathematical and algorithmic
properties [10].
In this paper, an improved Canny edge detection algorithm
has been developed and applied to AC test images. The paper
is organized as follows. The proposed edge detection
algorithm is described in Section III. The edge preserving
filtering algorithm is described in Section IV. Experimental
results are presented and discussed in Section VI. Finally,
other applications and conclusions are drawn in Section VII
and VIII respectively.
II. BACKGROUND
In this section, the necessary mathematical background is
presented. This includes an overview of the original Canny
operator, the proposed enhanced Canny approach, and an edge
fusion algorithm.
Canny operator consists of the main processes shown in
Figure (1). The first order Gaussian function is defined as:
2
2
2
()
2
2
1
(, , ) 2
y
x
Gxy e
σ
σπσ
+
−
= (1)
The Gaussian smoothing function smoothes out the image to
have a noise-free image prior to applying the derivative
function. The derivative function is approximated using a 3 x 3
kernel that is applied on the horizontal and vertical direction
of an image. These approximated kernels are shown next as
G(x) and G(y) to operate in a horizontal and a vertical manner
respectively:
Figure (1). Canny edge detection process
By convolving the previous kernels of G(x) and G(y) with the
Image, the gradient vector /
/
Gx
GGy
∂∂
⎡⎤
∇=
⎢⎥
∂∂
⎣⎦
(2)
results. The magnitude and the direction of each pixel of the
image can be calculated using:
Magnitude = 22
(/)(/)Gx G
y
∂∂+∂∂ (3)
Direction: Ө = arctan /
()
/
G
y
Gx
∂
∂
∂
∂ (4)
III. IMPROVED CANNY EDGE DETECTION
Conventional Canny algorithm works as follows:
Image
In Gray-level
Gaussian
Smoothing
Find Magnitude
and Direction
Non-Maximal
Suppression
Hysteresis
Thresholding
Edge-detected
Image
Take 1st derivative
G(x) G(y)
-1 0 1 1 2 1
-2 0 2 0 0 0
-1 0 1 -1 -2 -1
SMC 2009
A. Smooth an image with Gaussian filter.
B. Calculate gradient magnitude and gradient direction.
C. “Non - maximal suppression” to ensure the desired
edge with one single pixel width.
D. Determine two threshold values, and then select
possible edge points and trace edges.
A. Replacement of Gaussian smoothing kernel
The first part is to replace the Gaussian smoothing kernel
with one of the following kernels for enhancing the image
edges in both directions.
00 100
111 01210
11
12 21
111 01210
00 100
,
α
α
−
−−− −−−
−−
−− −−
−−− −−−
−
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎣⎦
⎡⎤
⎢⎥
⎢⎥
⎣⎦
where α = 2, 4, or 8. Extensive simulations results showed that
α = 2 has the best performance.
B. Modification of the gradient magnitude of Canny operator
It was shown previously that the gradient operator of
the horizontal and vertical directions can be computed as
/Gx∂∂
and /G
y
∂∂
respectively. The presented
algorithm joins together gradient magnitude and direction:
Magnitude (x,y,
θ
)= Max ( cos ,sin
GG
x
y
θθ
∂
∂
∂
∂) (6)
C. Modification of gradient kernel
The Canny method gradient magnitude and direction are
calculated by pixels within a 2-by-2 neighborhood is sensitive
to noise and apt to detect false edges. One solution is to
calculate the gradient magnitude and direction by using pixels
within an M-by-N neighborhood. In [6], a generalized set of
kernels for derivative approximation was introduced. It can be
used effectively for edge detection, line detection, and
consequently for feature extraction. Kernel sizes could be of
5x11, 3x9 or 5x7.
122 21
12202 21 22222 2
2222022 2 2 222 4 222
() , () 00000
222404222
222 4 22 2
2222022 2 2
22222 2
12202 21
122 21
Gx Gy
−− −
−−−
==
−− −
−− − − −
−−−
−−− −−
−− −
−− − − −
⎡
⎤
⎢
⎥
⎢
⎥
⎢
⎥
⎢
⎥
⎢
⎥
⎢
⎥
⎢
⎥
⎢
⎥
⎣
⎦
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎢⎥
⎣⎦
(7)
D. Fusion of edge images
Conventional Canny algorithm uses a method of non-
maximum suppression (NMS) to process the smoothed image
and make sure each edge is of one-pixel width. In this method,
a fusion of two edge detection techniques is proposed. The
first edge-detected image contains the modified kernel set in
(7). The second edge-detected image contains the same kernel
set mentioned previously in addition to using the modified
graident magnitude in (6). The fusion of the two edges would
gurantee the existence of all edges that one image may miss
over the other one. Figure (2), shows the proposed fusion
concept.
Figure (2). A block diagram showing the fusion of two edges
IV. EDGE PRESERVATION
In this part, an edge preservation filtering technique is
introduced. The idea behind such a concept is to avoid blurring
edges during the filtering of the images, and hence, avoiding
missing some important branch edges that separate AC
different components. The resulted fused image in part C is
used in this task.
First, the pixel coordinates that correspond to edge
locations in the fused image are saved to be avoided when
filtering the original image. Once filtering takes place, it jumps
these coordinates that correspond to edges, and then continue
to swap all over the remaining of the image. However, one
might investigate the possibility of the existence of some
impulse noise laying on these avoided edges. Therefore, a
switching filter is proposed to operate on these unwanted noise
impulses on edges. It could be a median filter with different
window size or a weighted median filter that operate on edges
only. Figure (3) shows the block diagram of such algorithm.
Figure (3). Edge preserving algorithm
V. SIMULATION RESULTS AND COMPARISON
In this section, various test images are edge-detected using
the original Canny method, and compared with those
deploying the new proposed edge detection algorithm.
MATLAB environment is used to simulate the execution of
both algorithms. In figure (4) and figure (5), samples of AC
test images are presented. The algorithm output succeeded to
show other branch edges that were not detected using the
original Canny algorithm.
+
AC Edge Image 1
"Modified Canny Kernel"
AC Edge Image 2
"Modified Canny Kernel &
Modified
g
radient Cann
y
"
An AC fused image containing
all the detailed edges
Fused- edges
image
Save pixels
coordinates
I(i,j)
Map
coordinates
to original
Switching
Filter Avoid
coordinates
when
Image
filtering
Edge
filtering
SMC 2009
Figure (4)a Original AC image "512x512"
Figure (4)b Canny Edge detection output
a)
Figure (4)c Algorithm output showing more branch edges
The developed canny edge detection algorithm was
tested on 25 AC images where the detection of small branch
edges is observed and compared with the original Canny. The
simulation results of seven images are tabulated in the next
table where the higher number of stars represents more edges.
Figure (5)a Original AC image "512x512"
Figure (5)b Canny Edge detection output
Figure (5)c Algorithm output showing more branch edges
Considering noise filtering using median filter, the
algorithm fusion output produces superior results when
applying median filters with a larger window size, e.g.
7x7,9x9 or larger to remove heavy noise. The effect of a
larger window size would result in blurred edges that the
algorithm overcomes in filtering the added salt and pepper
noise in figure (6).
Table (1). Comparison of Canny and algorithm output .
Image 1 2 3 4 5 6 7
Original
Canny
*** *** ** ** *** ** **
Algorithm
output
***** ***** *** ** **** **** **
SMC 2009
a) Original noisy image b) Edge-detected image
Figure (6): edge preservation
VI. OTHER APPLICATIONS
Other applications may consider applying the proposed
improved Canny edge detection algorithm to track road
cracks. Edge detection in such images needs to be modified
to be image- dependent as road cracks vary in scale. An
example of the applied algorithm on a sample road crack
image is shown in figure (7).
Figure (7). An original image of a road crack followed by the algorithm
output of the imrpoved canny edge detection
The applications of developed algorithms are not limited to
AC only as they extend that to be universally applied to
other images of interest especially when impulsive noise
exists. Figure (8) shows how the developed algorithm
manages to detect real edges of interest and avoid detecting
false noisy edges.
a)Original noisy image b) Canny outpu
c) Sobel output d) Algorithm output
Figure (8) algorithm output avoid detecting impulsive noise
VII. CONCLUSION
In this paper, an improved Canny edge detection and an
edge preservation algorithms were introduced. The concept
of fusion of two edge-detected images using the improved
modified Canny algorithm is applied to highlight the branch
edges that could not be obtained using the original Canny
algorithm to AC images. Some other applications that also
can benefit from the developed algorithms were highlighted.
References
[1] Xun Wang and Jian-Qiu Jin, “An edge detection algorithm based on
Canny operator,” Intelligent Systems Design and Applications. ISDA
2007. 20-24 Oct. 2007 Page(s):623 – 628.
[2] Qadir. I.A, and Maddix M. Electro/Information Technology
Conference,.EIT2004.IEEE.26-27Aug.2004 page(s): 306-309.
[3] Huang Ying , Wang Weixing, and Li Weisheng " Anisotropic filter
based modified Canny algorithm,”. Fourth International Conference
on Fuzzy Systems and Knolwedge Discovery. 24-27 Aug. 2007
Volume: 1, On page(s): 736-740.
[4] H.M Zelelew, A.T Papagiannakis, and E. Masad, "Application of
digital imageprocessing techniques for asphalt concrete mixture
images" The 12th international conference of international association
for computer methods and advanced geomachines (IACMAG). Goa,
India, 1-6 October 2008.
[5] H.M Zelelew, A.T Papagiannakis,"A volumetric thresholding
algorithm for processing asphalt concrete x-ray CT images".
International journal of pavement engineering, Sept. 2007.
[6] Shahan Nercessian, Karen Panetta, and Sos Agaian, "A Generalized
Set of Kernels for Edge and Line Detection," Proceedings: SPIE
Electronic Imaging 2009, San Jose, CA, USA, Vol. 7245, 2009.
[7] Zhang Hong-lei, Li Zhu-lin, Wang Yan, Zhang Xian-wei, "Road
Recognition in High Resolution SAR Image Based on Genetic
Algorithm," ICIA ,pp.649-654, IEEE International Conference on
Information Acquisition, 2006.
[8] Lijun Ding and Ardeshir Goshtasby,"On the canny edge detector".
Pattern Recognition. Volume 34, Issue 3, pp:721-725 March 2001,
[9] Hocenski, Z. Vasilic, S. Hocenski, V," Improved Canny Edge
Detector in Ceramic Tiles Defect Detection",pp:3328-333, 6-
10Nov.2006
[10] Djemel Ziou, Salvatore Tabbone Edge detection techniques - an
overview” International Journal of Pattern Recognition and Image
Analysis,1998
c) Filtered image using
7x7 median d) Edge-preserved filtered image
using 7x7 median