0% found this document useful (0 votes)
78 views

Car License Plate Recognition Using MATLABs Code

This document describes a license plate recognition system using MATLAB. It discusses: 1. The process involves image acquisition, preprocessing/extraction, character segmentation, and character recognition. 2. Preprocessing includes resizing, converting to grayscale, binarization, noise removal. Extraction isolates the license plate from the image. 3. Segmentation uses region growing to partition the license plate into individual character regions. It starts with seed pixels and groups neighboring pixels into regions based on similarity.

Uploaded by

wesam
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views

Car License Plate Recognition Using MATLABs Code

This document describes a license plate recognition system using MATLAB. It discusses: 1. The process involves image acquisition, preprocessing/extraction, character segmentation, and character recognition. 2. Preprocessing includes resizing, converting to grayscale, binarization, noise removal. Extraction isolates the license plate from the image. 3. Segmentation uses region growing to partition the license plate into individual character regions. It starts with seed pixels and groups neighboring pixels into regions based on similarity.

Uploaded by

wesam
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 27

Car License Plate Recognition

Using MATLABs Code

Prepared by : Wesam Alnkaa


Course name :DIP
1.Introduction
 The importance of automatic Licenses plate
recognition is growing around the world in
many different countries.
 Licenses Plate Recognition system plays an
important role in many applications like
electronic payment system (toll payment and
parking fee payment), to find stolen cars ,
traffic surveillance.
1.Introduction
 Licenses plate recognition can be broken down
into four main parts:
1. Image acquisition.

2. Car license plate Pre-processing & extraction.


3. Segmentation of car license plate characters.
4. Recognition of car license plate characters.
o In this project, we focused on one of the most
important parts, which is extracting letters from
the Car license plate .
o Thus, we was learned how to detect and extract
the letters on the license plate using MATLAB.
1.Introduction
o Block Diagram
Pre-
processing

Image Features
acquisition Extraction

Characters
Segmentation

Character
Data Result
Recognition
Work flow
1. Image acquisition:

• In image processing, image acquisition is an


action of retrieving image from an external
source for further processing. It’s always the
foundation step in the workflow since no
process is available before obtaining an
image.
• In this project image was taken from real
environment as shown in figure (1) (we
downloaded from the internet for more than
one country (
Work flow
1. Image acquisition:

(A) (B)
Fig(1): Examples for License Plates used in this project
Work flow
2. Pre-processing & Features extraction :

• Digital image preprocessing is an initial step to


image processing improving the data image
quality for more suitable for visual perception or
computational processing.
• Preprocessing remove unwanted data and
enhance the image by removing background
noise, normalizing the intensity of individual
image particles.
• In preprocessing we improve the image in ways
that increase the chances for success of the
other processes.
Work flow
2. Pre-processing & Features extraction :

• Features (plate characters) extraction is the


part of measuring those relevant features to be
used in recognition process.
• Selection of the right features is important in
order to obtain best results in license plate
recognition.
Work flow
2. Pre-processing & Features extraction :

In preprocessing & plate extraction we do the


following:
1. We capture the image in Figure(2) ,resize image
and convert it to gray image shown in Figure(3).

Figure (2) : Input image. Figure (3) : Image after resize


and to gray scale conversion.
Work flow
2. Preprocessing & Features extraction :

2. We converted gray image to black and white


(binary) image , invert the resulting image
and removing all objects smaller than 30
pixels (let this image be img1). Results of
each step are shown in Figure(4).

Fig(4)(a) :Image after (black Fig(4)(b) : Image after noise


and white) conversion and (smaller than 30 pixel)
inverted removal.
Work flow
2. Pre-processing & Features extraction :

3. We considered the characters as noise and


removed them (let this image be img2) (the
removed characters have size from 3000 to
3500 pixels depending on the image size).
4. Then we removed img2 from img1, which
creates an image with characters and some
noise. After this, objects fewer than 200 px
will be removed, which removes noise
completely.
Results of steps (3,4) are shown in Figure(5).
Work flow
2. Pre-processing & Features extraction :

Fig (5)(a) : Image with characters & some noise


Work flow
2. Pre-processing & Features extraction :

Fig (5)(b) : Image after preprocessing & characters extraction


Work flow
3. Characters Segmentation :

 Image Segmentation is the process of isolating


objects of interest in an image.
 Image segmentation is to divide an image into
parts that have a correlation with objects or areas
of the real world contained in the image.
 In brief, segmentation is to subdivide an image into
its constituent regions or objects.
 The primary types of image segmentation
techniques are (Thresholding Segmentation ,Edge-
Based Segmentation ,Region-Based
Segmentation ,Watershed
Segmentation ,Clustering-Based Segmentation
Algorithms ,Neural Networks for Segmentation)
Work flow
3. Characters Segmentation :

 There are two methods of Region Segmentation (Region


Growing ,Region Splitting)
 In this project we used ‘Region Growing ’ Because it is
very accurate in finding the boundaries between the
characters, and it is not affected by the rotation of the
image of the plate .
 The objective of segmentation is to partition an image
into regions
 A region is a connected component with some uniformity (in this
project they are characters)
 In region growing, we start with a set of “seed” points,
growing by appending to each seed’s neighbor pixels, if
they have similar properties and 8-connected neighbor
 Need : similarity criterion(in this project is (white pixel = 1 ))
Work flow
3. Characters Segmentation :

 Start by choosing a seed pixel and compare it with


neighbor pixels.
 When seed and neighbor pixels are similar and 8-
connected neighbor, region is grown from the seed
pixel by adding neighbor pixels.
 When the growth of one region stops, choose
another seed pixel which does not yet belong to
any region and start again.
 Steps of segmentation by Region Growing method are
shown in Figure(6).
Work flow
3. Characters Segmentation :

seed pixel

Pixel with value ‘1’

Connected Pixel

Structuring element

Fig (6): Segmentation by Region Growing method


Work flow
3. Characters Segmentation :

 Can be considered the black and white image in


figure(7)(A) as a simple illustrative example of
this technique and the matrix of pixels representing
the image is the matrix in the figure (7) (B) .
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 1 1 1 11 1 0 0 0
11 11 0 0 0 1 1 1 11 1 0 0 0
11 1 01 0 0 0 0 0 00 0 0 0 0
11 1 1 0 0 0 0 0 0 00 0 0 0 0
(A) (B) 11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 1 1 0 0
11 11 0 0 0 0 0 0 00 1 1 0 0
11 11 0 0 0 0 0 0 00 1 1 0 0
11 11 0 0 0 0 0 1 11 1 1 0 0
11 11 0 0 0 0 0 1 11 1 1 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0

Fig (7)(a) : Binary Fig (7)(b) : pixels


image matrix of Binary image
Work flow
3. Characters Segmentation :

 When applying a Region Growing technique on the


pixel matrix in Figure (7) (b) , the output will be
the matrix in figure (8).
 we have Three regions, each region is represented by a
number
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 2 2 2 22 2 0 0 0
11 11 0 0 0 2 2 2 22 2 0 0 0
11 1 01 0 0 0 0 0 00 0 0 0 0
11 1 1 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 3 3 0 0
11 11 0 0 0 0 0 0 00 3 3 0 0
11 11 0 0 0 0 0 0 00 3 3 0 0
11 11 0 0 0 0 0 3 33 3 3 0 0
11 11 0 0 0 0 0 3 33 3 3 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0
11 11 0 0 0 0 0 0 00 0 0 0 0

Fig (8): binary image matrix after applying a Region Growing technique
Work flow
3. Characters Segmentation :

 In this project, we applied the Region Growing


method on car plates using matlab commands and
we got the results shown in the figure (9)

Fig (9): image after Characters Segmentation


Work flow
4. Character Recognition :

 Character recognition is the most important task in


recognizing the plate number.
 There are a few methods applied for the recognition
of characters like template matching, feature
extraction, geometric approach, neural network and
more .
 In this project we use template matching method.
 Template matching using correlation is one of the
most common and easy classification methods for
recognizing the characters.
Work flow
4. Character Recognition :

 The technique is based on performing correlation


between segmented image from which a character
is required to be recognized and character template
image which is used for recognition.
 Only problem is associated with template image ,that is
proper acquisition of template image is required.
 In this project we used template images with
(42x24) size as shown in figure (10) , and we
change the size of segmented images (characters
image ) to the same size (42x24) .
Work flow
4. Character Recognition:

Fig (10): Template images


Work flow
4. Data Result :

 Once we run the code and choose the plate image,


the result will appear as shown in figure (11):

Fig (11): GUI for License Plate Recognition MATLAB CODE


Results :
 We tested the License Plate Recognition program
with 6 car plates that use the same template
format (test 1) , and tested it with 12 car plates
that do not use the same template format (test 2).
 Recognition rate of PLR was as shown below :
100% Recognition rate of test 1 (Correct number of plates / total
number of plates)
16% Recognition rate of test 2 (Correct number of plates / total
number of plates)
44.44% Average of Recognition rate (Correct number of plates / total
number of plates)
Results :
100% Recognition rate of test 1 (Correct number of digits / total
number of digits)
73.68% Recognition rate of test 2 (Correct number of digits / total
number of digits)
83.77% Average of Recognition rate (Correct number of digits / total
number of digits)
Conclusion :
 we have presented the study of image processing
techniques for license plate recognition .
 The experiment has been done in MATLAB to show
the basic process of the image processing.
 the used method in plate recognition (template
matching) does not gives optimum result when the
car plate does not have the same used template .

You might also like