AUTOMATIC CAR LICENSE PLATE RECOGNITION SYSTEM (CLPR) RABI’ATUL ADAWIYAH BINTI MUSTAFA This thesis is submitted as partial

fulfillment of the requirements for the award of the Bachelor of Electrical Engineering (Hons.) (Electronics) Faculty of Electrical & Electronics Engineering Universiti Malaysia Pahang OCTOBER,2008“All the trademark and copyrights use herein are property of their respective owner. References of information from other sources are quoted accordingly; otherwise the information presented in this report is solely work of the author.” Signature : ____________________________ Author : RABI’ATUL ADAWIYAH BINTI MUSTAFA Date : 28 OCTOBER 2008“I hereby acknowledge that the scope and quality of this thesis is qualified for the award of the Bachelor Degree of Electrical Engineering (Electronics)” Signature : ______________________________________________ Name : REZA EZUAN BIN SAMIN Date : 20 APRIL 2008To my belove mother and father, Mr.Mustafa Bin Sulaiman Mrs. Selamah Binti Yaakob Thank you for supporting me all the timeAKNOWLEDGEMENT First of all I am grateful to ALLAH S.W.T for blessing and giving me enough courage in completing my final year project (PSM). Secondly I would like to thank my family for giving morale support and encouragement in completing my project and also throughout my study in UMP as they are my inspiration to success. Unforgettable, I want to give a special gratitude to my

The system is an online system where the image will automatically extracted once after the image is .supervisor En. He has been very helpful to me in finishing my project and I appreciate every advice that he gave me in correcting my mistakes. This system is implementing by using MATLAB7. The development of automatic car license plate recognition system will resulted greater efficiency for vehicle monitoring system. Car plate recognition systems are used commercially.ABSTRACT The growth of technologies requested higher performance tools in order to fulfill human needs and market.1 Image Processing Toolbox. This system is implemented to make human work easier besides can reduce the uses of human power and because of its potential application. both in overseas and locally. Last but not lest I want to thank all my friends that have gave me advice and encouragement in completing my project. The credit also goes to all lecturers and everyone who willing to share their knowledge. This means that the system is unable to detect special types of car plates. I apologize to my supervisor for any mistakes and things that I done wrong while finishing my project. however the usage of car plate recognition system is restricted to the ordinary car plates. Therefore. this system is aimed for implementation of a recognition system for special Malaysian car plates. Thank you very much to all and May ALLAH bless you. Reza Ezuan Bin Samin for guiding and supervising my final year project throughout these two semesters. which uses optical character recognition on images to read the license plates on vehicles. cooperation and guide that is related to my project. In Malaysia.

the image is compliment so that the black plate background becomes white while the white plate number becomes black because the system can only detect binary image where the background should be white while the plate number should be black.ABSTRAK Perkembangan teknologi yang pesat mendorong kepada keperluan peralatan berpotensi tinggi bagi memenuhi permintaan manusia dan pasaran. Sistem ini digunakan secara komersial sama ada di dalam mahupun diluar negara.captured by webcam using image processing technique. sistem tersebut tidak dapat menegcam plat kereta yang menggunakan perkataan khas. Ini bermakna. Sistem ini dibangunkan untuk kemudahan manusia disamping dapat mengurangkan kepada penggunaan tenaga manusia memandangkan ia berpotensi untuk dipelbagaikan aplikasinya. Untuk mengenalpasti nombor plat kereta. Pertama sekali. imej yang diambil tadi akan ditukar kepada imej binari kemudian ia akan dipotong supaya hanya nombor plat kereta sahaja yang tinggal dan . First. program pemprosesan imej dibuat dengan menggunakan perisian MATLAB. the image is converted into a binary image and then the chosen area will be cropped so that only the plate number is left . Sistem ini merupakan sistem online dimana imej plat kereta secara automatik akan diekstrak atau diproses sebaik sahaja gambar kereta diambil. Dengan adanya sistem pengecaman plat kereta ini dapat meningkatkan kecekapan system pengawasan kereta. One of the important step is the integration between image processing and Graphical User Interface (GUI) where. sistem ini dibangunkan khas untuk mengenal pasti nombor plat kereta Malaysia. Pada dasarnya.Next. Walaubagaimanpun. di Malaysia penggunaan sistem ini terhad kepada pengecaman plat kereta biasa. the output of this project will displayed using GUI.

2 What is Neural Network 1. Kaedah ini penting kerana proses mengenal pasti nombor plat kereta akan menjadi lebih mudah dengan menggunakan imej binari.1. Nombor kereta yang telah dikenalpasti itu akan dipaparkan di skrin khas yang dikenal sebagai GUI.1 What is Digital Image Processing 1.1.TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK TABLE OF CONTENT LIST OF TABLE LIST OF FIGURE LIST OF APPENDICES 1 INTRODUCTION 1.2 Problem Statements 1.1 Background 1 1 1 xii xiii xv vi vii viii v ii iv 1.3 Project Objectives 1. Kemudian warna imej tersebut akan disongsangkan dimana warna hitam latar belakang plat kereta tersebut bertukar menjadi warna putih manakala nombor plat kereta tersebut akan bertukar menjadi warna hitam.4 Project Scopes 1.akan melalui proses yang seterusnya.5 Thesis Outline 4 4 3 2 52 LITERATURE REVIEW 6 .

2 License Plate Quantization 3.6 Character Recognition 25 25 25 3.4.3 Implementation 2.6.3 Digital Image Processing 2.4.4 Image Processing Technique 3.2 Multilayer Perceptron 10 10 12 13 14 2.3 Image Acquisition System 3.4 Verification 15 2.6.4.1 Introduction 3.3 Training Multilayer Perceptron 2.1 Converting Image 26 .4 Digit Filtering 24 243.7 Optical Character Recognition 3 METHODOLOGY 3.2.4.1 License Plate Cropping 3.5 Graphical User Interface 2.3.1 Introduction 2.6.6 Waterfall Methodology 2.3.4 Neural Network Technology 7 8 9 2.3.6.4 Neural Network Architecture 2.3.3.1 Gathering Data for Neural Network 2.2 MATLAB 7 6 2.1 Requirement 2.2 Design 15 15 14 2.3.5 Character Segmentation 3.2 System Design 18 18 19 23 23 15 3.3 Plate Deformation 24 3.4.

6 Discussion 47 49 45 5 CONCLUSION AND RECOMMENDATIONS 5.1 Introduction 34 4.6 Graphical User Interface 4 RESULT AND ANALYSIS 4.2 Image Processing Technique 4.2.5 Software and Hardware Integration 3.4.6 Threshold 28 27 27 27 26 3.1 Introduction 49 49 5.5 Dilation Method 3.2.2 Hardware Items 29 29 30 34 28 3.2.4 Erosion Method 3.3 Result of Optical Character Recognition 4.2.1 Result of Captured Image 4.2.5 Threshold Function 42 43 44 41 4.4.4.4 Graphical User interface (GUI) Representation 4.4 Opening Function 404.5.5.5 Training Result 4.2.4.3.2 Convert RGB Image to Grayscale Image 4.6 Imcomplement Function 4.1 Software Items 3.2 Future Recommendation 5.2 Crop the Region Of Interest (ROI) 3.3 Conclusion 50 .3 Morphology 3.4.3 Image Crop 39 38 36 36 4.

3 Image under lighting 23 22 3.1 OCR Software 3.1 Parking entry prototype 4.1 Software Items 3.1 Three layer feed Forward Neural Network 11 12 8 17 29 29 46LIST OF FIGURES 2.1 Block diagram of CLPR system 3.3 Square mean error (SME) training process 2.6 GUI GUIDE quick start 3.5 Waterfall methodology 3.2 Flowchart of CLPR system 3.REFERENCES 51-52 Appendix A: Gantt chart PSM 1 Appendix B: Gantt chart PSM 11 Appendix C: CLPR system coding Appendix D: CLPR system with GUI codingLIST OF TABLES TABLE NO TITLE PAGE 2.2 Car plate samples 35 .2 Neural Network training model 2.5 Guide command window 3.2 Hardware Items 4.4 ADALINE network 13 14 20 2.1 Training Results FIGURE NO TITLE PAGE 2.7 GUI design screen 32 33 34 31 31 30 3.4 MATLAB command window 3.8 GUI with activation devices 4.

1 Background 60CHAPTER 1 This chapter explains what is Image Processing and Neural network that is used to develop the ‘Automatic Car Plate Recognition System Using Neural .10 MATLAB opening function 4.7 The grayscale image 38 39 4.13 Thresholding image 4.4 MATLAB function to capture image 4.4.9 Crop image 39 4.18 Exit option window APPENDIX TITLE PAGE A Gantt Chart PSM 1 B Gantt Chart PSM 11 C CLPR System Coding 53 55 57 41 42 42 43 44 45LIST OF APPENDICES D CLPR System with GUI Coding INTRODUCTION 1.5 Image captured using webcam 4.8 MATLAB function for crop image 4.17 Graphical user interface 4.12 MATLAB threshold function 4.14 Imcomplemen function 4.3 Info for webcam 36 37 4.6 37 MATLAB function to convert RGB 38 image to grayscale image 4.11 Opening image 40 41 40 4.15 Imcomplement image 4.16 Alphabets scanned image 4.

Both elements can be found in MATLAB Toolbox. There are five basic types of images supported by Matlab. An image is stored as a matrix using standard Matlab matrix conventions.y) is called the intensity or gray level of the image at that point. In particular. RGB images and 8-bit images The field of digital image processing refers to processing digital images by means of a digital computer. and hence can offer both more sophisticated performance at simple tasks. we call the image digital image.1 What is Digital Image Processing An image can be defined as two-dimensional function f(x. All this elements are essential parts as a guide to develop the car plate recognition system.y). A digital image is composed of a finite number of elements.Network’.y and the amplitude values of f are all finite. digital image processing is the only practical technology for: [2] · Classification · Feature extraction · Pattern recognition · Projection · Multi-scale signal analysis . objective of project. where x and y are spatial (plane) coordinates and the amplitude of f at any pair of coordinates (x. and the implementation of methods which would be impossible by analog means. each of which has a particular location and value. Binary images. image elements and pixels.1. When x. 1. These elements are referred to as picture elements.[1] Digital image processing allows the use of much more complex algorithms for image processing. This chapter also explains the problem statements of the system. discrete quantities. project scope and thesis outline. Intensity images. Pixels is the term most widely used to denote the elements of a digital image. Indexed images.

which are composed of artificial neurons or nodes. In most cases an ANN is an adaptive system that changes its structure based on external or internal information that flows through the network. In more practical terms neural networks are non-linear statistical data modeling or decision making tools. In the other side. determined by the connections between the processing elements and element parameters.Some techniques which are used in digital image processing include: · Principal components analysis · Independent component analysis · Self-organizing maps · Hidden Markov models · Neural networks 1. An artificial neural network (ANN). Artificial neural networks may either be used to gain an understanding of biological neural networks.2 What is Neural Network Term neural network had been used to refer to a network or circuit of biological neurons. In a neural network model simple nodes. An artificial neural network involves a network of simple processing elements (artificial neurons) which can exhibit complex global behavior. Artificial neural networks are made up of interconnecting artificial neurons (programming constructs that mimic the properties of biological neurons). are connected together to form a network of nodes — hence the term "neural network".1. or for solving artificial intelligence problems without necessarily creating a model of a real biological system. which can be called variously "neurons". neural network refers to artificial neural networks. They can be used to model complex relationships between inputs and outputs or to find patterns in data. is an interconnected group of artificial neurons that uses a mathematical or computational model for information processing based on a connection approach to computation. Its practical use comes with algorithms designed to alter the .

For implementing CLPR system we have use MATLAB Toolbox to achieve the objectives of the project. problem statement. Extract the data from the car plate image by using digital image processing toolbox. Recognize the image of the car license plate by using neural network technique.5 Thesis Outline Chapter 1 Explain the background of image processing and neural Network. Chapter 2 focuses on the project and literature review about the project that is used . 4. Thus. using a feed-forward network with 3 layers.1. the system can automatically display the status of the car which it will compare between the car plate numbers recognized with the database from JPJ. To integrate hardware and software. human is needed to observe and list the user car plate number manually.3 Project Objectives 1. the focuses of this project are as below 1. objectives of the projects and project scopes all about. To implement the system in order to recognize the car license plate. Previously. 2.4 Project Scopes This project is to develop a car plate recognition system by using neural network (CLPR). Besides that.[3] 1.1.2 Problem Statement Automatic car license plate recognition (CLPR) system is implemented to help the human to automatically detect plate number without human supervision. Integrate between Image Processing and Neural Network 1. Develop a car license plate recognition system using Image Processing Toolbox and Neural Network Toolbox 2. So this project is developing to replace human to monitor the car and automatically capture the image.strength (weights) of the connections in the network to produce a desired signal flow. 3. So we can know either the car is in JPJ observation or not.

In addition. such as entering restricted area without permission . [4] License plate recognition (LPR) is a new tool for automatic vehicle and traffic monitoring by using digital image processing. The LPR system can be used to traffic control management for recognize vehicles that commit traffic violation. Chapters 5 discuss the conclusion of development of the whole CLPR system. .as references that helps me in order to finishing my final year project. Chapters 3 explain and discuss details about digital image processing process and neural network process. All the discussions are concentrating on the results and overall performance of Car Plate Recognition (CLPR) system. but distinguishes each as unique. For implementing LPR system we have used digital image processing technique and artificial neural network. crossing red light. like commercial vehicle operations or secure-access control. such as electronic toll collection and red-light violation enforcement. a vehicle's license plate is checked against a database of acceptable ones to determine whether a truck can bypass a weigh station or a car can enter a gated community or parking lot. This chapter also discusses the problem and the recommendation for this project and the overall CLPR system for the future development or modification. For some applications.CHAPTER 2 LITERATURE REVIEW 2. occupying lanes reserved for public transport. this chapter discusses detail about the method used for this project and some mathematical algorithm applied in the project. Chapter 4 this chapter will discuss about all result obtained from the system and the limitation of the project.1 Introduction License plate identification/recognition (LPI/R) is one form of ITS technology that not only recognizes and counts vehicles. In others. LPI/R records a license plates alphanumeric so the vehicle owner can be assessed the appropriate toll or fine.

in the Command Window. Single frame gray-level images are used as the only source of information. The approach concerns stages of preprocessing. sometimes called M-code or simply M. The purpose for which this system is implemented real time applications. Image Processing Toolbox and Neural Network Toolbox are used to implement the system. slope evaluation. Although it is numeric only. etc.[5] 2.3 Digital Image Processing The paper represents the automatic plate localization component of a Car License Plate Recognition system. and character segmentation and recognition. [8] . Created by The MathWorks. one of the elements of the MATLAB Desktop. MATLAB can be used as an interactive mathematical shell. creation of user interfaces. edge detection. extending the commands available.breaking speed limits . an optional toolbox interfaces with the Maple symbolic engine. this system is using advance and new techniques of digital image processing such as pattern recognition for recognize characters of license plate and artificial neural network to extract the data.2 MATLAB MATLAB is a numerical computing environment and programming language. as a script or encapsulated into a function. plotting of functions and data. The simplest way to execute M-code is to type it in at the prompt. [7] 2. and interfacing with programs in other languages. In this way. filtering. typically using the MATLAB Editor. [6] MATLAB is built around the MATLAB language. allowing access to computer algebra capabilities. MATLAB allows easy matrix manipulation. This project could be successfully implementing an initial program to recognize car plate using MATLAB. detection of the plate's position. implementation of algorithms. >> . Sequences of commands can be saved in a text file.

Again. When the network is executed (used). [9] 2. The activation value is passed through the activation function to produce the output of .1: Three layer feed –forward Neural NetworkNeural networks are data analysis methods and algorithms. Character segmentation – finds the individual characters on the plates The complexity of each of these subsections of the program determines the accuracy of the system. Plate localisation – responsible for finding and isolating the plate on the picture 2. The hidden and output layer neurons are each connected to all of the units in the preceding layer. During the third phase (normalisation) some systems use edge detection techniques to increase the picture difference between the letters and the plate backing.There are four primary algorithms that the software requires for identifying a license plate: 1. Each of them calculates its activation value by taking the weighted sum of the outputs of the units in the preceding layer. A typical feed forward network has neurons arranged in a distinct layered topology. and then the hidden and output layer units are progressively executed. the input variable values are placed in the input units. however. it is possible to define networks that are partially-connected to only some units in the preceding layer. indirectly based on the nervous systems of humans and animals. for most applications fully-connected networks are better. Plate orientation and sizing – compensates for the skew of the plate and adjusts the dimensions to the required size 3. Normalisation – adjusts the brightness and contrast of the image 4. and subtracting the threshold.4 Neural Network Technology Figure 2. A median filter may also be used to reduce the visual "noise" on the image. The input layer is not really neural at all: these units simply serve to introduce the values of the input variables.

and how many (and which) cases to gather. The training data set includes a number of cases. Numeric data is scaled into an appropriate range for the network. we will need to gather data for training purposes.[11] Neural networks process numeric data in a fairly limited range.4.[10] 2. if there is missing data. Fortunately. or if data is non-numeric. and missing . each containing values for a range of input and output variables. The first decisions you will need to make are: which variables to use. there are methods to deal with each of these problems. This presents a problem if data is in an unusual range. When the entire network has been executed.1 Gathering Data for Neural Networks Once we have decided on a problem to solve using neural networks. the outputs of the output layer act as the output of the entire network.the neuron.

Sign up to vote on this title
UsefulNot useful