Beruflich Dokumente
Kultur Dokumente
Faculty f Engineering
By
Waleed Abd El-Megeed El-Badry
BSc. In Mechanical Engineering (Mechatronics Branch)
Teaching Assistant, Mechatronics Department
College of Engineering
Misr University for Science and Technology
Supervised By
Prof. Farid A. Tolbah
Emeritus Professor in Design and Production Engineering Department
Ain Shams University
2012
ABSTRACT
Quality inspection is one of the recurring topics among industrial
community. Garnished wall plates may require inspection in terms of
geometry (height, width, corner radius ...etc), Drawn Objects Orientation
(Angles with respect to reference axis) and colour of drawn objects.
Emulation of human decision in classification is what inspection is all
about.
II
SUMMARY
The research effort expended upon the problem of objectively
inspecting, analysing and characterizing garnished ceramic tiles is easily
justified by the commercial and safety benefits to the industry such as
automating obsolete manual inspection procedure, providing higher
homogeneity within sorted grades which consequently would improve the
processing stability of the overall inspection procedure.
III
To perform colour grouping, fuzzy c-clustering was chosen where
a visual representation of clustering is displayed to offer visual
interpretation of drawn objects isolation rather than dummy clustering
nodes.
IV
ACKNOWLEDGEMENT
The researcher is obliged to his supervisors, Prof. Farid Tolbah and
Dr. Ahmed Aly for their recurring support and guiding during the research
period, He also carries gratitude to the venerable referees, namely Prof.
Magdy Abdel Hameed and Prof. Mohammed El-Adawy for their kind
hospitality and comments to enhance this research.
The conducted research would not have been carried out without
the devoting assistance from Eng. Mahmoud Hassan who had major
fingerprints in the mechanical design of the built flexible cell.
V
TABLE OF CONTENTS
LITERATURE REVIEW ....................................................................................... 1
VI
3.5 METHODOLOGIES OF DISTANCE MEASUREMENTS .................................................... 41
3.5.1 Common distance functions .................................................................. 41
3.5.1.1 The Euclidean distance ....................................................................... 41
3.5.1.2 The Manhattan distance (aka taxicab norm or 1-norm) ..................... 41
3.5.1.3 The Hamming distance ....................................................................... 42
3.6 CLUSTERING TECHNIQUES .................................................................................. 43
3.7 EFFECTIVENESS OF COLOUR CLUSTERING ............................................................... 44
3.7.1 The need for fuzzification in colour grouping ........................................ 44
3.7.2 Challenges in fuzzy clustering ............................................................... 44
3.7.3 Proposed soft partitioning and group visualization using fuzzy
clustering (fuzzy c-mean) ................................................................................... 45
VII
6.1.1 Mechanical Design .................................................................................... 71
6.1.2 Electrical Circuitry ..................................................................................... 72
6.1.3 Software Architecture ............................................................................... 74
6.2 RESULTS ................................................................................................................ 75
6.3 DISCUSSION ........................................................................................................... 79
CONCLUSION ................................................................................................ 81
FUTURE WORK.............................................................................................. 82
REFERENCES ................................................................................................. 83
PUBLISHED PAPERS....................................................................................... 89
VIII
LIST OF FIGURES
FIGURE 1.1 MECHATRONICS ENGINEERING DISCIPLINE .................................................................. 1
FIGURE 1.2 ARCHETYPAL MACHINE VISION SYSTEMS APPLICABLE TO A WIDE ..................................... 2
FIGURE 2.1 NOTION OF IMAGE CALIBRATION ............................................................................ 17
FIGURE 2.2 TYPES OF LENS DISTORTION ................................................................................... 18
FIGURE 2.3 IN A TELECENTRIC SYSTEM RAYS GET INTO THE OPTICS ONLY ......................................... 19
FIGURE 2.4 THE PROPOSED ALGORITHM FOR PERSPECTIVE CORRECTION ......................................... 20
FIGURE 2.5 SCREENSHOT OF CALIBRATION GRID USED IN CORRECTION AFTER RED PLANE EXTRACTION .. 21
FIGURE 2.6 ADAPTIVE THRESHOLDING USING CLUSTERING TECHNIQUE ........................................... 22
FIGURE 2.7 RESULTED IMAGE OF BOUNDARY TRACKING OF GRID DOTS ........................................... 23
FIGURE 2.8 DETECTING CENTRES TO CHECK FOR SKEWNESS OF EACH DOT ....................................... 25
FIGURE 2.9 VISUALIZATION OF DETECTED DOTS IN THE GRID ........................................................ 25
FIGURE 2.10 PIXEL MAPPING TO RESTORE EXPECTED GRIDS LOCATIONS .......................................... 26
FIGURE 2.11 ACQUIRED IMAGE OF CERAMIC PLATE .................................................................... 27
FIGURE 2.12 THE CORRECTED IMAGE AFTER APPLYING THE ALGORITHM......................................... 28
FIGURE 2.13 SCREENSHOT OF THE DEVELOPED SOFTWARE FOR CALIBRATION OF CERAMIC PLATE......... 28
FIGURE 2.14 CCD ARRAY CONFIGURATION .............................................................................. 30
FIGURE 2.15 IMAGE FORMAT AND DELIVERED SPEED RATE .......................................................... 33
FIGURE 2.16 BAYER FILTER (CONCEPT AND CONFIGURATION)....................................................... 34
FIGURE 2.17 BRIGHTNESS ADJUSTMENT .................................................................................. 35
FIGURE 2.18 GAIN CONTROL ................................................................................................. 36
FIGURE 2.19 GAMMA CORRECTION OF THE ACQUIRED CERAMIC IMAGE (=0.7) .............................. 37
FIGURE 2.20 IMPLEMENTATION OF GAMMA CORRECTION .......................................................... 38
FIGURE 3.1 CLUSTERING IS PERFORMED BY GROUPING EACH SIMILAR DATA BASED ON COMMON CRITERIA
........................................................................................................................... 39
FIGURE 3.2 TAXICAB GEOMETRY VS. EUCLIDEAN DISTANCE .......................................................... 42
FIGURE 3.3 EXAMPLE OF HAMMING DISTANCE .......................................................................... 42
FIGURE 3.4 VISUAL REPRESENTATION OF CLUSTERING RESULT ON THE GARNISHED WALL PLATES .......... 46
FIGURE 3.5 THE DEVELOPED SOFTWARE SHOWING FUZZY CLUSTERING EFFECT IN HORIZONTAL
ORIENTATION ......................................................................................................... 47
FIGURE 3.6 THE DEVELOPED SOFTWARE SHOWING FUZZY CLUSTERING EFFECT IN VERTICAL ORIENTATION
........................................................................................................................... 48
FIGURE 4.1 EXTRACTING GEOMETRIC FEATURES ........................................................................ 49
FIGURE 4.2 FEATURE VECTOR AS METRICS FOR INSPECTION.......................................................... 49
FIGURE 4.3 PROCESSED PIXEL AND ITS NEIGHBOURS ................................................................... 51
FIGURE 4.4 KERNEL MULTIPLIED BY THE IMAGE WINDOW ............................................................ 51
FIGURE 4.5 EDGE DETECTION AND EXTRACTING GEOMETRY OF DRAWN OBJECTS .............................. 53
FIGURE 4.6 FITTING DETECTED POINTS ALONG THE PROFILE INTO LINES .......................................... 54
FIGURE 4.7 SCREENSHOT OF THE DEVELOPED SOFTWARE SHOWING THE FEATURE EXTRACTION STAGE .. 56
FIGURE 5.1 AN EAMPLE OF MEMBERSHIP FUNCRION FOR EVALUATION OF A PROGRAM ..................... 59
IX
FIGURE 5.2 FUZZIFYING CERAMIC PLATES FEATURES VECTOR ........................................................ 61
FIGURE 5.3 EXAMPLE OF IMPLEMENTING FUZZY LOGICAL OPERATIONS ........................................... 62
FIGURE 5.4 AN IMPLICATION EXAMPLE FROM THE PROPOSED RULES .............................................. 63
FIGURE 5.5 EXAMPLE OF AGGREGATING EFFECT ON THE POSSIBILITY OF ACCEPTING THE CERAMIC PLATE
........................................................................................................................... 64
FIGURE 5.6 RESULT OF DIFFERENT DEFUZZIFICATION TECHNIQUES ................................................ 66
FIGURE 5.7 FUZZY LOGIC SYSTEM .......................................................................................... 67
FIGURE 5.8 SCREENSHOT OF THE DEVELOPED MAMDANIS INFERENCE ENGINE FOR CERAMIC ASSESSMENT
........................................................................................................................... 67
FIGURE 5.9 COLOUR SCORE MEMBERSHIP FUNCTION.................................................................. 68
FIGURE 5.10 GEOMETRIC SCORE MEMBERSHIP FUNCTION ........................................................... 68
FIGURE 5.11 THE OUTPUT MEMBERSHIP FUNCTIONS OF CERAMIC GRADING .................................... 69
FIGURE 6.1 THE TEST RIG OF THE PROPOSED SYSTEM .................................................................. 71
FIGURE 6.2 THE H-BRIDGE CIRCUIT ......................................................................................... 72
FIGURE 6.3 SCHEMATIC DIAGRAM OF THE USB INTERFACING CARD ............................................... 73
FIGURE 6.4 PCB LAYOUT OF THE INTERFACING CARD .................................................................. 73
FIGURE 6.5 ARCHITECTURAL DESIGN OF THE DEVELOPED SOFTWARE.............................................. 74
FIGURE 6.6 ROTATED GARNISHED CERAMIC PLATE ..................................................................... 75
FIGURE 6.7 CERAMIC PLATE WITH COLOUR MISMATCH ............................................................... 75
FIGURE 6.8 CERAMIC PLATE WITH COLOUR SPOTS ...................................................................... 76
FIGURE 6.9 THE EFFECT OF ROTATING CERAMIC PLATES OVER CORRECT DETECTION OF ITS CLASS ......... 77
FIGURE 6.10 DETECTION PERCENTAGE OF CERAMIC GRADE (NEAREST NEIGBOUR VS. FUZZY C-MEAN.... 78
X
LIST OF TABLES
TABLE 1.1 THE DIFFERENCE BETWEEN MACHINE VISION AND COMPUTER VISION ................................ 5
TABLE 2.1 COMPARISON OF AVAILABLE CAMERAS UTILIZED IN MACHINE VISION APPLICATION ............. 32
TABLE 5.1 RANGE OF COLOUR SCORE ...................................................................................... 68
TABLE 5.2 RANGE OF GEOMETRIC SCORE ................................................................................. 68
TABLE 5.3 RULES FOR CLASSIFYING GARNISHED PLATES ............................................................... 69
TABLE 6.1 RESULT OF THE PROPOSED CLASSIFICATION SYSTEM FOR THE STATED FIGURES ................... 76
TABLE 6.2 ACCURACY OF AUTOMATIC DETECTION OF CORRECT CLASSES ......................................... 77
TABLE 6.3 SELECTED MTERICS FOR SOFTWARE PERFORMANCE ASSESSMENT .................................... 79
TABLE 6.4 SYSTEM CONFIGURATION ....................................................................................... 79
XI
LIST OF PSEUDO CODE
LIST 2.1 COLOUR PLANE EXTRACTION ALGORITHM ..................................................................... 21
LIST 2.2 PSEUDO OF THRESHOLDING USING CLUSTERING ALGORITHM ............................................ 23
LIST 2.3 BOUNDARY EXTRACTION OF GRIDS CONTOUR ................................................................ 24
LIST 2.4 RESTORATION OF GRIDS CIRCULAR SHAPE ..................................................................... 26
LIST 2.5 RETRIEVAL OF GRIDS CORRECTED LOCATIONS ................................................................. 26
LIST 3.1 COLOUR SORTING WITH FUZZY C-MEAN........................................................................ 46
LIST 3.2 THE ALGORITHM FOR GROUPING OBJECTS BY COLOUR AND LOCATION ................................ 47
XII
LIST OF ABBREVIATIONS AND ACRONYMS
Aka Also Known As
Application Programming
API
Interfacing
Automatic System for Surface
ASSIST
Inspection and Sorting of Tiles
BMU Best Matching Unit
CCD Charge Coupled Device
CFA Colour Filter Array
CS Colour Score
CV Computer Vision
DOM Degree Of Membership
DS Dimension Score
DTS Distance Score
FCM Fuzzy C-Mean
FIS Fuzzy Inference System
FIS Fuzzy Inference System
FL Fuzzy Logic
FLS Fuzzy Logic System
FMC Flexible Manufacturing Cell
FMS Flexible Manufacturing System
IPT Interactive Prototype Toolkit
LOM Largest Of Maximum
MF Membership Function
MOM Middle Of Maximum
MV Machine Vision
OGS Overall Geometry Score
OS Orientation Score
RGB Red ,Green and Blue colour planes
ROI Region Of Interest
SOM Self-Organising Maps.
SOM Smallest Of Maximum
TM Target Machine
Template Learning from Atomic
TMPLAR
Representations
VB Visual Basic
Vs Versus
XIII
Literature Review
1.1 Introduction
Mechatronics is an integration of mechanical engineering,
electrical engineering, automatic control and computer science[4]. This
discipline gains momentum among industrial community since researchers
in this field became involved in robotics, automated measurements and
machine vision (Figure 1.1).
Automatic Computer
Control Science
Dynamic response Software engineering
Intelligent control Code reusability
System stability Hardware interfacing
APIs.
Figure 1.1 Mechatronics engineering discipline
1
Automated visual inspection systems allow manufacturers to
monitor and control product quality, thus maintaining/enhancing their
competitive position. Machine vision is also being used to ensure greater
safety and reliability of manufacturing processes.
2
Thus, we are at the threshold of what we predict will be a period of
rapid growth of interest in machine vision aided flexible manufacturing
cell (FMC) in the Egyptian market.
3
This point cannot be over-emphasised. This is why we insisted in
the very first pages of this thesis that Machine Vision is quite distinct from
Computer Vision.
4
Table 1.1 The difference between machine vision and computer vision[8]
Feature Machine Vision Computer Vision
Motivation Practical Academic
Yes. Many academic
Advanced in Unlikely. (Practical issues
papers contain a lot of
theoretical sense are likely to dominate)
deep mathematics
Likely to be of
Cost Critical
secondary importance
Dedicated Possibly needed to
electronic achieve high-speed No (by definition)
hardware processing
Yes (e.g., systems are No. There is a strong
Use integrated
likely to benefit from emphasis on proven
solutions careful lighting) algorithmic methods
A piece of metal, plastic,
Data source Computer file
glass, wood, etc.
Most important a. easy to use;
criteria by which b. cost-effective;
c. consistent and reliable;
Performance
a vision system is
judged d. fast
Multi-disciplinary Yes No
Criterion for good Satisfactory
Optimal performance
solution performance
Systems Engineering Computer Science,
Nature of subject (practical) academic (theoretical)
IPT: vision engineer
Often relies on user
TM: Low skill level
Human having specialist skills
during set-up.
interaction (e.g., medical
Autonomous in inspection
background)
mode
May rely on user
a. IPT medium/high
Operator skill having specialist skills
b. TM must be able to
level required (e.g., medical
cope with low skill level
background)
Simple signal, to control Complex signal, for
Output data external equipment human being
Principal factor Human interaction.
IPT: human interaction
determining Often of secondary
TM: speed of production importance
processing speed
5
1.3 Machine Vision and Human Vision
Machine Vision does not set out to emulate human vision. At some
time in the future, it may be both possible and convenient to build a
machine that can see like a human being. At the moment, it is not. Today,
an industrial Machine Vision engineer is likely to regard any new
understanding that biologists or psychologists obtain about human or
animal vision as interesting but largely useless.
6
Automated sorting and packing lines have been in existence for a
number of years, however, the complexity of inspecting tiles for damage
and selecting them against the individually set quality criteria of a
manufacturer has meant that, until recently, automated tile inspection has
not been possible.
7
In 1976, H. Blossel [13] developed the first successful model for
sorting ceramic tiles. The system inspects images captured by means of
pixel comparison of master plate and the plate under inspection. Although
the system was genuine in implementation, it lacks consideration of
mechanical handling system and interfacing with suggested controller
(Microprocessor). Moreover, it assumed that image is taken with no noise
which is hardly achieved up to this moment [2, 14, 15]. Meanwhile, to
inspect any plate, same pattern distribution must be retained to perform the
pixel comparison successfully.
8
The system was performing inspection by utilization of 3 stages, a
Charge Coupled Device (CCD) colour camera for primary colour grading,
a monochrome camera for cracks detection and a line scan camera for
precision colour grading. The system has the ability to distribute its
computation over local area network connected to two servers. However,
the system failed to inspect plates in real time due to excessive
computation required by each process.
9
The technique is meant to combine views from different angles to
enhance image features that may not be an intuitive task to be obtained by
utilizing a single camera. The system detects cracks; however, it lacks the
capability to perform accurate measurements due to global nature of linear
transformation method. The system could be enhanced if an intensity
based method is used with correlation matrix to find similarity between
captured images. Authors pointed out that the limitation of the system is
the memory intensive calculations which are considered the bottleneck of
the system.
10
By means of Self Organizing Maps (SOM) also known as Kohonen
feature map, Kukkonen and his colleagues built a system for colour
measurements for sorting five classes of brown tiles [26] . SOM utilizes
Euclidean distance for computing weights to weight vectors to neurons.
Meanwhile, the neuron with weight vector most similar to the input is
called the Best Matching Unit (BMU). The weights of the BMU and
neurons close to it in the SOM lattice are adjusted towards the input vector
which is the colour of each pixel and its position with respect to the top
left of the image. Thereafter, a K-Nearest Neighbour clustering is used for
fine tuning results. They compared results obtained from a trained 2D
(colour and position) SOM. Authors in [25] demonstrated that the
proposed system emulates human visual inspection to detect the preceded
tiles classes with a success rate of 97.6 %. However, they didnt provide
any practical information regarding their experimental setup, which makes
comparing results to other methods impossible since their experiment
cannot be reproduced.
11
The computation time and processing power were principal
motivations for Elbehiery et. al. to propose an algorithm based on the
principles of image processing and morphological operations on the
ceramic tile images[12] . The algorithm converts the captured coloured
image into grey scale to be able to perform intensity adjustment and
histogram equalization. Thereafter, thresholding the image to convert it to
binary format and applying edge detection algorithm by comparing each
pixel to its surrounding neighbours. Filling gaps between discontinued
lines is done as a final stage before searching for irregular shapes using
SDC morphological operation which are morphology operations
specialized for grey scale images that exists in MATLAB [28]. Eventually,
Inversing each pixel value in the binary image to enhance the visual
appearance of the crack detected is carried out.
12
The published results showed only cracks without demonstrating the
detection of colour spots or any other geometric metrics.
The method uses two matrices, the first one is the weight of each
neighbour, and the second one represents the pixel of interest and its
surrounded neighbours. This method was originally used as a
complementary measure of local image contrast.
13
If the defected image has a different value other than expected , a
deeper investigation using the local binary operator he proposed in [15] is
to be performed consequently. The key advantage of such a method is
minimization of calculation power requirements.
14
Meanwhile, the Sobel operator is based on convolving the image with
a small, separable, and integer valued filter in horizontal and vertical
direction and is therefore relatively inexpensive in terms of computation
power.
15
Studying the impact of developed system on productivity.
IV. Classification using fuzzy logic: The final stage which yields
the ceramic grade (acceptable, colour spot or colour mismatch)
based on proposed fuzzy inference system.
Geometric feature
Fuzzy classification
extraction
(Chapter 4)
(Chapter 3)
Figure 1.3 Proposed inspection algorithm for garnished ceramic wall plates
16
Image Acquisition and Pre-processing
This chapter depicts the first step in the proposed algorithm aiming
to prepare the image for processing stage. A proposed algorithm for image
calibration is discussed. Thereafter, the experimental setup for image
acquisition, gamma correction and colour adjustment is shown in details.
17
2.1.1 Lens distortion
Distortion is one of the worst problems limiting measurement
accuracy; even the best performing optics are affected by some grade of
distortion, while often even a single pixel of difference between the real
image and the expected image could be critical. Distortion is simply
defined as the percentage difference between the distance of an image
point from the image centre and the same distance as it would be measured
in a distortion-free image; it can be thought of as a deviation between the
imaged object and the real dimensions of that object.
18
With telecentric lenses, the image size is left unchanged with object
displacement, provided that the object stays within a certain range often
referred to as Depth of Field or Telecentric Range. This is due to the
particular path of the rays within the optical system: only ray cones whose
principal ray is parallel to the opto-mechanical main axis are collected by
the objective. For this reason, the front lens diameter must be at least as
large as the object field diagonal.
Figure 2.3 In a telecentric system rays get into the optics only
19
2.2 Proposed algorithm for correcting and calibrating lens
distortion
Software aided lens distortion correction and calibration has been
developed to overcome the problem of distorted barrel shaped ceramic
plate image by means of image processing.
20
Figure 2.5 Screenshot of calibration grid used in correction after red plane extraction
21
The grey values are determined, and a barycentre is determined for
each class. This process is repeated until it reaches a value that represents
the centre of mass for each phase or class is obtained.
Let p(x,y) be the pixel value of pixel located at xth row and yth
column. The threshold value is the pixel value k for which the following
condition is true:
1 +2
= 2.1
2
Where 1 is the mean of all pixel values that lie between 0 and k,
and 2 is the mean of all pixel values that lie between k + 1 and 255. In
other words:
(,)
1 = . 0 ; 0 (, ) 2.2
255
+1 (,)
and 2 = ; + 1 (, ) 255 2.3
. (+1)
After this stage (Figure 2.6), the grid is divided into two classes,
the white pixels representing dots and the black pixels forming the
background and hence separating the grid dots is achieved as implemented
using the algorithm depicted in List 2.2.
22
1. Initialize k=1
2. Calculate 1 2
+
3. If = 1 2 then replace each pixel value less than
2
k with zero, and one to every pixel with grey value
equal or above k.
4. If step 3 is false, increment the value of k and go to
step 3 again.
The easiest way is to track boundaries of each particle and track its
neighbours until returning to the starting point (aka seeding point). If
tracking reached an end point which differs from the starting one, it means
incomplete circle and it is excluded later from calibration calculation.
23
Figure 2.7 shows the detected boundaries of each grid while the algorithm for achieving
such a task is illustrated in
= (2 1 )2 (2 1 )2 2.4
24
Figure 2.8 Detecting centres to check for skewness of each dot
These centres serve to correct the location of each dot with respect
to its neighboured peers. Meanwhile, the centre location accompanied by
compactness factor of each dot will be employed to correct the pixel
location of each pixel in this dot.
Barrel distortion
25
2.2.5 Performing correction on each pixel
By evaluating the area, perimeter and skewness, it is possible to
correct the distorted image by restoring each circle area and position. This
process is not difficult since previous knowledge about the original grid
paper is known in terms of radii and location of each dot.
26
The procedure simply rearranges pixels to restore the expected grid
distribution as shown in Figure 2.10. In List 2.4, the algorithm for
correcting the distorted shape of every grid is stated. Meanwhile,
relocating the corrected grids to its original location is detailed in List 2.5.
Observable
skewness
27
Corrected
image
Figure 2.13 Screenshot of the developed software for calibration of ceramic plate
28
Since the calibration process performs pixel relocation, when
moving dots near the border few places with empty dots appear (black
area) of about 1 cm wide and have a side length of the ceramic plate. This
area is excluded from the inspection stage.
29
Sensors Vertical Shift Register
Output
For standard analogue cameras, the lines of the CCD are interlaced
to increase the perceived image update rate. This means that the odd-
numbered rows (the odd field) are scanned first. Then the even-numbered
fields (the even field) are scanned.
30
2.3.2.1 Camera Link
Camera Link is an interface specification for cables that connect
digital cameras to image acquisition devices. It preserves the benefits of
digital cameras such as flexibility for many types of sensors, yet it has
only a small connector and one or two identical cables, which work with
all Camera Link image acquisition devices.
31
The cost is relatively moderate compared to other high speed
acquisition peers. For instance, it costs nearly 30% of the price of
the camera link camera.
32
2.4.2 Speed
The speed is the representation of the data rate mentioned earlier
in the comparison table. The speed affects the maximum image size and
the delivered frames per second. The camera has a speed of 100 mb/s.
33
The filter pattern is 50% green, 25% red and 25% blue, hence is
also called GRGB or other permutation such as RGGB as in Figure 2.16a.
a) The Bayer arrangement of colour filters on the pixel array of an image sensor
b) Configuring Bayer pattern and RGB colour gain of the camera mounted on the test
rig
Figure 2.16 Bayer filter (concept and configuration)
34
This behaviour mimics the physiology of the human eye. The retina
has more rod cells than cone cells and rod cells are most sensitive to green
light. These elements are referred to as sensor elements, sensels, pixel
sensors, or simply pixels; sample values sensed by them, after
interpolation, become image pixels.
35
2.4.5 Gain
Since the camera used in the conducted research activity has an on-
board 10 bits A/D converter, the camera offers gain control where mapping
the raw 10 bits of each colour plane can be reduced to 8 bits. The gain
controls which A/D range (0-1024) is mapped to the 8 bits counterparts
(Figure 2.18).
36
2.5 Gamma Correction
Gamma correction, gamma nonlinearity, gamma encoding, or
often simply gamma, is the name of a nonlinear operation used to code and
decode luminance values in video or still image systems. Gamma
correction is defined by the following power-law expression:
= 2.5
Where the input voltage from the acquisition camera (Vin) and output
values displayed on the screen (Vout) are non-negative real values, typically
in a predetermined range such as 0 to 1[36]. To implement gamma
correction digitally as shown in Figure 2.20, each pixel value in every
colour plane (Red, Green and Blue) is raised to correction factor () using
the following formula:
= 255 (255 ) 2.6
The range of values used for gamma will depend on the application.
The selected value for correcting the acquired ceramic image was found to
be 0.7 based on trial and error in the three colour planes of the image.
For i=0 to Max. Row Count
For j=0 to Max. Row Count
GetPixelColour(i,j)
newRed = 255 * (Red(colour) / 255) ^ gammaCorrection
newGreen = 255 * (Green(colour) / 255) ^
gammaCorrection
newBlue = 255 * (Blue(colour) / 255) ^ gammaCorrection
Next j
Nect i
PutPixelColour(x, y) = RGB(newRed, newGreen, newBlue)
37
a-Raw image b-Gamma correction
Figure 2.20 Implementation of Gamma Correction
38
Soft Partitioning and Colour Grouping
3.1Clustering
Cluster Analysis encompasses a number of different algorithms and
methods for grouping objects of similar type into respective categories. A
general question facing researchers in many areas of inquiry is how to
organize observed data into meaningful structures, that is, to develop
taxonomies or classes[37]. In other words cluster analysis is an exploratory
data analysis tool which aims at sorting different objects into groups in a
way that the degree of association between two objects is maximal if they
belong to the same group and minimal otherwise as shown in Figure 3.1.
Cluster analysis can be used to discover structures in data without
providing an explanation or interpretation. In other words, cluster analysis
simply discovers structures in data without explaining why they exist.
Dataset Clustering
Figure 3.1 Clustering is performed by grouping each similar data based on common
criteria
39
According to the modern system employed in biology, man
belongs to the primates, the mammals, the amniotes, the vertebrates, and
the animals. The higher the level of aggregation the less similar are the
members in the respective class.
40
3.5 Methodologies of distance measurements
An important step in most clustering is to select a distance measure,
which will determine how the similarity of two elements is calculated. This
will influence the shape of the clusters, as some elements may be close to
one another according to one distance and farther away according to
another.
3.5.1 Common distance functions
The following review covers the most commonly used distance
measures techniques for distance measure assisted clustering:
3.5.1.1 The Euclidean distance
It is also called 2-norm distance. A review of cluster analysis in
pattern classification research found that the most common distance
measure in published studies in that research area is the Euclidean distance
or the squared Euclidean distance [43].
(, ) = =1( )2 3.1
41
Figure 3.2 Taxicab geometry vs. Euclidean distance
In other words:
(, ) = =1| | 3.2
42
This method measures the minimum number of substitutions
required to change one member into another. For instance, the hamming
distance between 2173896 and 2233796 is 3. In Figure 3.3, two examples
are given to calculate the hamming distance from 0110 to 1110 which is 1
(blue path) and from 0100 to 1001 which is 3 (red path).
Subspace clustering methods look for clusters that can only be seen
in a particular projection (subspace, manifold) of the data. These methods
thus can ignore irrelevant attributes. The general problem is also known as
correlation clustering while the special case of axis-parallel subspaces is
also known as two-way clustering, co-clustering or bi-clustering.
In these methods not only the objects are clustered but also the
features of the objects, i.e., if the data is represented in a data matrix, the
rows and columns are clustered simultaneously. They usually do not
however work with arbitrary feature combinations as in general subspace
methods. But this special case deserves attention due to its applications in
bioinformatics.
43
3.7 Effectiveness of colour clustering
The objective of colour clustering is to divide a colour set into
homogeneous colour clusters. Colour clustering is used in a variety of
applications, such as colour image segmentation and recognition. Fuzzy
clustering models have proved a particularly promising solution to the
colour clustering problem [44]. Such unsupervised models can be used
with any number of features and clusters.
Fuzzy set theory and fuzzy logic are ideally suited to deal with such
uncertainties. In fuzzy clustering, the uncertainty inherent in a system is
preserved as long as possible before decisions are made. As a result of this
approach, fuzzy clustering is less prone to falling into local optima than
most of other crisp clustering algorithms [47].
44
3.7.3 Proposed soft partitioning and group visualization using fuzzy
clustering (fuzzy c-mean)
Colour grouping is meant to isolate objects with similar colours to
be prepared for feature extraction. Since pixels of same object may have
variability in colours, thus partitioning could be achieved by iterative fuzzy
c-mean where each centre depicts the RGB colour components of painted
object. This information is taken manually by human operator.
Finding all regions that share the same colour with degree of
membership is carried out by finding the local minimum of the objective
function. To inspect the quality of garnished wall plates, the colour of each
drawn object is utilised for segmentation using fuzzy C-Mean (aka fuzzy
k-Mean). Fuzzy C-mean was developed by J.C. Bezdek[48].
+ Eq. 3.5
45
Figure 3.4 visual representation of clustering result on the garnished wall plates
After this step, all pixels in the template image are mapped to its
appropriate cluster, isolated pixels among large group of pixels belong to
different clusters are treated as part of the surrounding object features.
Figure 3.4 illustrates the impact of clustering in terms of separating
features (hollow rectangles) from the background (flat surface). Colour
nodes RGB values were set using the average vote of the blue, red and
mild white colour rating.
46
1. Start with First Pixel in first row and first column.
2. Check each pixel RGB value in the 8 pixels neighbours
if having the same colour with 85% or above degree of
membership.
3. If true, group the pixel with its matched neighbours.
4. Increment the row count.
5. If the row count reached last row in the image,
increment the column number by 1
6. If column count reached last column in the image, goto
step 8.
7. Go to step 2.
8. Store each grouped pixels indices in an array.
List 3.2 The algorithm for grouping objects by colour and location
Figure 3.5 The developed software showing fuzzy clustering effect in horizontal
orientation
47
Figure 3.6 The developed software showing fuzzy clustering effect in vertical
orientation
48
Geometric Feature Extraction
RGB
HI
(Ri,Gi,Bi)
WI
Features
Vector for
49
4.2 Features of interest in garnished wall plates
As shown in Figure 4.1 and Figure 4.2, inspecting garnished wall
plates involves measuring several features such as geometry (lines and
arcs), orientation of drawn objects with respect to reference (figure 4.1a)
and the colour of drawn object (discussed earlier in chapter 3). This
process in metrology is known as gaging. Selection of the appropriate
features has a drastic impact on the quality of the assessment [49] and
eventually the proper class of each ceramic plate.
For online inspection, due to the need of carrying out such a task
with the minimum time to avoid considering it as the bottleneck in the
production process, recent proposed systems carried its inspection only on
certain areas named Region Of Interest (ROI) [50].
There are many methods for edge detection [51], but most of them
can be grouped into two categories. These are search-based and zero-
crossing based. The search-based methods detect edges by first computing
a measure of edge strength, usually a first-order derivative expression such
as the gradient magnitude, then searching for a local directional maximum
of the gradient magnitude using a computed estimate of the local
orientation of the edge, usually the gradient direction.
50
The zero-crossing based methods search for zero crossings in a
second-order derivative expression computed from the image in order to
find edges, usually the zero-crossings of the Laplacian or the zero-
crossings of a non-linear differential expression. As a pre-processing step
to edge detection, a smoothing stage, typically Gaussian smoothing, is
almost always applied.
51
The pixel P(i, j) is given the value :
1
( ) (,) (,) 4.3
If the new value P(i, j) is negative, it is set to 0. If the new value P(i,
j) is greater than 255, it is set to 255 (in the case of 8-bit resolution).
The greater the absolute value of a coefficient K(a, b), the more the
pixel P(a, b) contributes to the new value of P(i, j). If a coefficient K(a, b) is 0,
the neighbour P(a, b) does not contribute to the new value of P(i, j).
0 0 0
For example, if the convolution kernel is [2 1 2] , then:
0 0 0
The edge detection methods that have been published mainly differ
in the types of smoothing filters that are applied and the way the measures
of edge strength are computed.
52
As many edge detection methods rely on the computation of image
gradients, they also differ in the types of filters used for computing
gradient estimates in x- and y-directions.
Let (,) be the pixel located at ith row and jth column, moving a
mask of size 3X3 pixels along the image and calculate the new pixel value
in centre where mask window is applied using the formula:
(+,) (,) + (+,)
| |,
(,) + (+,+) (,+)
(,) =
(,+) (,) + (,+)
4.5
| |
[ (,) + (+,+) (+,) ]
53
This way, most of the time needed to locate edges by moving the
mask all over the image is saved which is meant to tune the usage of such
a filter.
Figure 4.5b shows the ceramic plate after applying Prewitt filter.
Searching for the four edges is fairly trivial by starting at any point in the
boundary of any edge and searching for points where 2 points of its
surrounding 4 adjacent points is below a chosen threshold of 120 on the
grey scale levelling based trials and error. Edges on the same line are used
to determine the orientation of the rake used to retrieve the dimension and
linearity of that line (Figure 4.5c). This is done as the rake consists of
parallel lines which once intersect with any edge, a point is drawn.
The points collected from each line can evaluate the linearity of the
line by finding the best fit and calculating the error along the fitting
equation as shown in Figure 4.6. Fitting plays a major rule in noise
rejection characterised by small difference values (less than 2).
Edge Difference
Profile length
Figure 4.6 Fitting detected points along the profile into lines
54
4.4 Computing Feature Score
After feature extraction stage, it is demanded to evaluate the
parameters extracted which are summarized in two main categories:
Colour Quality.
Accuracy of geometry (dimension, distance from reference
and orientation).
=1
= 4.6
=1
=
4.7
| |
=1 1
=
4.8
55
Where n is the total number of extracted dimensions. The overall
score is then calculated as:
=1
=
4.9
The same steps are carried out to evaluate the score of distance of
each objects centre from the reference which is annotated by (LS) and the
orientation of each object (OS). The overall geometry score (OGS) is then
calculated as:
+ +
= 3
4.10
Figure 4.7 Screenshot of the developed software showing the feature extraction stage
56
Highlighting is made using three layers:
57
Classification of ceramic plates using fuzzy logic
Fuzzy logic (FL) was rst proposed by Zadeh in 1965 [53]. Though
fuzzy logic has been applied to many fields, from control theory to
artificial intelligence, it still remains controversial among most
statisticians, who prefer Bayesian logic, and some control engineers, who
prefer traditional two-valued logic. The term given to a system of
mathematics developed to model the human brains curious way of
processing words. The main motivation behind FL was the existence of
imprecision in the measurement process. Zadeh explains that As
complexity rises, precise statements lose meaning and meaningful
statements lose precision.
58
Fuzzy sets generalize classical sets, since the indicator functions of
classical sets are special cases of the membership functions of fuzzy sets,
if the latter only take values 0 or 1 [54]. Formally, a fuzzy set A in U is
expressed as a set of ordered pairs:
= (, ())| } 5.1
Just as in fuzzy set theory the set membership values can range
(inclusively) between 0 and 1, in fuzzy logic the degree of truth of a
statement can range between 0 and 1 and is not constrained to the two truth
values (true, false) as in classic predicate logic. When qualitative values
are used, these degrees may be managed by specic inferential procedures.
Fuzzy logic allows variables to take on qualitative values which are words.
For example, the size variable may assume qualitative values of, e.g., very
large, large, small, and very small. Each qualitative value is associated
with a fuzzy set, each of which has a dened MF.
59
A singleton fuzzy set is a fuzzy set with exactly one element with
full membership of 1. For example, the set = (13, 1) is a singleton.
Fuzzy Logic System (FLS) is the name given to any system that has a
direct relationship with fuzzy concepts (e.g., fuzzy sets and quantitative
values) and fuzzy logic. The most popular fuzzy logic systems in the
literature may be classied into three types, pure fuzzy logic systems,
Takagi and Sugenos fuzzy system, and fuzzy logic system with fuzzier
and defuzzier.
5.2.1 Fuzzification
Fuzzication is the process of converting inputs into their fuzzy
representations.
60
Bad=0.8 Tolerated=0.6
Good=0.2 Accurate=0.4
Colour Geometric
Score=0.1 Score=0.7
(a) (b)
5.2.2 Rules
Rules are the heart of the FLS, and may be provided by experts or
can be extracted from numerical data. In either case, the rules are typically
expressed as a collection of fuzzy IF-THEN rules. The IF-part of a rule is
its antecedent, and the THEN-part of the rule is its consequent. Fuzzy sets
are associated with terms that appear in the antecedents or consequents of
rules, and with inputs to and output of the FLS. A fuzzy IF THEN rule is
of the form
1 = 1 2 = 2 . = = , = [0,1] 5.2
1 = 1 2 = 2 . = = , = [0,1] 5.3
Where Xn and Yn are linguistic variables, A and B are linguistic
values represented by fuzzy sets. The IF part is the antecedent or premise,
while the THEN part is the consequent or conclusion. An example of a
fuzzy IF-THEN rule is:
= = 5.4
61
AND operator: which is evaluated as either the minimum or
the product of the given two linguistic values.
OR operator: which is calculated as the maximum of the given
two linguistic values. Another rarely used technique is the
probabilistic OR given as A+B-A.B.
NOT operator: which is a unary operator where it extracted
the complement of the linguistic value.
62
The selection of a method over another is either inferred from
expert system of the domain knowledge or by means of trials and error.
5.2.2.2 Implication
Implication is meant to propagate the result of the antecedent (the
IF part) to the consequent (the THEN part). In other words, it is the process
of reshaping the output membership function. Meanwhile, rules can be
given a weight (from 0 to 1) which may affect the implication process,
however, it is rarely used [57].
Colour Geometry
Possibility of Colour
Score=0.279 Score=0.168
Spot=0.187
(DOM=0.558) (DOM=0.336)
5.2.2.3 Aggregation
Because decisions are based on the testing of all of the rules in a
Fuzzy Inference System (FIS), the rules must be combined in some manner
in order to make a decision.
63
The input of the aggregation process is the list of truncated output
functions returned by the implication process for each rule. The output of
the aggregation process is one fuzzy set for each output variable [57].
Aggregation
Implication
Figure 5.5 Example of aggregating effect on the possibility of accepting the ceramic
plate
5.2.3 Defuzzification
The defuzzier converts the output of the inference engine into
crisp output. It is needed in many applications where crisp numbers must
be obtained as output.
64
However, the aggregate of a fuzzy set encompasses a range of
output values, and so must be defuzzified in order to resolve a single output
value from the set [57].
5.2.3.1.1 Centroid
Centroid defuzzification returns the centre of area under the curve.
If the area is considered as a plate of equal density, the centroid is the point
along the x axis about which this shape would balance. This is considered
the most used technique [54, 58-61].
5.2.3.1.2 Bisector
The bisector is the vertical line that will divide the region into two
sub-regions of equal area. It is sometimes, but not always coincident with
the centroid line.
65
Use of linguistic information (experts knowledge) to develop an initial
fuzzy logic system, and then adjust the parameters of the initial fuzzy
logic system by using on numerical information.
Use of numerical information and linguistic information to develop
two separate fuzzy logic systems, and then nal fuzzy logic system is
obtained by averaging them.
Degree of membership
Aggregated value
In the rst case, components of the FLS are set based on the
experts opinion. These components include number of rules, shape and
position of the membership functions and the shape and position of the
consequents etc.
66
Crisp input values
Fuzzification
Defuzzification
Figure 5.8 Screenshot of the developed Mamdanis inference engine for ceramic
assessment
67
The following sections describe the flow of the proposed FIS.
MATLAB version 2011a has a fuzzy logic toolbox with visual designer
for implementation of the fuzzy classifier as shown in Figure 5.8
The proposed fuzzy classifier has two input variables (colour and
geometric score) used in evaluating the possibility of three output grades
(acceptable, colour mismatch and colour spot) in order to determine the
final grading of the garnished ceramic wall plate.
68
The proposed output linguistic variables were taken from the common
problems encountered in ceramic inspection which are colour spots and
colour mismatch. They are represented by ramp line to reflect the
possibility of grading from zero to hundred percent as presented in
Figure 5.11. Grading was normalized (from zero to one) where zero sands
for zero percent and one stands for hundred percent.
69
The three linguistic values (bad, good and shiny) describing the
quality of colour is combined with the geometric score values (inaccurate,
tolerated and accurate) to conclude the classification grade of the garnished
ceramic plate (acceptable, colour spot and colour mismatch) based on the
specified rules.
= max (1 2 , 3 ) 5.5
(01)
Where (CV1, CV2 and CV3) stands for the crisp value gained after
defuzzifying the acceptable, colour spot and colour mismatch membership
functions respectively.
70
Results and Discussion
71
As shown in Figure 6.1, a carriage is transferred to each station via
ball screw. The carriage acts as an automatic feeder using series of
successive rollers.
72
An H-Bridge circuit is responsible for controlling the direction of
each motor by changing the polarity of terminal DC voltage applied to each
motor. Eagle PCB software was chosen to design the schematic diagram
and PCB layout.
73
The chosen Microcontroller is Microchip PIC16F877 and the USB
functionality was added by utilization of FTD485 First in First out (FIFO)
USB to Parallel chip as shown in Figure 6.3 and Figure 6.4.
74
6.2 Results
Images acquired using Basler A601fc CCD firewire camera was
subjected to variability in illumination. Ceramic size of 200mm X 150mm
was used during experiment. Results obtained from automated system
were compared to knowledge of experienced worker.
75
Figure 6.8 Ceramic plate with colour spots
The above figures (Figure 6.6, Figure 6.7 and Figure 6.8) show an
example of the acceptable plate, plate with colour mismatch and a plate
with colour spot respectively. Table 6.1 shows the results of the
classification algorithm proposed in the thesis.
Table 6.1 Result of the proposed classification system for the stated figures
Accuracy
Fig. Colour Colour Colour
of Acceptable
No. Quality Mismatch Spot
Geometry
6.6 0.61 0.68 0.29 0.0 0.5
6.7 0.12 0.8 0.15 0.46 0.1
6.8 0.92 0.85 0.59 0.0 0.05
76
Table 6.2 Accuracy of automatic detection of correct classes
Acceptable 95.3 %
90
80
70
60
50
0 50 100 150 200 250 300
Drawn Objects Orientation (in degrees)
Figure 6.9 The effect of rotating ceramic plates over correct detection of its class
j
d(X, Cj ) = min d(X, Xi ) 6.2
i
77
Where (, ) is the distance between X and . Distance is
calculated by means of Euclidean Distance:
Nearest Neighbour
Correct Match(67%)
Incorrect Match(33%)
Fuzzy C-Means
Correct Match(94%)
Incorrect Match(6%)
78
There are key factors that can be good candidates as metrics for
ceramic inspection systems such as software decision speed, signal
transmission rate between host controller and the Mechatronic sorting
system and mechanical actuation speed which in other words are
interpreted as how fast the actuation system responds to decision obtained
from vision software.
Criteria Specification
USB actual transfer speed 1MB / S
Inspection Area 20 X 20 cm2
6.3 Discussion
Developing an inspection system for garnished ceramic plates has
many challenges to tackle. Image acquisition may affect results in several
ways. One of the common problems is lens distortion. Distorted images
yields erroneous measurements as it provides false information in regard
to angles and geometry.
79
Even though telecentric lenses may add an extra cost to the imaging
system since it may cost more than the imaging device itself, it is
considered a perfect choice for small features measurements and detection
such as cracks that may require high resolution cameras with error free
lenses.
80
Conclusion
81
Future work
82
References
84
[23] C. E. Costa and M. Petrou, "Automatic registration of ceramic tiles
for the purpose of fault detection," Machine Vision and
Applications, vol. 11, pp. 225-30, 2000.
[24] M. L. Smith and R. J. Stamp, "Automated inspection of textured
ceramic tiles," Computers in Industry, vol. 43, pp. 73-82, 2000.
[25] M. L. Smith and L. N. Smith, "Dynamic photometric stereo--a new
technique for moving surface analysis," Image and Vision
Computing, vol. 23, pp. 841-852, 2005.
[26] S. Kukkonen, H. Kalviainen, and J. Parkkinen, "Color features for
quality control in ceramic tile industry," Optical Engineering, vol.
40, pp. 170-7, 2001.
[27] Z. F. Hocenski and E. K. Nyarko, "Surface quality control of
ceramic tiles using neural networks approach," in ISIE 2002.
Proceedings of the 2002 IEEE International Symposium on
Industrial Electronics, 8-11 July 2002, Piscataway, NJ, USA,
2002, pp. 657-60.
[28] KAGI. (2008). Morphological Image Processing for MATLAB.
Available: http://www.mmorph.com/
[29] H. M. Elbehiery, A. Hefnawy, and M. T. Elewa, "Visual Inspection
for Fired Ceramic Tiles Surface Defects using Wavelet Analysis,"
Artificial Intelligence and Machine Learning, vol. 3, pp. 28-36,
2005.
[30] I. Novak, Z. Hocenski, and D. Sliskovic, "Using pixel pair
difference for visual inspection of ceramic tiles," Tehnicki Vjesnik,
vol. 12, pp. 3-9, 2005.
[31] S. Vasilic and Z. Hocenski, "The edge detecting methods in
ceramic tiles defects detection," in International Symposium on
Industrial Electronics 2006, ISIE 2006, July 9, 2006 - July 13,
2006, Montreal, QC, Canada, 2006, pp. 469-472.
[32] O. R. Vincent and O. Folorunso, "A Descriptive Algorithm for
Sobel Image Edge Detection," presented at the Informing Science
& IT Education Conference (InSITE), Georgia, USA, 2009.
[33] S.-W. Jeng and W.-H. Tsai, "Analytic image unwarping by a
systematic calibration method for omni-directional cameras with
hyperbolic-shaped mirrors," Image and Vision Computing, vol. 26,
pp. 690-701, 2008.
[34] Opto-Engineering. (2010, January 2010). Telecentric Lenses:
Basic Information and Working Principles. Available:
http://www.opto-engineering.com/telecentric-lenses-tutorial.html
[35] S. H. Kwon, "Threshold selection based on cluster analysis,"
Pattern Recogn. Lett., vol. 25, pp. 1045-1050, 2004.
85
[36] N. Instruments. (2006, 11/06). Image Acquisition. Available:
http://zone.ni.com/devzone/cda/tut/p/id/2808
[37] M. Lee and W. Pedrycz, "The fuzzy C-means algorithm with fuzzy
P-mode prototypes for clustering objects having mixed features,"
Fuzzy Sets and Systems, vol. 160, pp. 3590-3600, 2009.
[38] Y. P. Pandit, Y. P. Badhe, B. K. Sharma, S. S. Tambe, and B. D.
Kulkarni, "Classification of Indian power coals using K-means
clustering and Self Organizing Map neural network," Fuel, vol. 90,
pp. 339-347, 2011.
[39] U. Orhan, M. Hekim, and M. Ozer, "EEG signals classification
using the K-means clustering and a multilayer perceptron neural
network model," Expert Systems with Applications, vol. 38, pp.
13475-13481, 2011.
[40] M. J. Watts and S. P. Worner, "Estimating the risk of insect species
invasion: Kohonen self-organising maps versus k-means
clustering," Ecological Modelling, vol. 220, pp. 821-829, 2009.
[41] C. T. Yiakopoulos, K. C. Gryllias, and I. A. Antoniadis, "Rolling
element bearing fault detection in industrial environments based on
a K-means clustering approach," Expert Systems with Applications,
vol. 38, pp. 2888-2911, 2011.
[42] L. Peihua, "A clustering-based color model and integral images for
fast object tracking," Signal Processing: Image Communication,
vol. 21, pp. 676-687, 2006.
[43] G. Schaefer and H. Zhou, "Fuzzy clustering for colour reduction in
images," Telecommunication Systems, vol. 40, pp. 17-25, 2009.
[44] D.-W. Kim, K. H. Lee, and D. Lee, "A novel initialization scheme
for the fuzzy c-means algorithm for color clustering," Pattern
Recognition Letters, vol. 25, pp. 227-237, 2004.
[45] N. H. Reyes, A. L. Barczak, and C. H. Messom. (2006, Fast Colour
Classification for Real-time Colour Object Identification:
Adaboost training of Classifiers. Institute of Information and
Mathematical Sciences,Massey University, Auckland, New
Zealand.
[46] M. A. Jaffar, B. Ahmed, N. Naveed, A. Hussain, and A. M. Mizra,
"Color video segmentation using fuzzy C-mean clustering with
spatial information," WSEAS Transactions on Signal Processing,
vol. 5, pp. 198-207, 2009.
[47] C. M. Emre, "Improving the performance of k-means for color
quantization," Image and Vision Computing, vol. 29, pp. 260-271,
2011.
[48] B. J.C, "Corrections for FCM: the fuzzy c-means clustering
algorithm,: Bezdek, J. C., Erilch, R., and Full, W. E., 1984,
86
Computers & Geosciences, v. 10, no. 23, p. 191203,"
Computers & Geosciences, vol. 11, p. 660, 1985.
[49] Z. Feng, B. Yang, Y. Chen, Y. Zheng, T. Xu, Y. Li, et al., "Features
extraction from hand images based on new detection operators,"
Pattern Recognition, vol. 44, pp. 1089-1105, 2011.
[50] H. I. Bozma and H. Yaln, "Visual processing and classification
of items on a moving conveyor: a selective perception approach,"
Robotics and Computer-Integrated Manufacturing, vol. 18, pp.
125-133, 2002.
[51] V. Baglodi, "Edge detection comparison study and discussion of a
new methodology," in IEEE SoutheastCon 2009, 5-8 March 2009,
Piscataway, NJ, USA, 2009, p. 1 pp.
[52] M. Nikravesh, "Evolution of fuzzy logic: from intelligent systems
and computation to human mind," Soft Computing, vol. 12, pp.
207-14, 2008.
[53] L. A. Zadeh, "Fuzzy logic and the calculus of fuzzy if-then rules,"
in Proceedings of the 22nd International Symposium on Multiple-
Valued Logic, May 27, 1992 - May 29, 1992, Sendai, Jpn, 1992, p.
480.
[54] P. Melin, O. Mendoza, and O. Castillo, "An improved method for
edge detection based on interval type-2 fuzzy logic," Expert
Systems with Applications, vol. 37, pp. 8527-8535, 2010.
[55] L. S. Dooley, G. C. Karmakar, and M. Murshed, "A fuzzy rule-
based colour image segmentation algorithm," in Proceedings of
International Conference on Image Processing, 14-17 Sept. 2003,
Piscataway, NJ, USA, 2003, pp. 977-80.
[56] G. J. Klir, "Foundations of fuzzy set theory and fuzzy logic: a
historical overview," International Journal of General Systems,
vol. 30, pp. 91-132, 2001.
[57] "Fuzzy Inference System," 2011 a ed: Mathworks Corporation,
2011.
[58] K. Balasubramanian and I. Obeid, "Fuzzy logic-based spike sorting
system," Journal of Neuroscience Methods, vol. 198, pp. 125-134,
2011.
[59] M. tpnika, U. Bodenhofer, M. Dakov, and V. Novk,
"Continuity issues of the implicational interpretation of fuzzy
rules," Fuzzy Sets and Systems, vol. 161, pp. 1959-1972, 2010.
[60] Z. Muzaffar and M. A. Ahmed, "Software development effort
prediction: A study on the factors impacting the accuracy of fuzzy
logic systems," Information and Software Technology, vol. 52, pp.
92-109, 2010.
87
[61] P. Cintula and P. Hjek, "Triangular norm based predicate fuzzy
logics," Fuzzy Sets and Systems, vol. 161, pp. 311-346, 2010.
[62] "Understanding fuzzy logic: An interview with Lotfi Zadeh {dsp
History}," IEEE Signal Processing Magazine, vol. 24, pp. 102-
105, 2007.
[63] A. V. S. Balasubramanian, N. R. Shankar, S. Subbaraman, and R.
Rengaraj, "A Novel Fuzzy Logic Based Controller To Adjust the
Brightness of the Television Screen with Respect to Surrounding
Light," World Academy of Science, vol. 39, p. 4, 2008.
[64] O. Ghita, T. Carew, and P. Whelan, "A vision-based system for
inspecting painted slates," Emerald Sensor Review, vol. 26, pp.
108-115, 2006.
[65] F. S. Abas and K. Martinez, "Classification of painting cracks for
content-based analysis," Ph.D., Intelligence, Agents, Multimedia
Group, Department of Electronics and Computer Science,
University of Southampton, Southampton, UK, 2004.
88
Published Papers
89
.
.
.
.
( ) .
.
(
) .
.
" "
.
.
"" .
.
.
.
" "
.
90
""
.
.
( ) (
).
.
.
( )
.
.
91