matlab based vehicle number plate identification system using ocr
TRANSCRIPT
Dr. BABASAHEB AMBEDKAR MARATHWADA UNIVERSITY,
AURANGABAD (M.S.)
“MATLAB Based Vehicle Number Plate Identification
System using OCR”
Submitted By
Ghanshyam Dusane
Under The Guidance of
Prof. Neeta Pingle
In Partial Fulfillment of the award of
Bachelor of Engineering (Electronics & Communication Engineering)
Department of Electronics & Communication Engineering
Marathwada Institute of Technology,
Aurangabad (Maharashtra)
(2015-16)
CERTIFICATE
This is to certify that the project report entitled “MATLAB Based Vehicle
number plate Identification System using OCR”, submitted by Ghanshyam
Dusane, Kedar Mirajkar and Vishal Jadhav is the bonafied work completed under
my supervision and guidance in partial fulfillment for the award of Bachelor of
Engineering (Electronics & Communication Engineering) of Dr. Babasahe
AmbedkarMarathwada University, Aurangabad (M.S.).
Place: Aurangabad
Date:
Prof. V.M. Kulkarni Prof. Neeta Pingle
Head of DepartmentGuide
Department of
Electronics&Communication Engineering
Dr.J.H.Godihal
Principal
Marathwada Institute of Technology Aurangabad (M.S.) – 431 005
CONTENTS
List of Figures I
List of Tables Ii
1. INTRODUCTION 1
1.1 Objective
1.2 Need
1
2
2. LITERATURE SURVEY 3
2.1 Overview
2.2 Proposed Algorithm
2.3 Summary of Paper Studied
3
3
4
3. SYSTEM MODELING 6
3.1 Software Part 6
3.1.1 Introduction to MATLAB 7
3.2 Hardware Part 10
3.2.1 Microcontroller 89C51 11
3.2.2 Serial Communication 12
3.2.3 RS232 Pin Configuration 13
3.3Design Diagrams 14
3.4 Technical details of the project 15
4. CONCLUSION 16
4.1 Project Planning timeline 16
4.2 Cost estimation 17
References 18
Acknowledgement 19
i
List of Figures
Figure Illustration Page
3.1 Block Diagram of OCR System 6
3.2 The graphical interface to the MATLAB
workspace
8
3.2 Architecture of OCR System 9
3.3 Block Diagram of MATLAB BASED OCR
System
10
3.4 Original Hardware Design 10
3.5 RS232 Pin Configuration 13
3.6 Use case Diagram 14
List of Tables
Table Content Page
3.1 Pin Details of RS232 12
4.1 Cost Estimation 16
Ii
1. INTRODUCTION1.1 Objective
Massive integration of information technologies into all aspects of modern life
caused demand for processingvehicles as conceptual resources in information sys-
tems. Because a standalone information system without any data hasno sense, there
was also a need to transform information about vehicles between the reality and infor-
mation systems.This can be achieved by a human agent, or by special intelligent
equipment which is be able to recognize vehicles bytheir number plates in a real envi-
ronment and reflect it into conceptual resources. Because of this, various recognition-
techniques have been developed and number plate recognition systems aretoday used
in various traffic and securityapplications, such as parking, access and border control,
or tracking of stolen cars.
In entrance gate, number plates are used to identify the vehicles. When a vehi-
cle enters an input gate, numberplate is automatically recognized and stored in data-
base and black-listed number is not given permission. When avehicle later exits the
place through the gate, number plate is recognized again and paired with the first-one
stored inthe database and it is taken a count. Automatic number plate recognition sys-
tems can be used in access control. Forexample, this technology is used in many com-
panies to grant access only to vehicles of authorized personnel.
1.2Need
Vehicle identification is an essential area in the development of intelligent
traffic systems and surveillance. Given the current security situation in the country
due to ethnic conflicts, this is one of the areas where there is an urgent need for the
development of devices that could be used in variety of situations to ease the security
concerns. In addition, the use of vehicles in India has increasedrapidly, especially in
recent years, due to urbanization and modernization, and thus, traffic congestion in
cities has become a major issue. Therefore, control of vehicles and identification of
traffic violators to maintain discipline, is becoming a necessary task in many cities.
Automatic vehicle identification systems can be used effectively for this purpose.
From the variety of number plate systems introduced over the years by local
authorities, there are several types that are still accepted as valid number plates on lo-
cal roads. Essentially, it consists of plates with white background at the front and yel-
low background at the rear, and letters in black in both cases. The arrangement of
numbers consists of twoEnglish letters followed by four digits, separated by a dash
(example, GA-1234). In addition, two smaller letters are placed on plate to identify
the Province of issue, namely, UP (Uttar Pradesh), PB (Punjab), MP (Madhya
Pradesh), RJ(Rajasthan) etc
\
2. LITERATURE SURVEY2.1 Overview
In the literature, various license plate detection algorithms are implemented
and proposed yet license plate capturing has been studied for several years, and is a
challenging task to track license plates from several angles, partial occlusion,or multi-
ple instances. Investigation of input image is donein license plate detection which
identifies few local patchesincluding license plates. Since a plate can exist anywhere
inan image with several sizes, it is a bit tough to check everypixel to locate it. Most of
the times, it is preferred to extractsome features from images and concentrate only on
thosepixels featured by the license plate. On the basis of included
features, traditional license plate detection techniques arecriterion into three cate-
gories: On the basis of color, edge based,and based on texture. Color-based con-
ceptsinvolve the conclusion that few countries follow specificcolor in their license
plates. Edge-based approaches arethe most popular, as they give effective perfor-
mance in theprocess of license plate detection. In this license plate ischaracterized by
a rectangular shape with an exact aspectratio, and can be extracted by checking all
possiblerectangles in the image some other approaches based on
local features are being proposed in the recent times. Asmall description of few of the
older works is demonstratedin literature introduction section.
Proposed Algorithm
[1] Load image.
[2] Pre-processing of the image.
[3] Licenses plate detection.
[4] Recognition of characters.
[5] Number Identified.
[6] Compare with database stored.
[7] Message displayed.
2.1.1 Summary of Paper studied
Paper 1
“AUTOMATIC NUMBER PLATE RECOGNITION SYSTEM FORVEHICLE
IDENTIFICATION USING OPTICAL CHARACTER RECOGNITION”
MUHAMMAD TAHIR QADRI, MUHAMMAD ASIF 2009 IEEE
Automatic Number Plate Recognition (OCR) is animage processing
technology which uses number (license) plate to identify the vehicle. The objective
is to design an efficientautomatic authorized vehicle identification system by using
thevehicle number plate. The developed system firstdetects the vehicle and then
captures the vehicle image. Vehiclenumber plate region is extracted using the image
segmentationin an image. Optical character recognition technique is usedfor the
character recognition. The resulting data is then used tocompare with the records on
a database so as to come up withthe specific information like the vehicle’s owner,
place ofregistration, address, etc
Paper 2
“OPTICAL CHARACTER RECOGNITION”
RAVINA MITHE, SUPRIYA INDALKAR, NILAM DIVEKAR
2013 INTERNATIONAL JOURNAL OF RECENT TECHNOLOGY AND
ENGINEERING (IJRTE)
The Optical Character Recognition is a mobile application. It uses smart
mobile phones of android platform. This paper combines the functionality of Optical
Character Recognition and speech synthesizer. The objective is to Develop user
friendly application which performs image to speech surveillance. The proposed
method applied on yellow color license plate. It has two main stages. Firstly, exact
location of the license plate is detected from an input Automatic license plate
recognition is used to recognize the characters from license plate image. It is widely
used in various areas such as traffic control, robbery, and image by using image
acquisition and optical character recognition and Sobel edge is used for character
segmentation. Secondly, template matching is used to test therecognized
characters with templates
http://www.ijirset.com/upload/2014/may/111_Aut o matic.pd f
Paper 3
“DESIGN OF AN OPTICAL CHARACTER RECOGNITION SYSTEM FOR
CAMERA-BASED HANDHELD DEVICES”
AYATULLAH FARUK MOLLAH, NABAMITA MAJUMDER SUBHADIP BASU,
AND MITA NASIPURI
2011 INTERNATIONAL JOURNAL OF COMPUTER SCIENCE ISSUES
This paper presents a complete Optical Character Recognition (OCR) system
for camera captured image/graphics embedded textual documents for handheld
devices. At first, text regions are extracted and skew corrected. Then, these regions
are binarized and segmented into lines and characters. Characters are passed into the
recognition module.. Compared to Tesseract, an open source desktop-based powerful
OCR engine, present recognition accuracy is worth contributing. Moreover, the
developed technique is computationally efficient and consumes low memory so as to
be applicable on handheld devices.
http://arxiv.org/ftp/arxiv/papers/1109/1109.3317. pd f
The algorithm proposed in this paper detects and recognized vehicle license
plate automatically. The input of the system is an image taken by the camera from a
distance of 4 to 5 meters. The proposed OCR technique consists of two main
modules: (1) License plate locating module using canny detector and Hough line (2)
License number identification module using template matching to recognize
individual character with the help database stored for each and every character (A to
Z) and number (0 to 9). The proposed algorithm is mentioned below and architecture
of the proposed method.
The proposed OCR system reads an input image taken by the camera and
passes it to the pre-processing unit. The main operation of pre-processing unit is to
eliminate noise caused in digital images during image acquisition (digitization) and
transmission, imaging sensors can be affected by ambient conditions, interference can
be added to an image during transmission. Image pre-processing unit attempts to
restore images that have been degraded due to any one or more reasons.
3. SYSTEM MODELLING
3.1 Software Part
OCR is an image processing technology which enables to extract vehicle li-
cense plate numberform digital images. It consists of a camera that has the capability
to capture animage, finds the location of the number platein the image and then ex-
tracts the characters using character recognition tool that translate the pixels into al-
phanumericallyreadable character or string. OCR can be used in many areas from
speed enforcement and tool collection to management ofparking lots, etc. At present,
in OCR there are several techniques used for the recognition plate’s number such as
pattern matching, neural network character recognition, and image processing tech-
nology .which arecomputationally expensive or use artificial neural network which in-
volves complex mathematics. The block diagram of OCR system is shown in fig 3.1
Fig 3.1. Block Diagram of OCR System
The OCR system works in these steps, the first step is the detection of the ve-
hicle and capturing a vehicle image of front orback view of the vehicle, the second
steps is the localization of number plate and then extraction of vehicle number plate in
An image. The final step use image segmentation technique, for the segmentation sev-
eral methods have been proposed neuralnetwork, mathematical morphology, color
analysis, and histogram analysis. Segmentation is for individual character recognition.
Optical character recognition (OCR) is one of the methods to recognizethe each char-
acter with the help of database stored for respective alphanumeric character.
3.1.1 Introduction of MATLAB
The name MATLAB stands for MATrix LABoratory. MATLAB was written
originally to provide easy access to matrix software developed by the LINPACK (lin-
ear system package) and EISPACK (Eigen system package) projects.
MATLAB is a high-performance language for technical computing. It inte-
grates computation, visualization, and programming environment. Furthermore,
MATLAB is a modern programming language environment: it has sophisticated data
structures, contains built-in editing and debugging tools, and supports object-oriented
programming. These factors make MATLAB an excellent tool for teaching and re-
search.
MATLAB has many advantages compared to conventional computer lan-
guages (e.g. C, FORTRAN) for solving technical problems. MATLAB is an interac-
tive system whosebasic data element is an array that does not require dimensioning.
The software package has been commercially available since 1984 and is now consid-
ered as a standard tool at most universities and industries worldwide.
It has powerful built-in routines that enable a very wide variety of computa-
tions. It also has easy to use graphics commands that make the visualization of results
immediately available. Specific applications are collected in packages referred to as
toolbox. There are toolboxes for signal processing, symbolic computation, control
theory, simulation, optimization, and several other fields of applied science and engi-
neering
Fig.3.2 The graphical interface to the MATLAB workspace
Flowchart of OCR System
Fig 3.3 Architecture of OCR System
3.2 Hardware Part
Fig 3.4 Block Diagram of MATLAB BASED OCR System
The hardware comprises of USB port connection to receive notifications, Mi-
crocontroller interface to checknotification, motor control to control gate as per con-
trol command, LCDinterface to display & buzzer to generate alarm. The Block
Diagram is shown in Fig
Fig 3.5 Original Hardware Design
3.2.1 MICROCONTROLLER 89C51
We are using ATMELS AT89c/s51 microcontroller. The controller executes
instructions as per the clock cycles; this clock is generated using a crystal which is
connected to the XTAL1 & XTAL2 pin of the microcontroller, the two capacitors C1
& C2 are connected between the two XTAL pins & the ground. They are required for
the crystal to oscillate.
A Power ON reset circuit is connected to the RESET pin of the
microcontroller, the controller must be reset properly whenever is power is turned on,
which is done by applying a Vcc to the reset pin & for normal operation of the
controller the pin should be pulled low. So an RC (R1, C3) circuit is connected to the
RST (9) pin of the microcontroller. Whenever the power is turned ON the Capacitor is
fully charged & the RST pin gets 5 v. Then the capacitor slowly discharges through
the resistor & is then pulled to ground.
Microcontrollers Port 0 does not have an Internal Pull Up resistor so we need
external Pull Up resistors on port 0. For which we use 9-Pin SIP resistor which are
basically eight resistors with one end common.
Features MICROCONTROLLER 89C51
Compatible with MCS-51® Products
8K Bytes of In-System Programmable (ISP) Flash Memory
4.0V to 5.5V Operating Range
Fully Static Operation: 0 Hz to 33 MHz
Three-level Program Memory Lock
256 x 8-bit Internal RAM
32 Programmable I/O Lines
Three 16-bit Timer/Counters
Eight Interrupt Sources
Full Duplex UART Serial Channel
Low-power Idle and Power-down Modes
Interrupt Recovery from Power-down Mode
Watchdog Timer
3.2.2 SERIAL COMMUNICATION
Now that we have the 8 bit value in the 89C51, we want to send that value to
the PC. The 89C51 has a built in serial port that makes it very easy to communicate
with the PC's serial port but the 89C51 outputs are 0 and 5 volts and we need +10 and
-10 volts to meet the RS232 serial port standard. The easiest way to get these values is
to use the MAX232. The MAX232 acts as a buffer driver for the processor. It accepts
the standard digital logic values of 0 and 5 volts and converts them to the RS232
standard of +10 and -10 volts. It also helps protect the processor from possible
damage from static that may come from people handling the serial port connectors.
It includes a Charge Pump, which generates +10V and -10V from a single 5v
supply. This I.C. also includes two receivers and two transmitters in the same
package. This is handy in many cases when you only want to use the Transmit and
Receive data Lines. You don't need to use two chips, one for the receive line and one
for the transmit. However all this convenience comes at a price, but compared with
the price of designing a new power supply it is very cheap. There are also many
variations of these devices. The large values of capacitors are not only bulky, but also
expensive. Therefore other devices are available which use smaller capacitors and
even some with inbuilt capacitors. However the MAX-232 is the most common, and
thus we will use this RS-232 Level Converter in our project.
The MAX232 requires 5 external 1µF capacitors. These are used by the
internal charge pump to create +10 volts and -10 volts.
Features of MAX232
Operate from Single +5V Power Supply
+5V and +12V (MAX231/MAX239)
Low-Power Receive Mode in Shutdown(MAX223/MAX242)
Meet All EIA/TIA-232E and V.28 Specifications
Multiple Drivers and Receivers
3-State Driver and Receiver Outputs
Open-Line Detection (MAX243)
3.3.3 RS232 Pin Configuration
Fig 3.6 RS232 Pin Configuration
Table of Pin Details
3.3 Design Diagrams
Pin Signal Pin Signal
1 Data carrier detect 6 Data set ready
2 Received data 7 Request to send
3 Transmitted data 8 Clear to send
4 Data terminal ready 9 Ring indicator
5 Signal ground
Our software system can be used to support library environment to create a
Digital Library where several license plate images are converted into electronic-form
for accessing by the users. For this purpose the printed plates must be recognized
before they are converted into electronic-form. The resulting electronic-documents are
accessed by the users like police and general public for reading and getting
information.
Figure 3.7: Use case Diagram
3.5 Requirements Specifications for Windows Application
Hardware Requirements
Hard disk: 10 GB minimum
Ram: 1 GB minimum
3 Mega-Pixel Camera
Mouse
Keyboard
Scanner and Monitor
Software Requirements
System Type: 32-bit operating system, x86 based processor
OS Installed: Windows XP or higher
MATLB 7.0 or Above installed
4. CONCLUSION
The automatic number plate recognition system using vehicle license plate is
presented. The system use image processing techniques for identifying the vehicle
from the database stored in the computer. The system is implemented and executed in
Matlab. The OCR method is sensitive to misalignment and to different sizes, so the
affine transformation can be used to improve the OCR recognition from different size
and angles.The statistical analysis can also be used to define the probability of
detection and recognition of the vehicle number plate. At present there are certain
limits on parameters like speed of the vehicle, script on the vehicle number plate,
skew in the image which can be removed by enhancing the algorithms further.
4.1Project Planning
4.2Cost estimation
Sr. No. Component Cost
1 Web Cam 1500
2 Microcontroller 200
3 MAX 232 100
4 Copper Clad 50
5 DC Motor 250
6 Connecting Wires 100
7 RS232 Connectors 50
8 Buzzer 200
9 LCD 250
Total 2700
REFERENCES
The method for various types of references is shown below
Research Papers
[1]Optical Character Recognition
Ravina Mithe, Supriya Indalkar, Nilam Divekar 2013
International Journal Of Recent Technology And Engineering (Ijrte)
[2]Design Of An Optical Character Recognition System For Camera-Based Handheld
Devices
Ayatullah Faruk Mollah, Nabamita Majumder Subhadip Basu, And Mita Nasipuri
2011 International Journal Of Computer Science Issues
[3] Number Plate Recognition Using an Improved Segmentation
Mr. G. T. Sutar , Prof. Mr. A.V. Shah P.G. Student, Department of Electronics Engi-
neering, D.K.T. Engineering College, Ichalkaranji, Maharashtra, India
Associate Professor,
Department of Electronics Engineering, D.K.T. Engineering College, Ichalkaranji,
Maharashtra, India
[4] A Review Paper on Automatic Number Plate Recognition (ANPR) System
International Journal of Innovative Research in Advanced Engineering (IJIRAE)
Volume 1 Issue 1 (April 2014)
Online:
https://en.wikipedia.org/wiki/Optical_character_recognition
http://www.abbyy.com/finereader/about-ocr/what-is-ocr/
http://www.webopedia.com/TERM/O/optical_character_recognition.html
Acknowledgement
It gives me a great pleasure to Submit Project-Seminar report. This is the only
page where I have the opportunity to express my emotions and gratitude from the bottom
of my heart.
I express my sincere thanks to my guide Prof. N. S. Pinglefor guiding me at
every step in making of this project. She motivated us and boosted my confidence and I
must admit that the work would not have been accomplished without her guidance and
encouragement.
I would like to extend my special thanks to HOD Prof. Vijaya M. Kulkarni and
Principal Dr. J.H. Godihal for spending their valuable time to go through my report and
providing many helpful suggestions. Lastly I would like to thank all the staff member of
electronics department and my friends without whom the project report would not have
been completed.
Final and heartfelt thanks go to my parents.
Ghanshyam Sopan Dusane(BE-A-46)
Kedar Nageshrao Mirajkar(BE-A56)
Vishal Shivaji Jadhav (BE-A-48)
B.E. (Electronics & communication)