Академический Документы
Профессиональный Документы
Культура Документы
of
Engineering
and
Technology
University of Hertfordshire
Report by
Lalith Kumar Chalasani
Supervisor
Dr Soodamani Ramalingam
Date
September 2010
DECLARATION STATEMENT
I certify that the work submitted is my own and that any material derived or quoted from the
published or unpublished work of other persons has been duly acknowledged (ref. UPR
AS/C/6.1, Appendix I, Section 2 Section on cheating and plagiarism)
Signed:
Date: 08 September 2010
ABSTRACT
This thesis is a technical report for an automatic number plate recognition system. Title of this
report Number Plate Localization Using Connected Component Analysis algorithm, itself says
that locating the number plate without any noise. This is the very important stage in an ANPR
system. The system requires some processing steps, like capturing the image using camera,
storing it into data base, applying some coding to locate the number plate and finally
identification of letters. The system was tested on number of images by using software code
which was developed in Matlab(software), and the results were exposed and discussed in this
report.
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
ACKNOWLEDGEMENTS
I am most grateful to all those people who have helped me to complete my master's programme
and subsequently my project. I would like to express my gratitude to all the lecturers at the
University of Hertfordshire for their advice and support throughout my course which has allowed
me to complete my project in a proper way. I am especially thankful to my professor Dr.
Soodamani Ramalingam for her guidance, support, suggestions, helpful comments, criticism
and time. I am also helpful to my professor for her patience in helping me again and again while
I am writing my coding, that has rectified my errors. I would also like to acknowledge library staff
for providing me with every help throughout my course. I am also grateful to my parents Mr. Ch.
Nanchara Babu and Mrs. Satyavathi for their love, inspiration and financial support. I want to
acknowledge all my colleagues and friends who have inspired and encouraged me in every
aspect of my academic and personal life in UK. I appreciate all of you; my whole programme
was worthwhile because of your presence and support.
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
ii
TABLE OF CONTENTS
DECLARATION STATEMENT ........................................................................................................i
ABSTRACT .....................................................................................................................................i
ACKNOWLEDGEMENTS .............................................................................................................. ii
TABLE OF CONTENTS ................................................................................................................ iii
LIST OF FIGURES .........................................................................................................................v
GLOSSARY .................................................................................................................................. vii
CHAPTER ONE ............................................................................................................................ 1
1.0 INTRODUCTION ................................................................................................................ 1
1.1 AIM ...................................................................................................................................... 2
1.2 OBJECTIVES ...................................................................................................................... 2
1.3 MATLAB SOFTWARE ........................................................................................................ 2
1.4 REPORT STRUCTURE ...................................................................................................... 2
CHAPTER TWO ............................................................................................................................ 3
2.0 LITERATURE REVIEW ...................................................................................................... 3
2.1 CASE STUDY 1 .................................................................................................................. 3
2.2 CASE STUDY 2 .................................................................................................................. 5
2.3 CASE STUDY 3 .................................................................................................................. 7
CHAPTER THREE ........................................................................................................................ 9
3.0 IMAGE PROCESSING ....................................................................................................... 9
3.1 IMAGE SEGMENTATION................................................................................................... 9
3.2 THRESHOLDING ............................................................................................................... 9
3.3 EDGE DETECTION .......................................................................................................... 10
3.4 IMAGE FILTERING ........................................................................................................... 11
3.5 CONNECTED COMPONENT ANALYSIS ........................................................................ 11
CHAPTER FOUR ........................................................................................................................ 14
4.0 PROJECT IMPLEMENTATION ........................................................................................ 14
4.1 THE STAGES OF IMPLEMENTATION ............................................................................ 14
4.1.1 STAGE ONE .................................................................................................................. 14
4.1.2 STAGE TWO ................................................................................................................. 15
4.1.3 STAGE THREE.............................................................................................................. 16
4.1.4 STAGE FOUR ................................................................................................................ 16
4.1.5 STAGE FIVE .................................................................................................................. 17
4.1.6 STAGE SIX .................................................................................................................... 18
4.2 FLOW CHART .................................................................................................................. 20
CHAPTER FIVE .......................................................................................................................... 22
5.0 RESULTS AND DISCUSSION ......................................................................................... 22
5.1 RESULTING IMAGES FROM TESTS .............................................................................. 22
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
iii
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
iv
LIST OF FIGURES
Figure 1-1:Flow diagram of an ANPR system ............................................................................... 1
Figure 2-1: Pulse coupled neuron model ...................................................................................... 8
Figure 3 connected component analysis architecture ................................................................. 12
Figure 4 Raw image 1 ................................................................................................................. 15
Figure 5 gray image of raw image1 ............................................................................................. 15
Figure 6:binary image after conversion from gray image ............................................................ 16
Figure 7: median filtering image .................................................................................................. 17
Figure 8: image after closing operation ....................................................................................... 17
Figure 9: output image after extraction ....................................................................................... 18
Figure 10: average row graph for output image .......................................................................... 19
Figure 11: average column graph for output ............................................................................... 19
Figure 12:raw image2.................................................................................................................. 22
Figure 13: gray image ................................................................................................................. 23
Figure 14: binary image .............................................................................................................. 23
Figure 15: median filtering ........................................................................................................... 24
Figure 16: closing operation ........................................................................................................ 24
Figure 17: output image .............................................................................................................. 24
Figure 18:average row graph ...................................................................................................... 25
Figure 19: average column graph ............................................................................................... 25
Figure 20:raw image 3................................................................................................................. 26
Figure 21: gray image ................................................................................................................. 26
Figure 22: binary image .............................................................................................................. 27
Figure 23: image after median filtering........................................................................................ 27
Figure 24:image after closing operation ...................................................................................... 27
Figure 25:output image ............................................................................................................... 28
Figure 26 : average row graph .................................................................................................... 28
Figure 27:average column graph ................................................................................................ 29
Figure 28: raw image4................................................................................................................. 30
Figure 29: gray scale image4 ...................................................................................................... 30
Figure 30: binary image .............................................................................................................. 31
Figure 31: median filtering ........................................................................................................... 31
Figure 32: closing operation ........................................................................................................ 31
Figure 33: average column graph ............................................................................................... 32
Figure 34 : average row graph .................................................................................................... 33
Figure 35 : raw image 5............................................................................................................... 33
Figure 36 : binary image 5 .......................................................................................................... 34
Figure 37 : median filtering .......................................................................................................... 34
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
vi
GLOSSARY
ANPR:
SFR :
SFC :
ALPL:
PCNN:
ROI
Region of Interest
SUM :
AVI
PC
Personal Computer
RGB :
LALITH
KUMAR
CHALASANI/AUTOMATIC
COMPONENT ANALYSIS
NUMBER
PLATE
LOCALIZATION
USING
CONNECTED
vii
CHAPTER ONE
1.0 INTRODUCTION
In olden days, for transportation people uses bullock carts, horses, donkeys etc. Over few
years, the rapidly progressing technology in Automobile industry had brought a revolution in
human life, by providing effective and efficient land transportation. Increasing rate of
automobiles for domestic and industrial use is much high, this leads to problems for traffic
control and security. Vehicle identification is best method to avoid these security problems.
Until recent times, vehicle identification has been a labour intensive manual activity. By rapid
growth with traffic, manual activity have become impractical. Development in sensor
technology has allowed for the development of Automatic Vehicle Identification (AVT)
equipment. This leads to implementation of Automatic Number Plate Recognition (ANPR)
system.
The ANPR is an image processing technology which uses to identify the vehicles number
plate automatically. The ANPR system was invented in 1976 in United Kingdom. The ANPR
system consists of both software and hardware models. The ANPR is a mass surveillance
system which captures the image of vehicle and recognises the licence plate. This system is
mainly used in Automation of petrol station, unattended parking lots, security control of
restricted areas, traffic law enforcement, congestion pricing [ 8 ]. The hardware model
consists of sensors, camera, a motor with motor driver circuit to control the barrier on the
entrance, personal computer and microcontroller for controlling the hardware of the ANPR.
The important part of this system is software model, and it uses some image processing
techniques to get the output. The ANPR algorithm divided into three parts, Capturing the
image, extracting the plate from image and recognising the number from the plate.[11],[16]
[6]
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
Extracting or locating the number plate from the image is most important stage in ANPR
system. This report is explaining about the process and plate extraction details by using
proper algorithms and how far this algorithm is useful and what kind of results we are getting.
1.1 AIM
The aim of this project is to implement a Connected Component Analysis algorithm for
number plate localization using Matlab software.
1.2 OBJECTIVES
Ability to cooperate with programs written in other languages and for importing and
exporting formatted data.
(chapter 2) is the literature review, which includes details of some journals and different
methods that were already exist, next chapter introduces image processing and various
processing tools, chapter 4 is the project implementation, explains how the work was
processed. Chapter 5 consists of results and discussion after implementation of algorithm and
in chapter 6 concludes the whole project. The implemented Matlab code has shown in
appendix.
CHAPTER TWO
The important task of ALPL is to locate the number plate from a moving or stationary vehicles
and to recognise the characters of the vehicles number plate. This particular reviewed case
study is a journal for The Real Time Number Plate Localization Algorithms [7]. This journal
basically discusses about some existing number plate recognition processes for better
localization in an ALPL system.
In this journal, the author explains some common algorithms used in finding the number plate
localization techniques, which are:
Number Plate Localization on the Basis of Edge Finding. This algorithm depends on the
observation that number plates appear as high contrast areas in the image. The algorithm first
determines the extent of intensity changes for each row, in second step it selects the adjacent
rows which shows the changes. In first step effective algorithm must be applied, which
highlights the characters of the plate contrast to intensity of the other areas. Band-pass
filtering is the most optimal solution for this case and impulse response may either finite or
infinite. The vertical position of the number plate must be found in second step and is
determined on the basis of statistical properties of individual rows. The horizontal position of
the number plate is found in the third step. The curve always reaches a minimum value in the
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
empty regions between the characters instead boundaries are found by analyzing the
averages and applying band pass filtering in the area concerned in the horizontal and vertical
directions. Two simple procedures are applied: Analysing the boundary ratios and extent of
the areas. Boundary ratios relies on that the ratio of the horizontal and vertical sizes of a plate
falls in predefined intervals. If the found plate does not fulfil this requirement the search must
continued in another place. The areas of too big and too small areas are eliminated even if
the boundary ratio requirements are fulfilled. If still more areas remain, the highest specific
brightness is selected. The drawback of this algorithm is after filtering also additional areas of
high intensity appear besides number plate.[7].
Number Plate Localization on the basis of Window Filtering. Here if the image contains lot of
edges, the SFR curve shows the small increment at the number plate and edges may
sometimes dominant. To avoid this window which matches the size of the number plate is
useful when curve is generated and those values are added and window has to be shifted
where sum has got maximum value and for every row the curve is assigned to maximum
value in every row. So scattered intensity rows can be removed. Weighted and windowed
summation must be performed to find the horizontal position and the SFR curve values which
are drops to first part of window are multiplied by -1. And the second part assigned to positive
sign. So that the maximum and minimum values are obtained at the beginning and end of
number plate. If the window size equals to width of the number plate, we will get good results.
Small window dimensions also give good results. The horizontal and vertical positions are
determined by most probable search for positions and then moving both upward, downwards,
the top and bottom are found. Smoothing of the SFR curve can neglected, because the
search window already performs band pass filtering to suppress the high frequency
components. We may get few parts are inaccurate and because of tilt of number plate
character recognition process might bit hard.[7].
Number Plate Localization on the Basis of Direction Sensitive Window Filtering. The tilt angel
of the number plate can be determined at higher accuracy, for that it needs higher power. So
that it recommended to use this procedure for certain domain of the image. By considering
the output of the previous algorithm, fast algorithm can be applied to get the horizontal
position of the number plate. The algorithm consists of:
Vertical band pass filtering is performed in every column of the horizontal range.
Adjusted the vertical size of the number plate, the maximal value curve is filtered. The
values smaller than half of the both positive and negative peaks are set to zero, so
only relevant peaks remain.
Negative and Positive adjacent peak pairs are searched. If several possibilities are obtained,
the highest relative change is selected.
Below certain noise levels above mentioned algorithms operate perfectly, and degrade above
this limit. The filter procedures are no longer able to get the plate if the sum of the filtered
rows and columns exceeds the limit. If we know this in advance we can set the threshold
value according to this. So that we can maintain reliability. In case low resolution images the
number plate cannot found perfectly and character recognition becomes more difficult.
The window with small size will also lead to missing the inner part of the license plate, and
that is unacceptable. Smaller windows are better in computational view. So size and shape of
the sliding window is important. Filter out regions whose characterstics are incompatible with
supported license plate by using binary morphological operations. In order to preserve the
regions corresponding structuring elements were chosen where it is possible to overlap a
rectangle with dimensions similar to license plate model. The result from two filtering
operations are classified to bounding box. The region is rejected if the area of the box is too
small. The region is considered to be low quality hypothesis, if the area of the bounding is too
high, and added to set of hypothesis given to step2.[4].
The major drawback of this particular algorithm is the computation time required to provide
the set of location hypothesis. It takes an average computing time of 2s and maximum time
taken for computing of this algorithm is 9.3s. In real time applications the maximum time taken
process introduces some limitations to use this algorithm. The average quality attained by this
algorithm is somewhat better than the other algorithms. The average quality of the first correct
location is smaller than that attained by the other algorithms. In order to make system more
useful, few aspects of the algorithm and its structure must be improved. Its better to introduce
parallel multistage algorithm instead of sequential multistage architecture.
PCNN enhancement: To eliminate some unimportant data in the image PCNN enhancement
is used, so in the next step we can get exact ROIs. PCNN model consists of five blocks,
feeding, linking, dynamic threshold, internal activity and pulse generator. If neurons internal
activity is higher than its threshold, it emits a pulse. Then threshold charged to V ,which is
higher than internal activity U, and exponential decay from time constant T , when the
threshold less than U, again the neuron gives pulse.
Neural elements feeding region is defined as
-Ft
F(t) = Gfeede
F(t-1)+S+Y(t-1)*W
(1)
Where Gfeed is the feed gain, S is the input image, F is the time constant of leakage filter, Y(t)
is the neuron output at time t, W is the feeding kernel.[9]
L(t ) G linke-LtL(t-1)+Y(t-1)*M
(2)
Where Glink is the link gain, L is the time constant of the leakage filter, M is linking kernel.
Neuron elements internal activity depends on linking and feeding activity, is denoted as
U (t ) F (t )[1 L(t )]
(3)
(t ) e-1/(t-1)+VY(t),
(4)
(5)
The pulse coupled neural network is a single layer two dimensional array. Every pixel is
associated with single neuron, each Neuron receives a linking input from its neighbours.
Different levels represent different objects. ROIs extraction can be done by eliminating objects
details. It is easier for next step.
ROI extraction: Split the image into set of mn blocks in which m and n depends on size of
the image and size of the car plate region, then wavelet analysis is applied to each block and
get four sub-bands, extract sub-bands energy and standard deviation features from wavelet
coefficients and design an eight dimensional vector for each block. Divide them into two
classes, one is backgrounds and other one is ROIs, high energy class is considered
containing ROIs.[9]
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
PCNN enhancement on ROIs: To improve classification in next step, threshold the ROIs to a
binary image. Use PCNN again on ROIs, as normal methods cannot get satisfied results, to
form a firing time sequence image, PCNN fires only two times- one contains background and
another one contains characters. Support Vector Machine(SVM) can train samples with small
numbers and get better effectiveness of classification, so use SVM method to training and
classification process. After finishing these steps, finally will get number plate output, with
minimal noise effect and avoiding the overlapping of characters .
CHAPTER THREE
3.2 THRESHOLDING
Thresholding is a process to convert gray scale image into a binary image. It is a non-linear
operation. Two levels are assigned to pixels for below and above thresholding values. Binary
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
image consists of two values (0 or 1). The pixels that are less than or equal to thresholding
values are then given a value 0. And the pixels that are above the thresholding values are
given as 1.[19]. For determining threshold values Image threshold provides few methods: By
using an iterative method, automatically calculate a threshold value. Approximate the images
histogram as a bimodal distribution choose mid point as threshold. Fuzzy thresholding using
entropy as measure for fuzziness. Hence ,now the image is mentioned in two values,
undesired area can be ignored. One important advantage of thresholding is, it can implement
either coloured images or monochrome images.
Sobel operator: Sobel operator is an example of the 1 derivative gradient edge detection. In
edge detection process to eliminate noise sensitivity of the conventional gradient operator
sobel operator use linear filters over three adjacent columns and rows. Sobel operator offer
some advantages like detection edges and orientations and simplicity. In same way it is
having some disadvantages like Inaccurate and sensitive to noise.[16]
nd
image to make the laplacian filter less sensitive to noise, this is the first step of the filter. On a
noisy image, if you run this filter it gives the edge image as many small edges. Laplacian and
Gaussian are convoluted together to create a single filter on an image. After convolution it
gives positive and negative values. Advantage is to test wide area around the pixel and is
able to operate on larger region compared to sobel operator. It is unable to find the orientation
of the edge, because it is using laplacian filter. [16]
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
Median filtering: When performing median filtering, all the pixels in a particular neighbourhood
must be given by a median value for each pixel. The median value m of set of pixels is that
value in which half of the pixels are having values larger than m, and half of the values are
less than m. This is a non-linear filter. While keeping small details, these filters smooths the
data. This filter belongs to class of edge preserving smoothing filter. Median filtering is a
simple and effective noise removal filtering process. For removing shot noise, the
performance of this median filter is very good. Shot noise is having strong isolated values.
C (s) (s)
r C ( s ) s C (r )
There are four stages to implement in connected component analysis algorithm. Input image
is filtered and segment the backgrounds objects, assign a unique value for each region using
connected components labelling. In the next stage, to extract set features, each region must
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
be processed. In the last stage, these are used to categorize regions into two or more
classes.
In classic connected component analysis algorithm, for each label, a temporary label is
assigned. When pixel is occurred already processed 4 neighbours are examined, for current
pixel assign a new label if none are labelled. Consider U shaped object, where different label
join, two branches combine into single object, there will be two labels in neighbourhood. In
this case one label is used, all other labels need to be replaced, and all pairs of equal labels
must be recorded. At the end of first stage, assign a new label to each set of equivalent
labels. At second pass, temporary labels are replaced by final labels. The better approach is
using connected components in streaming images. During labelling process, gathering data
enables all steps to be queued and performed in a single pass. As the data is processing,
merging and resolution equivalence is important.
In optimisation, the size of table needs to be proportional to image area to handle worst case
images. Maximum regions on row of image is half the width of image. So storage
requirements reduced by recycling the labels which are not useful. For reducing latency in
future, the features of regions to be immediately passed to classification processor. Previous
labels in the neighbourhood are updated, and recorded the translation. Merger is reflected on
translation table if there are different two previous tables, and does not need to be stored. The
worst case stack size is 1/4
th
changed for each row. Merged entries are transferred to current table and delete from the
previous row. This simplifies the detection of completed objects.
The basic single-pass algorithm requires proper storage in the worst case, though this can be
reduced for single images. By recycling labels between rows, storage requirements are
proportional to image width rather than area. Where as this new algorithm enables even worst
case images to be processed. Completed regions are detected at end of row following the
region, and improving latency over basic single-pass algorithm.
CHAPTER FOUR
where regionprops measures a set properties for each connected component in the binary
image. The final output was shown in figure below.
This output can be verified and located exactly by plotting the graphs by taking the average of
rows and columns. An average row and an average column can be shown in graphs by
writing a code in Matlab.
Apply thresholding to
reduce noise
Convert gray scale to
binary
Carry
out
median
filtering
Apply closing operation
to smooth outer edges
Find
the
labels
of
connected components
Measure
properties
set
for
of
each
connected component
yes
Ignore
No.of
connected
components=0
Apply
normalization
to
CHAPTER FIVE
Figure (12) shown above is the raw RGB image from the data base.
Figure(13) represents the gray scale image converted from Original image after resizing it.
Figure(14) represents the binary image, converted from gray using thresholding process.
Figure(15) represents the image after median filtering the binary image.
Figure(17) shows the output image after all pre-processing steps have been done. This was
done by repeating the closing operation we will be getting this output. Environmental, lighting
conditions also effect the output of the number plate location. In this condition we have to
extract the number, so we have to plot the average row and average column graphs and after
normalising the values we will get exact output.
From the above two graphs, for average column graph consider x-axis as co-ordinates, y-axis
as intensity. The number plate region is in between co-ordinates from 40-100, and having the
intensity from 0.07-0.08. In this condition where the maximum intensity occurs, that part is the
number plate region.
Let us consider one more example to prove, can get number plate region by using this
particular algorithm. Consider the Raw image from data base.
Figure(20) is the Raw input with different colours, which occupies lot of storage space. To get
the output, this raw image must have to go under few pre-processing steps.
Figure(21) is the gray scale image after resizing it from original image to reduce storage
space.
Figure(25) shows the output of raw image after all pre-processing steps.
Here if we plot graphs between average row and average column, we can easily extract the
number plate region from this. Finally we will get the output. We got this output image
because of environmental and good lighting conditions. And the image number plate is not in
tilt in angle.
Form the above two graphs, consider average column graph, in which maximum intensity
peaks are between 0.11-0.12, this maximum intensity range is between the co-ordinates
between 150-250. So this would be the number plate region in this case.
Figure(28) is a Raw image from data base, apply pre-processing steps to get the number
plate region one by one. Covert this Raw image into gray scale image
Figure(32) Is the image after closing operation to the median filtering image. In this case we
are unable to find the number plate region because of the lighting conditions and one more
problem for this image is, number of noise reducing operations. By reducing noise from step
by step, the number of connected components also decreased, By the end of closing
operation there is only two connected components are there, when we did the structure
attribute verification, we could not find any white region there, because of very close to the
camera, when we did noise reduction processes, all adjacent neighbouring pixels are become
equal and overlapped.
The number plate is clear after median filter, so plot graphs for average row and average
column after median filtering
From figures 33, 34 it is little bit difficult to get the number plate region, but we can make a
guess from average row graph. Number of peaks are from the range 100-150 (min is 0 and
max. is 300) so the number plate is exactly middle in the horizontal direction. But we cannot
locate it exactly.
Considering few more best case scenarios as an examples for this project, including with
figures:
From figure (41) maximum peaks are between the co-ordinates 75-125. And interface is
between 0.07-0.08. Number plate region is easily defined by these graphs.
From the above figures, we can easily identify the number plate region.
This code was tested on 15 images from the data base, which was found successful for
about 85%of the images. Remaining results were shown in appendix B.
CHAPTER SIX
6.0 CONCLUSION
The base line of this project is localisation or even character recognition of an ANPR system
which lies in the accuracy of detecting edges, reducing noise or filtering out of unwanted
regions. From the above work in this project it is evident that connected component analysis
algorithm is Momentous in image processing of ANPR system. Median filter is used to reduce
noise, As it is a non-linear filter, it removes shot noise. By taking consideration of ANPRs
basic point, which is accuracy of detecting edges, median filter smooths the image by
preserving edges, hence it has proven to be efficient filtering technique. Closing operation is
also for smoothing the image, it is useful to let the all adjacent vertical edges from connected
components. The code generated in this project was tested on a data base of images
provided by supervisor from city sync, and it has produced approximately 85% success rate.
Instead of applying smoothing so many times, giving some threshold value according to
processing speed would have give us better solution. This report contains detailed process of
code implementation, review of some other algorithms to be used for same system, and also
results from number of images. From every example we can identify under what
circumstances we were able to get the results and we were unable to get the results.
Environmental, lighting and tilt angle of license plate are the main problems to locate the
number plate region.
REFERENCES
1. Acharya, T. And Ray, A., K. (2005) Image Processing: Principles and Applications
New
Jersey: wiley&sons, inc publication [Online] Available at:
http://books.google.co.uk/books?id=smBw4xvfrIC&printsec=frontcover&dq=IMAGE+PROCESSING&source=bl&ots=FVIY9HwZF
G&sig=LAHfZXkYrstcEzzZqoyJ4YOgvjM&hl=en&ei=IZCCTMvTK5P44Abc5ojPCw&s
a=X&oi=book_result&ct=result&resnum=1&ved=0CCAQ6AEwADgK#v=onepage&q&f
=true [Accessed: 03-09-2010]
2. Bailey, D.G. Johnston, C.T. Ni Ma. (2008) Connected components analysis of
streamed
images
Vol.
8
pp.
679-682.
[Online]
Available
at:
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/stamp/stamp.j
sp%3Ftp%3D%26arnumber%3D4630038&authDecision=-203 [Accessed: 03-092010]
3. Bouman, C., A. (2010) Connected Component Analysis Vol. 11 pp. 1-19. [Online]
Available
at:
https://engineering.purdue.edu/~bouman/ece637/notes/pdf/ConnectComp.pdf
[Accessed: 05-09-2010]
4. Brandao, T., Sequeria, M., M. And Albuquerque, M. (2005) Multistage MorphologyBased Licence-Plate Location Algorithm [Online] Available at: http://repositorioiul.iscte.pt/bitstream/10071/1921/1/Multistage%20Morphology-Based%20LicensePlate%20Location%20Algorithm,%20Toms%20Brando,%20Manuel%20Menezes%
20de%20Sequeira%20e%20Miguel%20Albuquerque.pdf [Accessed :02-09-2010]
5. Burger, W.& Burge, J., M (2008) Digital Image Processing, An Algorithm Introduction
st
Using Java. Springer Science+Business Media,LLC. 1 Edition.
6. CCTV information, An introduction to ANPR retrieved 9
http://www.cctv-information.co.uk
th
7. Enyedi, B., Konyha, L. and Fazekas, K. (2006) Real Time Number Plate
Localization Algorithms Vol. 57 (2) pp 69-77. [Online] Available at:
http://iris.elf.stuba.sk/JEEEC/data/pdf/2_106-2.pdf [Accessed: 30-08-2010]
8. Friedrich, M., Jehlicka, P. And Schlaich, J. (2008) Automatic Number Plate
Recognition for the Observance of Travel Behaviour pp. 1-17. [Online] Available at:
http://www.isv.uni-stuttgart.de/vuv/publication/PDF/200805_Fr_PJ_JS-ANPR.pdf
[Accessed: 06-09-2010]
9. Guo, M., Wang, L. And Yuan, X. (2006) Car Plate Localization Using Pulse Coupled
Neural Network in Complicated Environment Vol. 4099 pp. 1206-1210. [Online]
Available
at:
https://springerlink3.metapress.com/content/nh7151uj13484160/resourcesecured/?target=fulltext.pdf&sid=ujqfck45rmjubmfteco3yjnm&sh=www.springerlink.co
m [Accessed: 02-09-2010]
10. John, C. (1986) A Computational Approach to Edge Detection Vol. 6 pp. 679-698.
[Online]
Available
at:
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
http://ieeexplore.ieee.org/Xplore/login.jsp?reload=true&url=http://ieeexplore.ieee.org/s
tamp/stamp.jsp%3Ftp%3D%26arnumber%3D4767851&authDecision=-203
[Accessed: 06-09-2010]
11. Lotufo, R.A. Morgan, A.D. Johnson, A.S. (1990) Automatic number-plate
recognition
Vol.
6
pp.
1-6.
[Online]
Available
at:
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/stamp/stamp.j
sp%3Ftp%3D%26arnumber%3D191011&authDecision=-203 [Accessed: 07-09-2010]
12. Martinsky, J., O. (2007) Algorithmic and Mathematical Principles of Automatic
Number
Plate
Recognition
Systems
[Online]
Available
at:
http://www.scribd.com/doc/6106962/License-Plate-Recognition [Accessed: 1-092010]
13. Nadernejad, E. (2008) Edge Detection Techniques: Evaluations and Comparisions
Vol. 2 (31) pp. 1507-1520. [Online] Available at: http://www.m-hikari.com/ams/amspassword-2008/ams-password29-32-2008/nadernejadAMS29-32-2008.pdf
[Accessed: 05-09-2010]
14. Nehrbass, J, Samsi, S, Chaves, J. C, Unpingco, J, Guilfoos, B, Ahalt, S,
Krishnamurthy, A, Chalker, A & Gardiner, J. (2006) Interfacing PC-Based Matlab
Directly
to
HPC
Resources
IEEE
Xplore
[Online]
Available
at
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4134094&isnumber=4134
th
020 [Accessed 4 July, 2009].
15. Russ, C., J (1995) The Image Processing Handbook. 2
nd
16. Sharifi, M. Fathy, M. Mahmoudi, M.T. (2002) A classified and comparative study of
edge detection algorithms Vol. 8 pp. 117-120. [Online] Available at:
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/stamp/stamp.j
sp%3Ftp%3D%26arnumber%3D1000371&authDecision=-203 [Accessed: 07-092010]
17. Shyang-Lih Chang Li-Shien Chen Yun-Chung Chung Sei-Wan Chen (2004)
Automatic license plate recognition Vol. 5 (1) pp. 42-53. [Online] Available at:
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/stamp/stamp.j
sp%3Ftp%3D%26arnumber%3D1271288&authDecision=-203 [Accessed: 05-092010]
18. Vasudevan, B., G., Dhanapanichkul, S.,& Balakrishnan, R. (2008) Flowchart
Knowledge Extraction on Image Processing pp. 4075-4081. [online] Available at:
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4634384 [Accesses on:
05-09-2010]
19. Wave Metrics (2009) Image Threshold Technical Graphing and Data Analysis
Software
for
Scientists
and
Engineers
[Online]
Available
at:
http://www.wavemetrics.com/products/igorpro/imageprocessing/thresholding.htm
[Accessed: 04-09-2010]
20. Wisegeek (2010) What is Image Processing. [Online] Available
http://www.wisegeek.com/what-is-image-processing.htm [Accessed: 31-09-2010]
at:
BIBLIOGRAPHY
1. Wang, H., Wang, X., Li, W., & Jia, X. (2007). Color Prior Knowledge License Plate
Location
Algorithm.
Pp
47-52
[online]
Available
at:
APPENDIX A
% Code for number plate localisation using connected component
analysis%
clc;
clear all;
[filename,pathname]=uigetfile('*.jpg;*.bmp','pick an image');
if isequal(filename,0) | isequal(pathname,0)
warndlg('image is not selected');
return;
else
I=imread(filename);%selecting an image into workspace from data
base%
end
I1=imresize(I,[256 256]);
[r c p]=size(I);
if p==3
I=rgb2gray(I);% to convert RGB image into gray scale image%
else
I=I;
end
%for resize image%
res=imresize(I,[256 256]);
figure,imshow(res);
%to convert the gray scale image into binary image%
level=graythresh(res);
BW=im2bw(res,level);
figure,imshow(BW);
%to remove noise in the image by median filtering%
FF=medfilt2(BW);
figure,imshow(FF);
%smoothing the image by preserving edges with closing operation%
se=strel('disk',4);
op=imclose(FF,se);
figure,imshow(op);
%structure attribute verification%
sz=size(res);
rs=zeros(256);
L=bwlabel(op);
s=regionprops(L,'Area');
ms=[s.Area];
z=length(ms);
for i=1:z
if ms(1,i)>=500 && ms(1,i)<=4000
for pp=1:sz(1,1)
for qq=1:sz(1,2)
if L(pp,qq)==i
rs(pp,qq)=1;
end
end
end
end
end
figure,imshow(rs);
avgrow=mean(rs,1);%to calculate or note the values of co-ordinates
and intensity for plate extraction%
plot(avgrow);
avgcol=mean(rs,2);
plot(avgcol);
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm
APPENDIX B
Implementing the code on some more images, and the outputs are:
Scenario-1 Under good conditions, all pre-processing steps are done one by one.
Example-2