Вы находитесь на странице: 1из 61

MSC Radio and Mobile Communication Systems

Final Year Project Report


School

of

Engineering

and

Technology

University of Hertfordshire

AUTOMATIC NUMBER PLATE LOCATION USING CONNECTED


COMPONENT ANALYSIS ALGORITHM

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)

Student Full Name: LALITH KUMAR CHALASANI

Student Registration Number: 07167361

Signed:
Date: 08 September 2010

School of Engineering and Technology

MSc Final Year Project Report

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

School of Engineering and Technology

MSc Final Year Project Report

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

School of Engineering and Technology

MSc Final Year Project Report

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

School of Engineering and Technology

MSc Final Year Project Report

CHAPTER SIX ............................................................................................................................ 40


6.0 CONCLUSION .................................................................................................................. 40
6.1 FURTHER DEVELOPMENT ............................................................................................ 40
REFERENCES ............................................................................................................................ 41
BIBLIOGRAPHY.......................................................................................................................... 45
APPENDIX A ............................................................................................................................... 46
APPENDIX B ............................................................................................................................... 47

LALITH

KUMAR

CHALASANI/AUTOMATIC

COMPONENT ANALYSIS

NUMBER

PLATE

LOCALIZATION

USING

CONNECTED

iv

School of Engineering and Technology

MSc Final Year Project Report

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

School of Engineering and Technology

MSc Final Year Project Report

Figure 38: closing operation ........................................................................................................ 34


Figure 39: output image5 ............................................................................................................ 35
Figure 40 : average row graph for closing op. ............................................................................ 35
Figure 41: average column graph for closing op. ........................................................................ 36
Figure 42 :raw image 6................................................................................................................ 37
Figure 43:binary image 6 ............................................................................................................ 37
Figure 44 : median filtering .......................................................................................................... 38
Figure 45: closing operation ........................................................................................................ 38
Figure 46: output image 6 ........................................................................................................... 38
Figure 47: average row for output6 ............................................................................................. 39
Figure 48: average column graph ............................................................................................... 39

LALITH

KUMAR

CHALASANI/AUTOMATIC

COMPONENT ANALYSIS

NUMBER

PLATE

LOCALIZATION

USING

CONNECTED

vi

School of Engineering and Technology

MSc Final Year Project Report

GLOSSARY
ANPR:

Automatic Number Plate Recognition

SFR :

Sum of Filtered Rows

SFC :

Sum of Filtered Columns

ALPL:

Automatic Licence Plate Localisation

PCNN:

Pulse Coupled Neural Network

ROI

Region of Interest

SUM :

Support Vector Machine

AVI

Automatic Vehicle Identification

PC

Personal Computer

RGB :

LALITH

Red Green Blue

KUMAR

CHALASANI/AUTOMATIC

COMPONENT ANALYSIS

NUMBER

PLATE

LOCALIZATION

USING

CONNECTED

vii

School of Engineering and Technology

MSc Final Year Project Report

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]

Figure 1-1:Flow diagram of an ANPR system

[6]
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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

Acquire images from system data base.

Extract number plate region from entire image.

Identify the number plate from the extracted image.

1.3 MATLAB SOFTWARE


Matlab is a product of The Mathworks,Inc. It is an advanced interactive software designed for
scientific and engineering computation. It is very flexible and useful tool for solving problems
in Physics, chemistry, finance, mathematics etc. Which deal with complicated numerical
calculations. It is also a pedagogical tool when teaching mathematics and engineering.
T he main features of Matlab are:

A collection of predefined mathematical functions and can able be to define each


function.

A complete help based on HTML

For solving problems in several application areas, toolboxes are available.

Ability to cooperate with programs written in other languages and for importing and
exporting formatted data.

It is a powerful matrix/vector-oriented high-level programming language for individual


applications.[14]

1.4 REPORT STRUCTURE


This report consists of six sections, the first section (chapter one) is about the introduction of
ANPR system, aim and objectives of this project and about Matlab software. Second section
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

(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

2.0 LITERATURE REVIEW


This part of the report features some articles or journals that were reviewed for writing of this
report.

2.1 CASE STUDY 1

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

School of Engineering and Technology

MSc Final Year Project Report

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:

The found range is transformed to horizontal.

Searched for smallest pixel in every column.

Vertical band pass filtering is performed in every column of the horizontal range.

SFC is generated using filtering.

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.

The exact value of the differentiated SFC curve is calculated.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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.

According to author direction search edge detection algorithm is recommended as a fine


search procedure. For better results windowing is always recommended in case of
procedures based on basic edge finding. For large images Basic edge detection is faster than
direction sensitive method. From this journal, combining of two methods will give better
results: Position of the plate is approximately determined by windowed edge finding, for fine
localization direction sensitive windowing is applied.

2.2 CASE STUDY 2

The reviewed case study is a paper on Multistage Morphology-Based Licence Plate


Localization Algorithm [4]. This paper describes about an algorithm with sequential
multistage approach. Each stage consists of sub-algorithms. Morphological operations are
performed on all sub-algorithms. This algorithm produces at least one accurate license plate
hypothesis for 97.18% of 673 images at highway toll gate. As we stated before, algorithm can
be seen as sequence of stages. If any stage fail to produce geometric constraint, still there is
a chance to send correct plate location to the next stage.
Stage-1: High contrast region detection.
It produces a set of location hypothesis consists of pixels region where horizontal contrast is
high. On gray level image, gray level morphological operations are used to contrast image
which will be binarized later. In high contrast areas contrast image value is high. The
structured element used in closing operation is different to element used in opening operation.
The structuring elements are horizontal lines proportional to plate width in opening, in closing
it is proportional to maximum Of expected plate width. In a light background, closing operation
eliminates dark characters, Opening operation eliminates light background. To remove some
dark regions inside the license plate, and light regions which do not belong to license plate
are removed by using further morphological operations. To obtain the regions where local
horizontal contrast is high, an algorithm is binarized by local thresholding. (Niblack method).
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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].

Stage-2: Finding character sequences


Takes the output of the previous stage, tries to locate horizontal aligned characters within the
region and extracted through binarization. Using Niblack method binarization is performed
over original gray scale values, and expected character dimensions proportional to
rectangular sliding window. These small regions consists of set of connected pixels. These
small regions correspond to characters of license plate, this might lead to finding possible
license plate location. The regions that comply with the criteria like height, width are then
analyzed in order to extract horizontal sequence. In this case close operation using a
horizontal line as structuring element. The regions resulting from the closing operation are
classified, as is the case of first stage, into discarded regions, large regions are sent to stage
3 as input.

Stage-3: Finding Rectangles


The regions remaining in last stage are the areas which are slightly exceed the license plate
region. Ita location may found by searching the rectangle within this small region. This can be
done by binarization of each region that are come from stage2 as outpt, followed by close
operation in order to merge regions those belongs to license plate which were separated due
to misleading binarization. To avoid merging with regions that do not belong to the license
plate, the structuring element must be small. After processing this step, regions that are too
small are discarded by applying same criteria which used for stage1, stage2.

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.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

2.3 CASE STUDY 3


This particular reviewed journal is for Car Plate Localization Using Pulse Coupled Neural
Network in Complicated Environment [9]. In this the author discussed about a hybrid method
based on Pulse Coupled Neural Network(PCNN) and wavelet analysis for car plate
recognition. First PCNN is used to exalt the image. Then wavelet analysis is used to get the
Regions of Interest(ROIs), Next PCNN enhancement is applied in ROIs. Followed by training
and classification process for labelling ROIs as car plate region or not. The system was
successfully got results upto 96%, which is higher than other localization methods on the
same image database.

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]

The linking activity is described as

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.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 2-1: Pulse coupled neuron model


[9]

Neuron elements internal activity depends on linking and feeding activity, is denoted as

U (t ) F (t )[1 L(t )]

(3)

is the linking coefficient.


The dynamic threshold implemented by

(t ) e-1/(t-1)+VY(t),

(4)

Where V is the threshold gain.

And Neuron output is


Y (t) =_1 ifU(t) > (t)
0 otherwise

(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

School of Engineering and Technology

MSc Final Year Project Report

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.0 IMAGE PROCESSING


An image is an array of picture elements or pixels, arranged in rows and columns. To convert
an image signal into a physical image is called Image processing, and this is a physical
process. This image signal can be either digital or analogue. This is one of the most important
achievement in todays technology. Photography is the most common type of Image
processing. Image processing involves in handling of image, giving an image as output which
is similar to the original image, but differ in few aspects like, reducing the noise, brightness,
luminance and size. Main applications of Image processing are Multimedia computing,
Secured image data communication, Bio-medical imaging, remote sensing, pattern
recognition. Image processing is implemented in achieving lesser requirements for storage
space, quality and it is used to reduce signal distortion, clarify fuzzy images. [20]

3.1 IMAGE SEGMENTATION


Sub division of an image into number of uniformly homogeneous regions is called image
segmentation. Each region is a constituent part in the entire scene. Segmentation is one of
the most important elements in automated image analysis, because at this point objects are
extracted from an image for processing like description and recognition. After extracting each
segment, next task is to extract texture, colour and shape, then ignoring the other parts. So
this process is to improve speed of analysis in getting certain data on an image. Acuurate
image segmentation gives more efficient recognition scheme. Basic processes in in
segmenting images are thresholding, edge detection, line detection etc.[15]

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

School of Engineering and Technology

MSc Final Year Project Report

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.

3.3 EDGE DETECTION


In the field of Image processing edge detection is very important process. Edges shows
shadows or other distinct changes in the intensity of an image. For high level processing good
edges are necessary, edge detection is a fundamental of low-level image processing. The
quality of edge detection is highly depends on lighting conditions, noise and density of edges.
These problems can be solved by adjusting proper values in the detector and changing the
threshold for an edge.[13] Different edge detectors work better under different conditions.
Different types of edge detectors are:
Canny edge detection: Basic idea is to detect at the zero crossings of the second directional
derivative of the image. Zero crossings correspond to first directional derivatives maxima and
minima in the direction of the gradient, and maxima is the best choice for locating edges. The
best feature of the canny edge detector is, it uses connected component analysis instead of
single threshold.[10] The Canny edge detection process provides better detection in noise
conditions, And signal to noise ratio has improved and probability is used for finding error
rate. Disadvantage of canny edge detection is , it is time consuming, computation is complex
and it has false zero crossings.[16].
st

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]

The Laplacian of Gaussian Operator: It is a typical example of 2

nd

derivative operator. Blur the

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

School of Engineering and Technology

MSc Final Year Project Report

3.4 IMAGE FILTERING


In image processing, filtering of an image is very essential. Reducing the noise in images are
practically impossible. Noise in image, occur due to different environmental features. The
high-pass filters have less gray level variations and smooth areas, where as low-pass filters
have high gray level variations and very less smooth areas. Higher frequency images contain
edges and noise as well. Colour-based and height based are two different filtering modes.
Height-based filtering only works on indexed colour images. 256-colour image is an example
for this. Each colour has a index number from 0-255, treat that as height. In performance wise
filters work differently depending on how they are implemented. There are many ways filtering
are often used in signal processing, and includes linear filtering using Chebyshev, Gaussian
and Butterworth filters. Median filtering is used to reduce noise of a binary thresholded image
in this project.

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.

3.5 CONNECTED COMPONENT ANALYSIS


After detecting the region boundaries, useful to excerpt regions which are not separated by a
boundary. Set of pixels which are not separated are called connected. Best possible region of
these pixels is called connected components. The set of connected components separate an
image into segments. In image processing, segmentation is main and important process.[2]
Two types of neighbourhood systems are there in connected components. One is 4-point
neighbourhood system, second one is 8-point neighbourhood system. Let s be the
neighbourhood system, C(s) be the set neighbours connected to s,
For all s and r, set C(s) must have the properties that:

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

School of Engineering and Technology

MSc Final Year Project Report

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.

Figure 3 connected component analysis architecture


[3]

Providing labels of previously processed pixels to current pixel is neighbourhood context


blocks work. It is like a window filter. Using row buffer, labels from previous row must be
cached. Based on labels of its neighbours, label selection block selects label for current pixel.
The small value of the label is propagated when two regions are merged. Data table gather
the raw data to calculate the features of connected components. The corresponding entries in
the data table are merged when the two regions merge. By updating merger table,
equivalence is recorded by merger control box. When a new label is created, the merger table
is started by adding new entry that points to itself.
For each label used, there must be one entry in merger and data tables. Number of labels
required depends on complexity and size of image. Width of data table depends on
complexity of features, width of merger table depends on number of labels. Merger chain size
is also depends on complexity of the image. Clock cycles required to process the image is
between 1 and 1.2 times of pixels depends on complexity.
Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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

of image width. As labels are changing, data table must

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.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

CHAPTER FOUR

4.0 PROJECT IMPLEMENTATION


The implementation of this project requires a personal computer, data base of few vehicle
images and Matlab software. As our requirement is to locate the number plate from captured
number plate, so no need of any camera or any other hardware construction, just software
aspect is required for ANPR implementation. By implementing a code in Matlab we can get
the output. We can use Matlab 2007 version to carry out this project. If it has required tools,
we can use higher or lower versions of Matlab. Even image processing tool box is required to
get the output in this project. In this section, the general code implementation is presented. It
includes software requirements, connected component algorithm, and flowchart to carry out
this project. My professor Dr. Soodamani Ramalingam was provided a data base comprising
of images. Hence the images in the data base are from different formats, filtering and all other
processing steps are required, Which is called pre-processing of images.

4.1 THE STAGES OF IMPLEMENTATION


This section gives a in detail explanation about the different stages of implementation that
have been utilised in this project.

4.1.1 STAGE ONE


This first stage comprises of original image obtained from the given data base. Data base
contains colour images, thus comprises of all RGB components. Example of an image from
the data base is shown in figure below.

I=imread(filename); % % % % % % % SELECT IMAGE % % % % % % %

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 4 Raw image 1

4.1.2 STAGE TWO


After taking the image into workspace, few pre-processing steps need to follow. In this stage
initial pre-processing step is converting RGB image into gray scale image. The original colour
image is very large in size, occupies more storage space. So it is necessary to convert these
files into a format which could be more convenient to store. To remove colours without
reducing the quality, conversion to gray scale is important. This gray scale image is 60%
lower size compared to original image. Below figure shows the gray scale image converted
from RGB image.
I=rgb2gray(I); % % % % % % % COLOR IMAGE CONVERT TO GRAY IMAGE % % % % %
%%

Figure 5 gray image of raw image1

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

4.1.3 STAGE THREE


Next pre-processing stage is converting gray scale image to binary image. As we discussed
earlier, gray scale image contains 60% lower size than colour image, even though this gray
scale image is having some noise, to reduce this noise make the image much simpler, binary
is having just two values, 1 or 0. So we can easily reduce the noise as because the image is
just having two colours.
BW=im2bw(res,level); %for binary image segment%

Figure 6:binary image after conversion from gray image

4.1.4 STAGE FOUR


Next stage of pre-processing is to implement filtering to reduce noise from the binary image
output. In this stage we are doing median filtering to reduce this noise. The median filter is an
example of order-statistic filter. The filter replaces a pixel by the median value of its
neighbouring pixels. Median filter can reduce most random noise with less blurring value. The
figure showing below is an example of median filter.

FF=medfilt2(BW ); % % % % % % % MEDIAN FILTERING % % % % % % %

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 7: median filtering image

4.1.5 STAGE FIVE


After applying smoothing operation, closing operation is to be used to smooth the image,
before thresholding, a closing operation is applied to let all adjacent vertical edges from a
connected region.

If we do number of closing operation then the number of connected

components will be decreased, sometimes it has to be taken into consideration, because of it


we may lost the number plate location. Those examples will be explained in the later
chapters. The correct example for closing operation is shown below..

op=imclose(FF,se); % % % % % % % CLOSING OPERATION % % % % % % %

Figure 8: image after closing operation

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

4.1.6 STAGE SIX


Final stage in this project is to locate the number plate region. By verifying structure attributes
we can locate the number plate region. In binary images, connected components helps in
some image processing analyses like extraction of boundary regions. Located the coordinates correspond to the number plate and from whole image connected components of
the number plate region were extracted. The extracted pixels were given a white colour and
the other pixels were black.

rs=zeros(256); s = regionprops(L, 'Area');

where regionprops measures a set properties for each connected component in the binary
image. The final output was shown in figure below.

Figure 9: output image after extraction

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.

avgrow=mean(rs,1); %to plot the graph for average row%

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 10: average row graph for output image

avgcol=mean(rs,2);%to plot the graph for average column%

Figure 11: average column graph for output

In an average column graph, consider x-axis as co-ordinates, y-axis as intensity. In this


particular output, the number plate lies between the co-ordinates 175-250 and intensity is
between 0.02-0.065. If we do normalisation, we will get the exact number plate region.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

4.2 FLOW CHART


Flow chart is a schematic representation of an algorithm, which gives a stream of operations
to get the output. The symbols in a flowchart represent start or end of the program, steps of a
program, input or output operation, decision making and flow line. Hence figure shows a
flowchart for number plate location system. [18]
START

Read image into work


space
Convert RGB into Gray
scale

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

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Plot graphs for avg. row and


avg. col.

Apply

normalization

to

extract the plate region

Locate the extracted region


STOP

Figure 9-4: Flow chart

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

CHAPTER FIVE

5.0 RESULTS AND DISCUSSION


A set of commands and statements were used to get the coding for number plate location.
This code was tested on number of images which were taken from the data base from city
sync. (An organisation specified in the production of the ANPR system). Hence this chapter
discusses and explains about the testing processes and outcomes of different images from
the data base.

5.1 RESULTING IMAGES FROM TESTS


Scenario-1: Under good conditions.

Figure 12:raw image2

Figure (12) shown above is the raw RGB image from the data base.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 13: gray image

Figure(13) represents the gray scale image converted from Original image after resizing it.

Figure 14: binary image

Figure(14) represents the binary image, converted from gray using thresholding process.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 15: median filtering

Figure(15) represents the image after median filtering the binary image.

Figure 16: closing operation

Figure 17: output image


Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component
Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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.

Figure 18:average row graph

Figure 19: average column graph

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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:raw image 3

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: gray image

Figure(21) is the gray scale image after resizing it from original image to reduce storage
space.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 22: binary image

Figure 23: image after median filtering

Figure 24:image after closing operation

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 25:output image

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.

Figure 26 : average row graph

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 27:average column graph

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.

Scenario 2: Under bad conditions.

Let us consider a Raw image from data base,

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 28: raw image4

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 29: gray scale image4

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 30: binary image

Figure 31: median filtering

Figure 32: closing operation

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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

Figure 33: average column graph

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 34 : average row graph

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:

Figure 35 : raw image 5

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 36 : binary image 5

Figure 37 : median filtering

Figure 38: closing operation

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 39: output image5

Figure 40 : average row graph for closing op.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 41: average column graph for closing op.

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.

One more example for number plate recognition process.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 42 :raw image 6

Figure 43:binary image 6

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 44 : median filtering

Figure 45: closing operation

Figure 46: output image 6

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Figure 47: average row for output6

Figure 48: average column graph

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.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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.

6.1 FURTHER DEVELOPMENT


For further development of this code number plate localization, it is better to write a code
which is suitable for all kinds of circumstances and images, for that reducing of smoothing
operations, implementation of coding on thresholding value and by providing coding for
finding most occurring connected component value might provide best results. Writing a code
for character segmentation of extracted number plate will be more useful in ANPR system.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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

march 2009 from

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

School of Engineering and Technology

MSc Final Year Project Report

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

Edition (CRC Press,Inc).

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:

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

BIBLIOGRAPHY
1. Wang, H., Wang, X., Li, W., & Jia, X. (2007). Color Prior Knowledge License Plate
Location

Algorithm.

Pp

47-52

[online]

Available

at:

http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4414525 [accessed :3008-2-10]


st

2. Morris, T. (2004) Computer Vision and Image Processing 1 Edition(PALGRAVE


MACMILLAN)

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

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

School of Engineering and Technology

MSc Final Year Project Report

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.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Example-2

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

Scenario-2 Under Bad conditions

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

(after closing operation)

(This is the output) so we need to avg row and avg column


after closing operation itself.

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

School of Engineering and Technology

MSc Final Year Project Report

For this image We cannot get the exact output easily .

Lalith Kumar Chalasani/Automatic Number Plate Recognition Using Connected Component


Analysis Algorithm

Вам также может понравиться