SlideShare a Scribd company logo
License plate recognition
Project Report on
License Plate Recognition System
By:
Harshit Saxena
Indian Institute of Technology Roorkee
2011
LICENSE PLATE RECOGNITION 2011
1 | P a g e
Abstract:
This project report aims to develop a license plate recognition system. This report presents an algorithm
for localization of yellow colored license plates using morphological operations, character segmentation
using histogram and intensity projections and Optical Character recognition using Template matching.
Keywords: License plate, Character segmentation, Optical Character Recognition, Morphological
Operations Histogram.
Introduction
The application of autonomous systems has increased widespread. Significant research has been carried
out in the area of transportation to make it intelligent and efficient. A License Plate Recognition(LPR)
system involves detection and identification of a license plate.
It plays a major role in automatic highway electronic toll collection, vehicle tracking etc. It has been
used for speed enforcement in countries like Austria, Italy and The Netherlands [1]
. Thus by using such
an automated system it becomes easy to monitor and control the large number of vehicles on the road.
The most vital part of an LPR system is detection and extraction of the License Plate. A number of
factors like the angle, noise, uneven illumination contribute to the overall system accuracy.
A robust License Plate Recognition System consists mainly of three modules:
[1] License plate detection,
[2] character segmentation and
[3] Optical Character Recognition (OCR).
Methodology
LICENSE PLATE RECOGNITION 2011
2 | P a g e
Assumptions:
 Input is an image of a stationary Car.
 Only the most common type of license plates (single line) will be dealt with.
 The license Plate has a yellow background with text written in Black.
License Plate Detection:
(I) Preprocessing:
Before applying any operation on the test image some image enhancement techniques are used for
improving the overall result. In this process, we use methods that include adjusting the intensity of the
image and reducing the contrast in the image. The technique used for intensity adjustment is known as
histogram equalization. The contrast in the image can be reduced by several methods that are normally
used for contrast enhancement.
Since we have assumed that the license plate has a yellow background , we now identify the regions in
the image that contain the intensity of RGB corresponding to the color yellow.
(a< R< b) && (p< G< q) && (x< B< y)
where, R is the intensity of the color Red, G of Green and B that of Blue. Based on this condition we
obtain a Binary Image, we change yellow to white and non-yellow to black.
LICENSE PLATE RECOGNITION 2011
3 | P a g e
Here: a=100, b=250,
p=50 , q=180,
x=0 , y=100
The image obtained contains noise and many undesirable regions. In order to remove these unwanted
regions we apply morphological operations.
(II) Morphological Operations:
Mathematical morphology commonly refers to a broad set of image processing operations that process
images based on shapes. These are Non-linear filters, with the function of restraining noises, extracting
features and segmenting images etc
The following morphological operations have been used
 Fill (MATLAB function – imfill): fills holes and regions in the binary image. A hole is a set of
background pixels that cannot be reached by filling in the background from the edge of the
image.
 Open (MATLAB function – imopen): performs morphological opening on the grayscale or
binary image with the pre-defined structuring element. The morphological open operation is
erosion followed by dilation, using the same structuring element for both operations.
LICENSE PLATE RECOGNITION 2011
4 | P a g e
 Dilate (MATLAB function – imdilate): dilates the grayscale, binary, or packed binary image
returning the dilated image. The argument se is a structuring element object, or array of
structuring element objects, returned by the strel function.
On applying these morphological operations on the original image, we obtain:
bw = imfill(I,'holes');
se = strel('rectangle',[3,3]);
bw = imopen(bw,se);
bw = imdilate(bw,se);
LICENSE PLATE RECOGNITION 2011
5 | P a g e
(III) Horizontal and Vertical Segmentation
Once the Preprocessing is over, the next step is to segment the license plate candidates from the image.
This technique is used to extract the probable rectangular regions of the license plates. We first do a
horizontal segmentation of the image using the histogram method.
Steps:-
 Calculate the horizontal and vertical projections of intensity.
 Then we find the mean of the local minimas of horizontal projection plot.
 Based on the threshold calculated from the above local minimas, we find x locations of the
segmented regions.
The above plot shows the horizontal segmentation of intensity. These values indicate the number of
pixels that are white in a particular column. Thus we can observe that there are no white pixels in the
immediate neighborhood of the region AB and CD. Hence the regions AB and CD can be the probable
regions containing the license plate. Thus by finding the points A, B, C, D we can get the probable x
coordinates of the license plate.
LICENSE PLATE RECOGNITION 2011
6 | P a g e
Another important point to note here is that the length of AB is very less and does not qualify to be the
location of a license plate. We have also used a padding of 0s of 1 column and 1 row wide in the
beginning. This enables us to detect the points using 0 to 1 transition or vice versa. Thus by this method
the start point of the x coordinate of the plate will always be odd. We can get the width of the probable
regions by getting the distance between the points A (x1) and B(x2) say.
Now we compare this width to a threshold width value.
fT (binh)= 1 if fT (x1,x2) >=T
0 if fT (x1,x2)<=T
Thus if the width falls between the threshold, then the points between x1 and x2 are made 1 otherwise
they are made 0.The output after these conditions is:
Hence AB and CD are the two possible regions. Note that A/C is the left and B/D is the right edge of the
license plate respectively.
Similarly we perform a vertical segmentation. The result obtained is as follows:
LICENSE PLATE RECOGNITION 2011
7 | P a g e
Thus P/R are the top edges and Q/S are the bottom edges of the license plate respectively.
(V) Identifying the License Plate:
Out of the many candidate regions that we have obtained from the so far mentioned procedure, our task
now is to identify the region containing the license plate. In this experiment, two features are defined and
extracted in order to decide if a candidate region contains a license plate or not, these features are
1. Aspect ratio
2. Edge Density
Even though these features are not scale-invariant, luminance-invariant, rotation-invariant, but they are
insensitive to many environment changes.
Aspect ratio
The aspect ratio is defined as the ratio of the width to the height of the region.
Aspect Ratio = width/height
Edge density
Applying the above feature to filter the segmented regions, a lot of non-license plate regions can be
removed. However, there are still many candidate regions left which take similar rectangularity and
aspect ratio features as the license plate regions do, such as often the head lights. Considering that the
license plate regions generally take higher local variance in its pixels‟ values due to the presence of
characters, an important feature to describe license plate region is local variance, which is quantized
using the edge density.
Thus after Step IV we get the following two regions:
Notice that the plate can be differentiated from the first figure by the property of edge density. Thus the
extraction and detection of license plate is completed.
LICENSE PLATE RECOGNITION 2011
8 | P a g e
Character segmentation:
This is the second major part of the License Plate detection algorithm. The Steps involved in character
Segmentation are: -
(I) Preprocessing
Preprocessing is very important for the good performance of character segmentation. Our preprocessing
consists of conversion to grayscale and binarization using an object enhancement technique.
Steps:
 Conversion to Grayscale
 Binarization: Compared with the usual methods of image binarization, this algorithm uses the
information of intensity and avoids the abruption and conglutination of characters that are the
drawbacks of usual image binarization techniques.
Horizontal Segmentation:
 For this we calculate the horizontal and vertical projections of intensity.
 Then we find the local minima for horizontal projection.
 Based on the threshold calculated from the above local minimas, we find x locations of the
segmented regions.
In order to locate the right and left edges of license plate from candidate region, the vertical projection
after mathematical morphology deal is changed into binary image.
LICENSE PLATE RECOGNITION 2011
9 | P a g e
Optical Character Recognition (OCR)
OCR is the mechanical or electronic translation of images of handwritten or typewritten text (usually
captured by a scanner) into machine-editable text.
The procedure consists of two important steps, training and recognition.
Training:
The program is first trained with a set of sample images for each of the characters to extract the
important features based on which the recognition operation would be performed.
Our program is trained on a set of 10 characters with 10 samples of each. The training algorithm
involves the following steps
1. Preprocessing:
Before preparing the template for each of the characters for further use , we need to do some processing
on the images . The following are the operations that are performed :
- Binarization.
- Inversion of intensity of the characters.
- Finding the connected component that represents the character
- Finding the smallest rectangle enclosing this connected component
- Normalization of the image to size 15 X 15.
- Storing the intensity values using the below mentioned algorithm for each of the characters.
2. Creating the template
In order to create the template for each character we do the following operation.
For every white pixel we insert the value 1 and for every black pixel 0. We do this for all the 10 training
samples for each character and calculate the weights to get the template.
Recognition:
1. Preprocessing:
The image obtained after segmentation is Grayscale.
Follow the preprocessing steps used for the training of the characters.
2. Calculate the score for each of the characters:
We calculate the matching score of the segmented character from the templates of the character stored
by the following algorithm.
We compare the pixel values of the matrix of segmented character and the template matrix, and for every
match we add 1 to the matching score and for every mis-match we decrement 1. This is done for all 225
pixels. The match score is generated for every template and the one which gives the highest score is
taken to be the recognized character.
LICENSE PLATE RECOGNITION 2011
10 | P a g e
Results:
 License Plate detection and extraction algorithm worked on 90% of the images.
 The technique of horizontal segmentation did not produce desired results for plates at an angle.
This limited the accuracy of the algorithm.
 For horizontal license plates around 65% of the letters were able to be recognized in cases where
character segmentation was achieved.
Future Work:
 Inclusion of license plates with different colored backgrounds.
 Skew correction and efficient character segmentation algorithm need to be worked upon which
can further enhance the overall system efficiency.
LICENSE PLATE RECOGNITION 2011
11 | P a g e
Some Sample Results:
Example 1:
LICENSE PLATE RECOGNITION 2011
12 | P a g e
Example 2:
LICENSE PLATE RECOGNITION 2011
13 | P a g e
Example 3:
Example 4:
LICENSE PLATE RECOGNITION 2011
14 | P a g e
Example 5:
Conclusion:
The license plates were detected successfully in nearly all the images. Also an improved
character segmentation technique would have increased the system accuracy greatly. The
aim of the project was to familiarize oneself with the basics of image processing and gain
experience in programming in Matlab which was achieved successfully.
LICENSE PLATE RECOGNITION 2011
15 | P a g e
References:
[1] Automatic license plate recognition-Wikipedia
(http://en.wikipedia.org/wiki/Automatic_number_plate_recognition)
[2] Vehicle License Plate location Based on Histogramming and Mathematical Morphology -
Feng Yang, Zheng Ma - 2005
[3] Building an Automatic Vehicle License-Plate Recognition System - Tran Duc Duan, Tran
Le Hong Du, Tran Vinh Phuoc, Nguyen Viet Hoang – Febraury 2005
[4] A New Algorithm for Character Segmentation of License Plate - Yungang Zhang
,Changshui Zhang - June 2003
[5] Mean Shift for Accurate Number Plate Detection - Wenjing Jia, Huaifeng Zhang, and Xiangjian
He - July 2005
[6] Humayun K. Sulehria, Ye Zhang, Danish Irfan, “Mathematical Morphology Methodology for
Extraction of Vehicle Number Plates” in International Journal of Computers; Issue 3, Volume 1,
2007.
[7] Ondrej Martinsky, B.Sc. Thesis on “Algorithmic and Mathematical Principles of Automatic
Number Plate Recognition Systems” in 2007.
[8] Digital Image Processing using Matlab by Gonzalez and Woods

More Related Content

PPTX
License Plate recognition
Jasleen Kaur (Chandigarh University)
 
PPTX
Automatic no. plate recognition
Anjali Mehra
 
PPTX
Automatic vehicle license plate detection using VEDA
Rojith Thomas
 
PPTX
Number plate recognition system using matlab.
Namra Afzal
 
PPTX
AUTOMATIC CAR LICENSE PLATE RECOGNITION USING VEDA
Muhammed Sahal c
 
PPT
License Plate Recognition
Amr Rashed
 
PPTX
car number plate detection using matlab image & video processing
Kesava Korukonda
 
PPTX
Number plate recognition using matlab
Abhishek Sainkar
 
License Plate recognition
Jasleen Kaur (Chandigarh University)
 
Automatic no. plate recognition
Anjali Mehra
 
Automatic vehicle license plate detection using VEDA
Rojith Thomas
 
Number plate recognition system using matlab.
Namra Afzal
 
AUTOMATIC CAR LICENSE PLATE RECOGNITION USING VEDA
Muhammed Sahal c
 
License Plate Recognition
Amr Rashed
 
car number plate detection using matlab image & video processing
Kesava Korukonda
 
Number plate recognition using matlab
Abhishek Sainkar
 

What's hot (20)

PPTX
Vehicle number plate recognition using matlab
Kongara Sudharshan
 
PPTX
Automatic number plate recognition using matlab
ChetanSingh134
 
PPT
License Plate Recognition
Gilbert
 
PDF
Final Thesis Presentation Licenseplaterecognitionincomplexscenes
dswazalwar
 
PPTX
Automatic Car Number Plate Detection and Recognition using MATLAB
HimanshiSingh71
 
PPTX
Number plate recogition
hetvi naik
 
PDF
IRJET- Automatic Number Plate Recognition System in Real Time
IRJET Journal
 
PPT
ANPR based Security System Using ALR
Ashok Basnet
 
PDF
License plate recognition.
Amitava Choudhury
 
PDF
License Plate Recognition using Morphological Operation.
Amitava Choudhury
 
PPT
Character recognition from number plate written in assamese language
Subhash Basistha
 
PPT
car plate recognition
Cruise Chen
 
PDF
Ay36304310
IJERA Editor
 
PPTX
License Plate Recognition System
Hira Rizvi
 
ODP
Computer Vision for Traffic Sign Recognition
thevijayps
 
PDF
Automatic Road Sign Recognition From Video
Dr Wei Liu
 
PPTX
Traffic sign recognition
AKR Education
 
PDF
Real-Time Multiple License Plate Recognition System
IJORCS
 
PDF
Help the Genetic Algorithm to Minimize the Urban Traffic on Intersections
IJORCS
 
PDF
Automatic Vehicle Detection Using Pixelwise Classification Approach
IOSR Journals
 
Vehicle number plate recognition using matlab
Kongara Sudharshan
 
Automatic number plate recognition using matlab
ChetanSingh134
 
License Plate Recognition
Gilbert
 
Final Thesis Presentation Licenseplaterecognitionincomplexscenes
dswazalwar
 
Automatic Car Number Plate Detection and Recognition using MATLAB
HimanshiSingh71
 
Number plate recogition
hetvi naik
 
IRJET- Automatic Number Plate Recognition System in Real Time
IRJET Journal
 
ANPR based Security System Using ALR
Ashok Basnet
 
License plate recognition.
Amitava Choudhury
 
License Plate Recognition using Morphological Operation.
Amitava Choudhury
 
Character recognition from number plate written in assamese language
Subhash Basistha
 
car plate recognition
Cruise Chen
 
Ay36304310
IJERA Editor
 
License Plate Recognition System
Hira Rizvi
 
Computer Vision for Traffic Sign Recognition
thevijayps
 
Automatic Road Sign Recognition From Video
Dr Wei Liu
 
Traffic sign recognition
AKR Education
 
Real-Time Multiple License Plate Recognition System
IJORCS
 
Help the Genetic Algorithm to Minimize the Urban Traffic on Intersections
IJORCS
 
Automatic Vehicle Detection Using Pixelwise Classification Approach
IOSR Journals
 
Ad

Viewers also liked (13)

PPTX
Vehicle Number Plate Recognition System
prashantdahake
 
DOCX
Automatic Number Plate Recognition
Neeraja Gandla
 
PDF
Automatic license plate recognition system for indian vehicle identification ...
Kuntal Bhowmick
 
PPT
Automatic number plate recognition
Saifullah Malik
 
PPT
AUTOMATIC LICENSE PLATE RECOGNITION SYSTEM FOR INDIAN VEHICLE IDENTIFICATION ...
Kuntal Bhowmick
 
DOC
Automatic number plate recognition
Saifullah Malik
 
PDF
LICENSE NUMBER PLATE RECOGNITION SYSTEM USING ANDROID APP
Aditya Mishra
 
PPTX
Automatic Number Plate Recognition (ANPR)
Vidyut Singhania
 
PDF
Anpr based licence plate detection report
somchaturvedi
 
DOCX
License plate recognition on fpga and matlab
Van Loi Le
 
PDF
A Review Paper on Automatic Number Plate Recognition (ANPR) System
AM Publications
 
DOCX
Matlab based vehicle number plate identification system using ocr
Ghanshyam Dusane
 
DOC
Manoj resume new
manojya
 
Vehicle Number Plate Recognition System
prashantdahake
 
Automatic Number Plate Recognition
Neeraja Gandla
 
Automatic license plate recognition system for indian vehicle identification ...
Kuntal Bhowmick
 
Automatic number plate recognition
Saifullah Malik
 
AUTOMATIC LICENSE PLATE RECOGNITION SYSTEM FOR INDIAN VEHICLE IDENTIFICATION ...
Kuntal Bhowmick
 
Automatic number plate recognition
Saifullah Malik
 
LICENSE NUMBER PLATE RECOGNITION SYSTEM USING ANDROID APP
Aditya Mishra
 
Automatic Number Plate Recognition (ANPR)
Vidyut Singhania
 
Anpr based licence plate detection report
somchaturvedi
 
License plate recognition on fpga and matlab
Van Loi Le
 
A Review Paper on Automatic Number Plate Recognition (ANPR) System
AM Publications
 
Matlab based vehicle number plate identification system using ocr
Ghanshyam Dusane
 
Manoj resume new
manojya
 
Ad

Similar to License plate recognition (20)

PDF
The automatic license plate recognition(alpr)
eSAT Publishing House
 
PDF
The automatic license plate recognition(alpr)
eSAT Publishing House
 
PDF
The automatic license plate recognition(alpr)
eSAT Journals
 
PDF
The automatic license plate recognition(alpr)
eSAT Journals
 
PDF
Smart License Plate Recognition System based on Image Processing
ijsrd.com
 
PDF
Iaetsd heuristics to detect and extract license plates
Iaetsd Iaetsd
 
PDF
Al4103216222
IJERA Editor
 
PDF
License Plate Localization based on Statistical Measures of License Plate Fea...
idescitation
 
PDF
Enhanced Optimization of Edge Detection for High Resolution Images Using Veri...
ijcisjournal
 
PDF
40120140501008
IAEME Publication
 
PDF
Tracking number plate from vehicle using
ijfcstjournal
 
PDF
Number Plate Recognition of Still Images in Vehicular Parking System
IRJET Journal
 
PDF
An Approach for Benin Automatic Licence Plate Recognition
CSCJournals
 
PDF
A novel method for character segmentation of vehicle
eSAT Publishing House
 
PDF
Automatic Number Plate Recognition System A Histogram Based Approach
Joe Osborn
 
PDF
E011142632
IOSR Journals
 
PDF
OCR optimization for vehicle number plate Identification based on Template ma...
IJEEE
 
PDF
Licence Plate Recognition Using Supervised Learning and Deep Learning
IRJET Journal
 
PDF
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
PDF
IRJET - Automatic Licence Plate Detection and Recognition
IRJET Journal
 
The automatic license plate recognition(alpr)
eSAT Publishing House
 
The automatic license plate recognition(alpr)
eSAT Publishing House
 
The automatic license plate recognition(alpr)
eSAT Journals
 
The automatic license plate recognition(alpr)
eSAT Journals
 
Smart License Plate Recognition System based on Image Processing
ijsrd.com
 
Iaetsd heuristics to detect and extract license plates
Iaetsd Iaetsd
 
Al4103216222
IJERA Editor
 
License Plate Localization based on Statistical Measures of License Plate Fea...
idescitation
 
Enhanced Optimization of Edge Detection for High Resolution Images Using Veri...
ijcisjournal
 
40120140501008
IAEME Publication
 
Tracking number plate from vehicle using
ijfcstjournal
 
Number Plate Recognition of Still Images in Vehicular Parking System
IRJET Journal
 
An Approach for Benin Automatic Licence Plate Recognition
CSCJournals
 
A novel method for character segmentation of vehicle
eSAT Publishing House
 
Automatic Number Plate Recognition System A Histogram Based Approach
Joe Osborn
 
E011142632
IOSR Journals
 
OCR optimization for vehicle number plate Identification based on Template ma...
IJEEE
 
Licence Plate Recognition Using Supervised Learning and Deep Learning
IRJET Journal
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
IRJET - Automatic Licence Plate Detection and Recognition
IRJET Journal
 

Recently uploaded (20)

PPTX
database slide on modern techniques for optimizing database queries.pptx
aky52024
 
PPTX
Chapter_Seven_Construction_Reliability_Elective_III_Msc CM
SubashKumarBhattarai
 
PDF
Unit I Part II.pdf : Security Fundamentals
Dr. Madhuri Jawale
 
PPTX
MT Chapter 1.pptx- Magnetic particle testing
ABCAnyBodyCanRelax
 
PPTX
easa module 3 funtamental electronics.pptx
tryanothert7
 
PDF
The Effect of Artifact Removal from EEG Signals on the Detection of Epileptic...
Partho Prosad
 
PDF
Introduction to Data Science: data science process
ShivarkarSandip
 
PPTX
Inventory management chapter in automation and robotics.
atisht0104
 
PPTX
FUNDAMENTALS OF ELECTRIC VEHICLES UNIT-1
MikkiliSuresh
 
PDF
Cryptography and Information :Security Fundamentals
Dr. Madhuri Jawale
 
PDF
2025 Laurence Sigler - Advancing Decision Support. Content Management Ecommer...
Francisco Javier Mora Serrano
 
PPT
SCOPE_~1- technology of green house and poyhouse
bala464780
 
PDF
Software Testing Tools - names and explanation
shruti533256
 
PDF
Zero carbon Building Design Guidelines V4
BassemOsman1
 
PPTX
Tunnel Ventilation System in Kanpur Metro
220105053
 
PPTX
Victory Precisions_Supplier Profile.pptx
victoryprecisions199
 
PDF
Chad Ayach - A Versatile Aerospace Professional
Chad Ayach
 
PPT
1. SYSTEMS, ROLES, AND DEVELOPMENT METHODOLOGIES.ppt
zilow058
 
PDF
settlement FOR FOUNDATION ENGINEERS.pdf
Endalkazene
 
PPTX
22PCOAM21 Session 2 Understanding Data Source.pptx
Guru Nanak Technical Institutions
 
database slide on modern techniques for optimizing database queries.pptx
aky52024
 
Chapter_Seven_Construction_Reliability_Elective_III_Msc CM
SubashKumarBhattarai
 
Unit I Part II.pdf : Security Fundamentals
Dr. Madhuri Jawale
 
MT Chapter 1.pptx- Magnetic particle testing
ABCAnyBodyCanRelax
 
easa module 3 funtamental electronics.pptx
tryanothert7
 
The Effect of Artifact Removal from EEG Signals on the Detection of Epileptic...
Partho Prosad
 
Introduction to Data Science: data science process
ShivarkarSandip
 
Inventory management chapter in automation and robotics.
atisht0104
 
FUNDAMENTALS OF ELECTRIC VEHICLES UNIT-1
MikkiliSuresh
 
Cryptography and Information :Security Fundamentals
Dr. Madhuri Jawale
 
2025 Laurence Sigler - Advancing Decision Support. Content Management Ecommer...
Francisco Javier Mora Serrano
 
SCOPE_~1- technology of green house and poyhouse
bala464780
 
Software Testing Tools - names and explanation
shruti533256
 
Zero carbon Building Design Guidelines V4
BassemOsman1
 
Tunnel Ventilation System in Kanpur Metro
220105053
 
Victory Precisions_Supplier Profile.pptx
victoryprecisions199
 
Chad Ayach - A Versatile Aerospace Professional
Chad Ayach
 
1. SYSTEMS, ROLES, AND DEVELOPMENT METHODOLOGIES.ppt
zilow058
 
settlement FOR FOUNDATION ENGINEERS.pdf
Endalkazene
 
22PCOAM21 Session 2 Understanding Data Source.pptx
Guru Nanak Technical Institutions
 

License plate recognition

  • 2. Project Report on License Plate Recognition System By: Harshit Saxena Indian Institute of Technology Roorkee 2011
  • 3. LICENSE PLATE RECOGNITION 2011 1 | P a g e Abstract: This project report aims to develop a license plate recognition system. This report presents an algorithm for localization of yellow colored license plates using morphological operations, character segmentation using histogram and intensity projections and Optical Character recognition using Template matching. Keywords: License plate, Character segmentation, Optical Character Recognition, Morphological Operations Histogram. Introduction The application of autonomous systems has increased widespread. Significant research has been carried out in the area of transportation to make it intelligent and efficient. A License Plate Recognition(LPR) system involves detection and identification of a license plate. It plays a major role in automatic highway electronic toll collection, vehicle tracking etc. It has been used for speed enforcement in countries like Austria, Italy and The Netherlands [1] . Thus by using such an automated system it becomes easy to monitor and control the large number of vehicles on the road. The most vital part of an LPR system is detection and extraction of the License Plate. A number of factors like the angle, noise, uneven illumination contribute to the overall system accuracy. A robust License Plate Recognition System consists mainly of three modules: [1] License plate detection, [2] character segmentation and [3] Optical Character Recognition (OCR). Methodology
  • 4. LICENSE PLATE RECOGNITION 2011 2 | P a g e Assumptions:  Input is an image of a stationary Car.  Only the most common type of license plates (single line) will be dealt with.  The license Plate has a yellow background with text written in Black. License Plate Detection: (I) Preprocessing: Before applying any operation on the test image some image enhancement techniques are used for improving the overall result. In this process, we use methods that include adjusting the intensity of the image and reducing the contrast in the image. The technique used for intensity adjustment is known as histogram equalization. The contrast in the image can be reduced by several methods that are normally used for contrast enhancement. Since we have assumed that the license plate has a yellow background , we now identify the regions in the image that contain the intensity of RGB corresponding to the color yellow. (a< R< b) && (p< G< q) && (x< B< y) where, R is the intensity of the color Red, G of Green and B that of Blue. Based on this condition we obtain a Binary Image, we change yellow to white and non-yellow to black.
  • 5. LICENSE PLATE RECOGNITION 2011 3 | P a g e Here: a=100, b=250, p=50 , q=180, x=0 , y=100 The image obtained contains noise and many undesirable regions. In order to remove these unwanted regions we apply morphological operations. (II) Morphological Operations: Mathematical morphology commonly refers to a broad set of image processing operations that process images based on shapes. These are Non-linear filters, with the function of restraining noises, extracting features and segmenting images etc The following morphological operations have been used  Fill (MATLAB function – imfill): fills holes and regions in the binary image. A hole is a set of background pixels that cannot be reached by filling in the background from the edge of the image.  Open (MATLAB function – imopen): performs morphological opening on the grayscale or binary image with the pre-defined structuring element. The morphological open operation is erosion followed by dilation, using the same structuring element for both operations.
  • 6. LICENSE PLATE RECOGNITION 2011 4 | P a g e  Dilate (MATLAB function – imdilate): dilates the grayscale, binary, or packed binary image returning the dilated image. The argument se is a structuring element object, or array of structuring element objects, returned by the strel function. On applying these morphological operations on the original image, we obtain: bw = imfill(I,'holes'); se = strel('rectangle',[3,3]); bw = imopen(bw,se); bw = imdilate(bw,se);
  • 7. LICENSE PLATE RECOGNITION 2011 5 | P a g e (III) Horizontal and Vertical Segmentation Once the Preprocessing is over, the next step is to segment the license plate candidates from the image. This technique is used to extract the probable rectangular regions of the license plates. We first do a horizontal segmentation of the image using the histogram method. Steps:-  Calculate the horizontal and vertical projections of intensity.  Then we find the mean of the local minimas of horizontal projection plot.  Based on the threshold calculated from the above local minimas, we find x locations of the segmented regions. The above plot shows the horizontal segmentation of intensity. These values indicate the number of pixels that are white in a particular column. Thus we can observe that there are no white pixels in the immediate neighborhood of the region AB and CD. Hence the regions AB and CD can be the probable regions containing the license plate. Thus by finding the points A, B, C, D we can get the probable x coordinates of the license plate.
  • 8. LICENSE PLATE RECOGNITION 2011 6 | P a g e Another important point to note here is that the length of AB is very less and does not qualify to be the location of a license plate. We have also used a padding of 0s of 1 column and 1 row wide in the beginning. This enables us to detect the points using 0 to 1 transition or vice versa. Thus by this method the start point of the x coordinate of the plate will always be odd. We can get the width of the probable regions by getting the distance between the points A (x1) and B(x2) say. Now we compare this width to a threshold width value. fT (binh)= 1 if fT (x1,x2) >=T 0 if fT (x1,x2)<=T Thus if the width falls between the threshold, then the points between x1 and x2 are made 1 otherwise they are made 0.The output after these conditions is: Hence AB and CD are the two possible regions. Note that A/C is the left and B/D is the right edge of the license plate respectively. Similarly we perform a vertical segmentation. The result obtained is as follows:
  • 9. LICENSE PLATE RECOGNITION 2011 7 | P a g e Thus P/R are the top edges and Q/S are the bottom edges of the license plate respectively. (V) Identifying the License Plate: Out of the many candidate regions that we have obtained from the so far mentioned procedure, our task now is to identify the region containing the license plate. In this experiment, two features are defined and extracted in order to decide if a candidate region contains a license plate or not, these features are 1. Aspect ratio 2. Edge Density Even though these features are not scale-invariant, luminance-invariant, rotation-invariant, but they are insensitive to many environment changes. Aspect ratio The aspect ratio is defined as the ratio of the width to the height of the region. Aspect Ratio = width/height Edge density Applying the above feature to filter the segmented regions, a lot of non-license plate regions can be removed. However, there are still many candidate regions left which take similar rectangularity and aspect ratio features as the license plate regions do, such as often the head lights. Considering that the license plate regions generally take higher local variance in its pixels‟ values due to the presence of characters, an important feature to describe license plate region is local variance, which is quantized using the edge density. Thus after Step IV we get the following two regions: Notice that the plate can be differentiated from the first figure by the property of edge density. Thus the extraction and detection of license plate is completed.
  • 10. LICENSE PLATE RECOGNITION 2011 8 | P a g e Character segmentation: This is the second major part of the License Plate detection algorithm. The Steps involved in character Segmentation are: - (I) Preprocessing Preprocessing is very important for the good performance of character segmentation. Our preprocessing consists of conversion to grayscale and binarization using an object enhancement technique. Steps:  Conversion to Grayscale  Binarization: Compared with the usual methods of image binarization, this algorithm uses the information of intensity and avoids the abruption and conglutination of characters that are the drawbacks of usual image binarization techniques. Horizontal Segmentation:  For this we calculate the horizontal and vertical projections of intensity.  Then we find the local minima for horizontal projection.  Based on the threshold calculated from the above local minimas, we find x locations of the segmented regions. In order to locate the right and left edges of license plate from candidate region, the vertical projection after mathematical morphology deal is changed into binary image.
  • 11. LICENSE PLATE RECOGNITION 2011 9 | P a g e Optical Character Recognition (OCR) OCR is the mechanical or electronic translation of images of handwritten or typewritten text (usually captured by a scanner) into machine-editable text. The procedure consists of two important steps, training and recognition. Training: The program is first trained with a set of sample images for each of the characters to extract the important features based on which the recognition operation would be performed. Our program is trained on a set of 10 characters with 10 samples of each. The training algorithm involves the following steps 1. Preprocessing: Before preparing the template for each of the characters for further use , we need to do some processing on the images . The following are the operations that are performed : - Binarization. - Inversion of intensity of the characters. - Finding the connected component that represents the character - Finding the smallest rectangle enclosing this connected component - Normalization of the image to size 15 X 15. - Storing the intensity values using the below mentioned algorithm for each of the characters. 2. Creating the template In order to create the template for each character we do the following operation. For every white pixel we insert the value 1 and for every black pixel 0. We do this for all the 10 training samples for each character and calculate the weights to get the template. Recognition: 1. Preprocessing: The image obtained after segmentation is Grayscale. Follow the preprocessing steps used for the training of the characters. 2. Calculate the score for each of the characters: We calculate the matching score of the segmented character from the templates of the character stored by the following algorithm. We compare the pixel values of the matrix of segmented character and the template matrix, and for every match we add 1 to the matching score and for every mis-match we decrement 1. This is done for all 225 pixels. The match score is generated for every template and the one which gives the highest score is taken to be the recognized character.
  • 12. LICENSE PLATE RECOGNITION 2011 10 | P a g e Results:  License Plate detection and extraction algorithm worked on 90% of the images.  The technique of horizontal segmentation did not produce desired results for plates at an angle. This limited the accuracy of the algorithm.  For horizontal license plates around 65% of the letters were able to be recognized in cases where character segmentation was achieved. Future Work:  Inclusion of license plates with different colored backgrounds.  Skew correction and efficient character segmentation algorithm need to be worked upon which can further enhance the overall system efficiency.
  • 13. LICENSE PLATE RECOGNITION 2011 11 | P a g e Some Sample Results: Example 1:
  • 14. LICENSE PLATE RECOGNITION 2011 12 | P a g e Example 2:
  • 15. LICENSE PLATE RECOGNITION 2011 13 | P a g e Example 3: Example 4:
  • 16. LICENSE PLATE RECOGNITION 2011 14 | P a g e Example 5: Conclusion: The license plates were detected successfully in nearly all the images. Also an improved character segmentation technique would have increased the system accuracy greatly. The aim of the project was to familiarize oneself with the basics of image processing and gain experience in programming in Matlab which was achieved successfully.
  • 17. LICENSE PLATE RECOGNITION 2011 15 | P a g e References: [1] Automatic license plate recognition-Wikipedia (http://en.wikipedia.org/wiki/Automatic_number_plate_recognition) [2] Vehicle License Plate location Based on Histogramming and Mathematical Morphology - Feng Yang, Zheng Ma - 2005 [3] Building an Automatic Vehicle License-Plate Recognition System - Tran Duc Duan, Tran Le Hong Du, Tran Vinh Phuoc, Nguyen Viet Hoang – Febraury 2005 [4] A New Algorithm for Character Segmentation of License Plate - Yungang Zhang ,Changshui Zhang - June 2003 [5] Mean Shift for Accurate Number Plate Detection - Wenjing Jia, Huaifeng Zhang, and Xiangjian He - July 2005 [6] Humayun K. Sulehria, Ye Zhang, Danish Irfan, “Mathematical Morphology Methodology for Extraction of Vehicle Number Plates” in International Journal of Computers; Issue 3, Volume 1, 2007. [7] Ondrej Martinsky, B.Sc. Thesis on “Algorithmic and Mathematical Principles of Automatic Number Plate Recognition Systems” in 2007. [8] Digital Image Processing using Matlab by Gonzalez and Woods