Spiral Book
Spiral Book
Submitted by:
Names Registration No
Muhammad Ehtisham Jamil 2019-UKT-006606
Muhammad Taha Khalil 2019-UKT-006607
Class:
BS SE (2019-23)
Supervised by:
Dr. Umair Khadim
i
FINAL APPROVAL
It is certified that we have reviewed the project report prepared for “ANPRS” and
it is our judgment that this project is of sufficient standard to warrant its acceptance by
the University of Kotli Azad Jammu and Kashmir for BS Software Engineering as
a partial fulfilment. This project is submitted by Muhammad Ehtisham Jamil,
registration number 2019-UKT-006606, Muhammad Taha Khalil, registration
number 2019-UKT-006607.
Committee
Supervisor
Mr. Umair Khadim
Lecturer
Department of Software Engineering Sign: _______________________
Faculty of Computing & Engineering
University of Kotli AJK
External Examiner
Chairman
Mr. Umair Khadim
Lecturer
Department of Software Engineering Sign: _______________________
Faculty of Computing & Engineering
University of Kotli AJK
Dean
Prof. Dr. Ghulam Nabi
Faculty of Computing & Engineering Sign: ______________________
University of Kotli AJK
ii
DECLARATION
We declare that this system, neither as a whole nor as a part has been copied
from any other source. It is further declared that we have completed our project entirely
on the basis of our personal effort made under the sincere guidance of our teachers. No
portion of the work presented in this report has been submitted in support of any
application for any other degree or qualification of this or any other university or
institute of learning. If any part of this project and write up is proved to be copied out
or there is any duplication of code, then will be responsible for the consequences.
iii
ABSTRACT
Automatic Number plate detection is an image processing technology that uses a license number
plate for vehicle identification. The objective is to design and implement an efficient vehicle
identification system that identifies the vehicle using the vehicle’s number plate. The system can
be implemented on the entrance of parking lots, toll booths, or any private premises like college,
etc. to keep the records of vehicles. It can be used to allow access to only permitted vehicles inside
the premises. The developed system first captures the image of the vehicle’s front, then detects the
number plate, then reads the number plate and then gets information of the vehicle. The vehicle
number plate is extracted using the image processing of the image. Optical character recognition
(OCR) is used for character recognition. The system is implemented using OpenCV and its
performance is tested on various images and show information for cloud. It is observed that the
developed system successfully detects and recognizes the vehicle number plate.
4
ACKNOWLEDGEMENT
All the praise and glory to Allah, who has blessed us with the courage and knowledgeto
achieve our goal. We can never thank Him enough for His countless blessings upon us. Praise to
Prophet Mohammad (S.A.W), who is and will always be a source of guidance andknowledge
for humanity as a whole.
For us, a mile stone of this nature would never have been possible to achieve without the
support of galaxy of some truly loving and kind people in our life. No words can fully describe
our feelings of respect and gratitude for our affectionate parents, supporting sibling and friends,
whose love, encouragement and prayers invariably buoyed us up. Their concern, love and support
can never be paid back.
We owe a lot of sincere gratitude to our respected supervisor Dr. Umair Khadim, whose
true guidance, positive criticism and sincere encouragement made usto get to our destination. He
became a source of inspiration for us and kept us moving in the right direction towards our goal.
5
PREFACE
This report presents a description of the analysis, design, implementation, of the Automatic
Number Plate Recognition System ANPRS. These chapters include the steps involved in the study
Chapter 1: This chapter contains the introduction of the concerned organization and the project
6
Contents
FINAL APPROVAL ..................................................................................................................................... ii
DECLARATION .............................................................................................................................................. iii
ABSTRACT...................................................................................................................................................... 4
ACKNOWLEDGEMENT ................................................................................................................................... 5
PREFACE ........................................................................................................................................................ 6
Chapter 1 ..................................................................................................................................................... 12
1. Introduction ............................................................................................................................................ 12
1.1 Literature/background studies ......................................................................................................... 12
1.2 Objective ........................................................................................................................................... 13
1.3 Problem Description ......................................................................................................................... 13
1.4 Methodology..................................................................................................................................... 14
1.5 Project Scope .................................................................................................................................... 14
1.6 Feasibility Study ................................................................................................................................ 15
1.7 Solution Application Areas ................................................................................................................ 15
1.8 Tools/Technology .............................................................................................................................. 16
1.9 Expertise of the Team Members....................................................................................................... 16
1.10 Software Process Model ................................................................................................................. 17
1.11 Milestones....................................................................................................................................... 17
Chapter 2 ..................................................................................................................................................... 18
2 SYSTEM REQUIREMENT SPECIFICATION .................................................................................................. 18
2.1 Introduction ...................................................................................................................................... 18
2.1.1 Purpose ...................................................................................................................................... 18
2.1.2 Document Conventions ............................................................................................................. 18
2.1.3 Intended Audience and Reading Suggestions ............................................................................ 18
2.1.4 Product Scope ............................................................................................................................ 19
2.2 Overall Description............................................................................................................................ 19
2.2.1 Product Perspective ................................................................................................................... 19
2.2.2 Product Functions ...................................................................................................................... 19
2.2.3 Operating Environment ............................................................................................................. 20
2.2.4 Design and Implementation Constraints ................................................................................... 20
2.2.5 User Documentation .................................................................................................................. 20
2.2.6 Assumptions and Dependencies ................................................................................................ 20
7
2.3 External Interface Requirements ...................................................................................................... 21
2.3.1 User Interfaces ........................................................................................................................... 21
2.3.2 Hardware Interfaces .................................................................................................................. 21
2.3.3 Software Interfaces .................................................................................................................... 21
2.3.4 Communications Interfaces ....................................................................................................... 21
2.4 System Features ................................................................................................................................ 21
2.4.1 Functional Requirements ........................................................................................................... 22
2.4.2 Other Non-functional Requirements ......................................................................................... 23
Chapter 3 ..................................................................................................................................................... 24
3 SYSTEM DESIGN ....................................................................................................................................... 24
Introduction of Design Document .............................................................................................................. 24
3.1 Design Approach ............................................................................................................................... 24
3.1.1 Class Model ................................................................................................................................ 24
3.2 Object Modelling Technique (OMT).................................................................................................. 24
3.2.1 Interaction Model ...................................................................................................................... 25
3.3 Use Case Diagram ............................................................................................................................. 25
3.4 Entity Relationship Diagram (ERD) .................................................................................................... 28
3.5 Sequence Diagrams........................................................................................................................... 30
3.6 Class Diagram .................................................................................................................................... 31
3.7 Activity Diagram ................................................................................................................................ 33
3.8 Interface Design ................................................................................................................................ 35
3.9 Test Cases.......................................................................................................................................... 37
3.10 Login Test: ....................................................................................................................................... 37
3.11 Registration Test: ............................................................................................................................ 37
3.12 Capturing Image & Display vehicle information Test: .................................................................... 38
Chapter 4 ..................................................................................................................................................... 40
4 SOFTWARE PROJECT MANAGEMENT ...................................................................................................... 40
4.1 Project Management Techniques ..................................................................................................... 40
4.1.1 Work Breakdown Structure for ANPRS ...................................................................................... 40
4.1.2 Gantt Chart................................................................................................................................. 40
4.1.3 Critical Path Method: ................................................................................................................. 41
4.1.4 Activity on Node diagram .......................................................................................................... 41
4.1.5 Critical Path Method .................................................................................................................. 42
8
4.1.6 Paths........................................................................................................................................... 42
4.1.7 Time Period:............................................................................................................................... 42
4.2 Total Cost: ......................................................................................................................................... 43
4.3 Productivity ....................................................................................................................................... 43
Chapter 5 ..................................................................................................................................................... 45
5 PROJECT IMPLEMENTATION .................................................................................................................... 45
5.1 PROGRAMMING LANGUAGE ............................................................................................................ 45
5.2 FRAMEWORK .................................................................................................................................... 45
5.3 SYSTEM REQUIREMENTS................................................................................................................... 45
5.3.1 Hardware Requirements ............................................................................................................ 45
5.3.2 Software Requirements ............................................................................................................. 46
5.4 Implementation ................................................................................................................................ 46
5.4.1 Read in Image, Grayscale and Blur: ........................................................................................... 47
5.4.2 Apply filters and find edges for Localization: ............................................................................. 48
5.4.3 Find Contours and Apply Masks:................................................................................................ 48
5.4.4 Grayscale Image of Number Plate: ............................................................................................ 49
5.5 Render Result: ................................................................................................................................... 49
5.6 Chapter summary.............................................................................................................................. 49
6 References ............................................................................................................................................... 50
9
LIST OF FIGURES
Figure 1:Iterative Waterfall Process Model .............................................................................................. 17
Figure 2:Automatic Number Plate Recognition System ........................................................................... 26
Figure 3:ERD For Automatic Number Plate Recognition System ....................................................... 29
Figure 4:Sequence Diagram for Automatic Number Plate Recognition .............................................. 31
Figure 5:Class Diagram for Automatic number Plate recognition system .......................................... 32
Figure 6: Activity diagram for Login ...................................................................................................... 33
Figure 7: Activity Diagram for ANPRS .................................................................................................. 34
Figure 8: Interface for Login or Sin Up .................................................................................................. 35
Figure 9: Interface for Sin Up.................................................................................................................. 35
Figure 10: Interface for Login ................................................................................................................. 36
Figure 11: Interface for View Details ...................................................................................................... 36
Figure 12:Gantt Chart for ANPRS ......................................................................................................... 41
Figure 13: AON Network Diagram ......................................................................................................... 42
Figure 14: Critical Path Method.............................................................................................................. 42
Figure 15:Read in Image, Grayscale and Blur ....................................................................................... 47
Figure 16:Apply filters and find edges for Localization ........................................................................ 48
Figure 17:Find Contours and Apply Masks ........................................................................................... 48
Figure 18:Grayscale Image of Number Plate ............................................................................................. 49
Figure 19:Render Result .......................................................................................................................... 49
10
LISTS OF TABLES
Table 1: Use Case for Login ........................................................................................................................ 27
Table 2:Use Case for Detection of Number Plate ................................................................................... 27
Table 3: Login Test Table ........................................................................................................................ 37
Table 4: Registration Test Table ............................................................................................................. 37
Table 5: Capturing Image & Display vehicle information Test Table ................................................. 38
Table 6: Work Breakdown Structure for ANPRS ................................................................................. 40
Table 7: Network Table ............................................................................................................................ 41
Table 8:Hardware Requirements ............................................................................................................ 45
Table 9:Software Requirements .............................................................................................................. 46
11
Chapter 1
1. Introduction
This Project is about Automatic number plate recognition (ANPR) System. ANPR is a technology
that automatically reads vehicle registration marks (VRMs), allowing these details to be compared
against database records. An ANPR camera takes an image of a vehicle number plate; the image
is passed to a reader, which locates the VRM and reads the letters and characters so that they can
be identified using Optical Character Recognition (OCR) software. An image of the view of the
number plate and/or overview camera is then saved and checked against the database. ANPR data
comprises “read” data and “hit” data. A read is the capture of the VRM and image of the vehicle
as it passes through the camera view; read data is the term used to describe all the data collected
as vehicles pass through the ANPR reader. A hit is a match to a VRM held within the database
being searched. [1] It is can be applied at number of public places for fulfilling some of the
purposes like traffic safety enforcement, automatic toll text collection and checking the number
plate is Licensed or Fake number plate. ANPR is a technology tool which is used in providing
assistance put enforcement have off the law as well. ANPR algorithms are generally divided in
four steps: Vehicle image capture, Number plate detection, Character segmentation and Character
recognition. [2]
12
new vehicle is detected, the proposed system detects the region of the plate and applies an
algorithm to extract the image of the plate. In authors have used Image binarization process to
convert an image to black and white. In this method, certain threshold is chosen to classify certain
pixels as black and certain pixels as white. The main challenge is the assigning of the threshold
values for an image. In authors have used MATLAB toolbox function that delivers a function
called region props (). It measures a set of properties for each labelled region in the label matrix.
They have used bounding box to measure the properties of the image region. After labelling the
connecting components, the region will be removed from the input image. This is used for
segmentation of characters.
1.2 Objective
Number plate recognition provides immediate benefits for law enforcement, parking agencies,
security teams, government buildings and more. While NPR is used in many different cases, it’s
proven to be effective at deterring crime, analysing and collecting data, and providing agencies
with real-time solutions. We are designing this system specifically for the new proposed high
security number plates which have black boundary across the number plate and also have a uniform
font all across the country.
13
personnel might not be able to retrieve the vehicle number from the moving vehicle because of the
speed of the vehicle. Therefore, there is a need to develop the system as one of the solutions to this
problem. Our Detect and Recognize Vehicle License Plate will detect the license plate from an
image and video. It can also detect in real-time using OpenCV and Python-tesseract. The user will
just need to upload an image or video from their device. [4]
1.4 Methodology
• License Plate Recognition Systems use the concept of optical character recognition to read
the characters on a vehicle license plate.
• In other words, LPR takes the image of a vehicle as the input and outputs the characters
written on its license plate.
• LPR systems can actually be developed without using machine learning. Other concepts
like template matching, feature extraction etc. can be used.
• With machine learning, we can improve the system accuracy by improving the training
process.
• We’re going to use machine learning for the character recognition aspect i.e., map a
character image to its actual character and differentiate between As, Bs etc.
• Thing we need to do is create a virtual environment.
• This makes it easy to manage our project dependencies and packages.
• You can use virulency package to create a virtual environment.
• Some key dependencies of the package are SciPy (for some complex scientific
calculations), NumPy (for n-dimensional arrays manipulations) and matplotlib (for plotting
graphs and displaying images). Another important package is Pillow, a python imaging
library.
15
• Automation
• Accuracy
• Analytics
• Identification
• Cost Efficiency
• Low Footprint
• Scalability
• Security
1.8 Tools/Technology
We need windows 10 operating system, Python latest version with some basic development
tools like OpenCV, TensorFlow, Pytesseract for the project. Pytesseract is a Tesseract-OCR
Engine to read images type and extract the details available in the image. Compatible tools like
Visual Studio Code, Jupyter Lab, MySQL/ Microsoft SQL/ Firebase, Google Collab.
16
1.10 Software Process Model
Software process model is an abstract representation of a software process, which is a set of
activities that leads to the production of a software product. Some of the genericprocess
models are waterfall model, evolutionary development and components-based software
engineering. For this project we will follow iterative waterfall process model,because of clear and
unchanging business requirements as shown in Error! Reference source not found..
1.11 Milestones
Q4 22 Q1 23 Q2 23
ID Task Name Start Finish Duration
Dec Jan Feb Mar Apr May Jun
17
Chapter 2
2 SYSTEM REQUIREMENT SPECIFICATION
2.1 Introduction
This document, Software Requirements Specification (SRS), describes the overall requirements of
the project. It states the scope of the project and details its functional and non-functional
requirements.
2.1.1 Purpose
This Project is about Automatic number plate recognition (ANPR) System. ANPR is a technology
that automatically reads vehicle registration marks (VRMs), These details to be compared against
database records. An ANPR camera takes an image of a vehicle number plate; the image is passed
to a reader, which locates the VRM and reads the letters and characters so that they can be
identified using Optical Character Recognition (OCR) software. Police forces use ANPR for law
enforcement purposes, to check if a vehicle is registered, or to identify vehicles related to traffic
violations.
18
2.1.4 Product Scope
The scope of the Number plate recognition is to automate the existing manual system with the help
of full-fledged computerized equipment and computer software, meeting their requirements, so
that their valuable data / information can be stored longer with easy access and handling of the
same. It can get the details of the vehicle number to reduce the malicious activity of vehicle
transportation. As it is not possible to judge which approach is better, different papers, which are
based on steps mentioned, are surveyed and categorized based on the methodologies in each
approach. For each approach whenever available parameters like speed, accuracy, performance,
image size and platform are reported.
• windows 10 or later
21
2.4.1 Functional Requirements
2.4.1.3 Capture
The image of the vehicle is captured using a high-resolution photographic camera. A better choice
is an Infrared (IR) camera. The camera may be rolled and pitched with respect to the license plates.
2.4.1.4 Pre-process
Pre-processing is the set algorithms applied on the image to enhance the quality. For the present
system pre-processing involves two processes:
• Resize – The image size from the camera might be large and can drive the system slow. It
is to be resized to a feasible aspect ratio.
• Convert Colour Space – Images captured using IR or photographic cameras will be either
in raw format or encoded into some multimedia standards.
22
2.4.1.9 Logout
This module allows user to exit from the system.
23
Chapter 3
3 SYSTEM DESIGN
24
3.2.1 Interaction Model
This model describes the interaction between the objects. Its diagrams are:
25
Plate Recognition System
Login
Register
Capture Image
<< include >>
Character
Recognition
Check Vehcle
Details
<< include >>
Admin
Show Details
Log out
The description of use case login is show in Table 1 that describe that user can login to the system
and will have access. The preconditions are that the user must have to login to the system.
Description, the user enters a username and password to log in to the system for authenticated
entry.
26
Table 1: Use Case for Login
Actor Admin
Description The user enters a username and password to log in to the system
for authenticated entry.
A use case is a written description of how system will perform tasks. It outlines, from a user point
of view, a system’s behaviour as it responds to a request. Preconditions are that identify number,
Images are captured and stored in a repository. Post conditions are that the license plate numbers
are recognized and displayed on the terminal. Descriptions, the user runs the web-based application
and detect the number plate of vehicle. The description of use case Detection of number plate is
shown in Table 2
Actor Admin
27
Pre-condition Identify number, Images are captured and stored in a
repository.
Description The user runs the web-based application and detects the
number plate of vehicle and show results.
When documenting a system or process, looking at the system in multiple ways increases the
understanding of that system. ERD diagrams are commonly used in conjunction with a data flow
28
diagram to display the contents of a data store. They help us to visualize how data is connected in
a general way, and are particularly useful for constructing a relational database. An ER diagram
has three main components: entities, relationships, and attributes connected by lines. The
"Camera" entity represents the physical cameras that are used to capture images of vehicles and
their license plate numbers. It has attributes such as the camera's location and the date and time
when it captured an image. The "Image" entity represents the images captured by the ANPR
cameras. It has attributes such as the image's resolution and file format, as well as a reference to
the camera that captured it. The "Recognition" entity represents the process of recognizing the
license plate number from an image. It has attributes such as the recognized license plate number,
the date and time when recognition took place, and the confidence level of the recognition.
PK id PK camera_id PK image_id
intract captuer
name location image
email date_time
password FK camera_id
associate
Vehicle_Detail Recognition
PK id
PK rec_id
number
number
model
date_time
vehicle_color associate
registartion_date
owner_name
owner_contact
owner_address
A sequence diagram simply depicts interaction between objects in a sequential order i.e., the order
in which these interactions take place. We can also use the terms event diagrams or event scenarios
to refer to a sequence diagram. Sequence diagrams describe how and in what order the objects in
a system function. These diagrams are widely used by businessmen and software developers to
document and understand requirements for new and existing systems.
30
Plate Character vehicle
Admin Camera
Capture_image Frame
localization recognition details
request for
image capture
capture failed
Re capture
convert into
frame
detect n umber
plate extract
num into
character
request f or
vehicle details
31
Admin
Capture_Image Pre_Processing
-ID_No:Int
-Email_Id:String 1 1
-Image_Name -Frames
-User_Name:String
-Password:String Operations 0...1
-cv2.Gaussian_Blur( )
+ LogIn( ) cv2.Image_Capture -cv2.cv1Color( )
+ Register( ) -cv2.Sobel( )
+ LogOut( ) -cv2.Threshold( )
Character_Recognition
0...1
-Segmented_Characters
+ Compare_Images
MSC( )
Vehicle_Detail
-Owner_Name:String
-Vehicle_Reg_Date:Date
0...1 -Vehicle_Type:String
-Vehicle_Number:String
-Vehicle_Model:Stdering
-Address:String
-Contact_Number:String
+ Request_For_Vehicle_Detail( )
+ Show_Vehicle_Detail( )
Camera: responsible for capturing images of vehicles and their license plates.
Image Processing: responsible for processing the captured images, such as by converting them
to grayscale, applying filters, or performing optical character recognition (OCR) to extract the
license plate number.
Database/Vehicle Detail: responsible for storing information about vehicles and their license
plates, such as registration details and owner information.
32
3.7 Activity Diagram
Activity diagrams show the procedural flow of control between two or more class objects while
processing an activity. Activity diagrams can be used to model higher-level business processes at
the business unit level or to model low-level internal class actions. In my experience, activity
diagrams are best used to model higher-level processes, such as how the company is currently
doing business, or how it would like to do business. This is because activity diagrams are "less
technical" in appearance than sequence diagram, and business minded peoples tend to understand
the quickly.
Login
Register
No
Authentication Valid User No
Success
Yes Home
33
Capture image
Process Image
Recognize number
Check vehicle
Details
yes no
34
where the extracted license plate number is passed to the database to check for details of the
vehicle like make, model, year, colour, etc.
35
Figure 10: Interface for Login
36
3.9 Test Cases
Test cases for Login test is shown in Table 3 which indicate the Login of admin or user. Test cases
for Registration Test is shown in Table 4 which register the new user and then login to system.
Test cases for Capturing Image & Display vehicle information Test is shown in Table 5 which
indicate that it captures image convert into character map it with database if match then display
vehicle detail otherwise show message number plate is fake and not recognized.
Comments: The login page has a link that directs users that
are not already registered to the registration
page.
37
Step1 An error message is displayed.
Empty fields in the form
38
Step 3 The input is the image of the plate, we will have
Plate Segmentation to be able to extract the unicharacter images.
The result of this step, being used as input to the
recognition phase, is of great importance.
Segmentation is one of the most important
processes for the automatic identification of
license plates, because any other step is based
on it.
Step 4 Number Plate Recognition is to actually read the
Character Recognition number plate information from the segmented
image.
Step 5 Here we could get the information from the
Get vehicle Information cloud and store it on database.
Step 6 Here we could Display the information from
Display Vehicle information database which is from the cloud.
39
Chapter 4
• Gantt Chart
• Critical Path Method
Level Activity
1 Idea
2 Research Work
3 SRS
4 Design Documentation
5 Progress Presentation
6 Implementation & Testing
40
Q4 22 Q1 23 Q2 23
ID Task Name Start Finish Duration
Dec Jan Feb Mar Apr May Jun
41
Figure 13: AON Network Diagram
4.1.5 Critical Path Method
The Critical path method is that who is the largest of path in the project. The critical path method
for our project is given below Figure 14.
A B C E F = 30 Weeks
42
4.2 Total Cost:
To estimate the effort and cost required to develop the Automatic Number Plate Recognition
(ANPR) system, we can use the Function Points calculated earlier and the following industry
standard assumptions: It takes about 20 person-hours to develop one Function Point (FP) of
software The average cost of one person-hour is $50 Based on these assumptions, we can estimate
the effort and cost required to develop the ANPR system as follows: Effort = Function Points x 20
person-hours per FP = 106 x 20 = 2,120 person-hours Cost = Effort x Cost per person-hour = 2,120
x $50 = $106,000 Therefore, we estimate that the development of the ANPR system would require
approximately 2,120 person-hours of effort and would cost approximately $106,000. To calculate
the cost per Function Point, we can divide the total cost by the total number of Function Points as
follows:
Cost per FP = Total cost / Total Function Points = $106,000 / 106 = $1,000 per FP Therefore, the
estimated cost per Function Point for the ANPR system is $1,000. Note that the actual effort, cost,
and cost per Function Point may vary depending on various factors such as the complexity of the
software, the development tools and environment used, the skills and experience of the developers,
and so on. These estimates are based on industry standard assumptions and are meant to provide a
rough estimate of the effort and cost required to develop the ANPR system.
4.3 Productivity
To calculate productivity for the Automatic Number Plate Recognition (ANPR) system, we need
to first calculate the size of the software in lines of code (LOC) and then divide it by the effort
required to develop the software. The formula for productivity is as follows:
To estimate the size of the software, we can use the Function Points calculated earlier and convert
them to LOC using a conversion factor. The conversion factor can vary depending on the
programming language, development methodology, and other factors. For the purpose of this
calculation, we will use a conversion factor of 50.
Size of the software (in LOC) = Function Points x Conversion factor = 106 x 50 = 5,300
43
Assuming that the ANPR system was developed by a team of 5 developers working for 3 months,
the total effort required would be 5 x 3 x 160 = 2,400 person-hours. Here, we assume that each
developer works for 8 hours a day and 5 days a week, which gives us 160 hours per month.
Therefore, the productivity of the ANPR system can be calculated as follows:
Productivity = Size of the software (in LOC) / Effort (in person-hours) = 5,300 / 2,400 = 2.21 LOC
per person-hour.
This means that on average, each developer was able to produce 2.21 lines of code per hour during
the development of the ANPR system. Note that this is just an estimate and the actual productivity
may vary depending on various factors such as the skills and experience of the developers, the
complexity of the software, the development tools and environment used, and so on.
44
Chapter 5
5 PROJECT IMPLEMENTATION
5.1 PROGRAMMING LANGUAGE
We use Python as a programming language in android studio to do all the necessary tasks and
operations that are required to achieve the proposed solution of our project. We are using VS Code
latest version to develop application. By using this language, we are doing interact with modules
and implement other different modules.
5.2 FRAMEWORK
Python is an elegant and type-safe language that enables developers to build a variety of secure
and robust applications that run on the Python Framework. You can use Python to create windows
client applications, XML web services, distributed components, client server applications,
database applications, and much more Python provides an advanced code editor, convenient user
interface designers, integrated debugger and many other tools to make it easier to develop
application based on the Python Language.
45
5.3.2 Software Requirements
Along with the hardware, used in the system it requires software to make a system as well as to
run a system with the computer hardware. Collection of different types of hardware into a specific
type can form a computer but it cannot execute different process on its own. For efficient and
proper working of any system software must be installed. This software’s may be in the form of
operating system or application software. To make the system one also needs to use software. The
software’s used in the proposed system are the latest versions of them and can give up-to-date and
perfect result of every process in the system. This software comprises operating system and
application software used in the system.
5.4 Implementation
This section of document provides a general overview of coding of our Automatic number Plate
Recognition System, the codes for some important functions are outlined here.
46
5.4.1 Read in Image, Grayscale and Blur:
47
5.4.2 Apply filters and find edges for Localization:
48
5.4.4 Grayscale Image of Number Plate:
49
6 References
[2] “C. I. Patel, "Automatic Number Plate Recognition system (ANPR)," Internation journal of
Computer Application (0975-8887), vol. 69, no. 9, May 2013, p. 33, 2013.”.
[4] “L. Yao, Y. Zhao, J. Fan, M. Liu, j. jiang and Y. Wan, "Research and Application of License
Plate Recognition Technology Based on Deep Learning," Journal of Physics Conference
Series 1237(2):022155, p. 6, June 2019.”.
“Y.-H. P. Chih-Hai Fana, "Vehicle License Plate Recognition System Design," Chung Hua
[5] Journal of Science and Engineering, vol. 7, no. 2009, p. 53.”.
50