My blog has moved!

You will be automatically redirected to the new address. If that does not occur, visit
http://ashokbasnet.com.np
and update your bookmarks.

Friday, April 23, 2010

ANPR(Automatic Number Plate Recognition) Using ALR(Automatic Line Tracking Robot)

It is almost known that the world is nowadays being more dependent in the computer than the human manpower. Today in the developed countries more than 90% of the job is done by automated system and this is due to the accuracy, reliability and versatile nature of the computer. In the developed western countries many big factories, nuclear plants, communication centers all of them are under the control of the computer because that’s not the place where human hand can reach up. To add the further mile for this step we have presented an automated number plate recognition using automatic line tracking robot. The
project is based on image processing technology using popular software MATLAB.
        The ANPR (Automatic Number Plate Recognition) using ALR (Automatic line
Tracking Robot) is a system designed to help in recognition of number plates of vehicles. This system is designed for the purpose of the security and it is a security system. This system is based on the image processing system. This system helps in the functions like detection of the number plates of the vehicles, processing them and using processed data for further processes like storing, allowing vehicle to pass or to reject vehicle. This system also helps to conduct the graphic images of the vehicles which can be further stored in the database in text format reducing size of data to be stored. 


 INTRODUCTION
           Massive integration of information technologies into all aspects of modern life caused demand for processing vehicles as conceptual resources in information systems. Because a standalone information system without any data has no sense, there was also a need to transform information about vehicles between the reality and information systems. This can be achieved by a human agent, or by special intelligent equipment which is be able to recognize vehicles by their number plates in a real environment and reflect it into conceptual resources. Because of this, various recognition techniques have been developed
and number plate recognition systems are today used in various traffic and security applications, 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 vehicle enters an input gate, number plate is automatically recognized and stored in database and black-listed number is not given permission. When a vehicle later exits the place through the gate, number plate is recognized again and paired with the first-one stored in the database and it is taken a count. Automatic number plate recognition systems can be used in access control.
For example, this technology is used in many companies to grant access only to vehicles of authorized personnel.
           In some countries, ANPR systems installed on country borders automatically detect and monitor border crossings. Each vehicle can be registered in a central database and compared to a black list of stolen vehicles. In traffic control, vehicles can be directed to different lanes for a better congestion control in busy urban communications during the rush
hours.
           Automatic Line Tracking Robot (ALR) is used in this project as a vehicle which contains circuitry for moving in a guided track. It will have mechanism to detect the opened and closed door. It also will have capacity to park in the given parking area.

Some diagrams:->

Project Design:



System Block Diagram of the Project


The project was done as final year project at Thapathali Campus, (III/II) with a team effort of 8 members:
  1. Ashok Basnet (062-DCT-407)
  2. Bishnu Parajuli (062-DCT-410)
  3. Ishor Prasad Rijal (062-DCT-416)
  4. Kabindra Kaji Bajracharya (062-DCT-419)
  5. Kiran Karki (062-DCT-420)
  6. Krishna Bahadur Shrestha (062-DCT-421)
  7. Mohan Pandey (062-DCT-422)
  8. Ram Hari Regmi (062-DCT-430)

  -------------------------------------------------------------------------------------------------------------------------------
       The project “ANPR based security system using ALR" was developed as III year II part project of Diploma In Computer Engineering, Thapathali Campus. The project was designed keeping in mind the automation of the number plate detection system for security reason that could replace the current system of manual entry. This project was a success in recording the number plate of a vehicle although it has got it’s own limitation of image processing and other hardware requirements. From this project we learn about image processing and OCR(Optical Character Reader),hardware interface and automatic line tracking robot(ALR). The automatic line tracking robot was developed for the
demonstration of actual system and to have the knowledge of robots. The mechanical parts of the vehicle were designed by Robotics and Automation Club, Thapathali Campus. The basic focus of the project was in the image processing using MATLAB. The MATLAB v7.6 was used as programming tool which provides many features related to image processing. The
parallel port interfacing was done to control the door mechanism for giving entry to the vehicle. This project implements above processes to accomplish a task of “ANPR based Security System with ALR”. Practical implementation of the project range from small use such as keeping record of incoming and outgoing vehicles from the parking area to a vast implementation such as security system. The project was completed within 6 months time period.
ALGORITHMS
System Algorithm
  1. 1.Input image from webcam.
  2. 2.Convert image into binary.
  3. 3.Detect number plate area.
  4. 4.Segmentation.
  5. 5.Number identification.
  6. 6.Save to file in given format
Input Image
  1. 1.Capture image from webcam.
  2. 2.Store the captured image into a image file for further processing.
Convert Image into Binary
    1.Identify the intensity of the image.
    If image intensity = high Reduce intensity Else if intensity = low Increase intensity Else No change.
    2.Convert image into grayscale. 3.Calculate appropriate threshold value for the image. 4.Convert the image into binary image using the calculated threshold.
Detecting Number plate area
    1.Fill small holes including numbers of Number plate so that number plate area will be large to isolate from figure. 2.Determine width and height of the image. 3.Scan each pixel of line counting number of white pixels in the following system,
    If number of ‘white’ pixels < x; pixels become ‘black’ Else; no change If number of ‘white’ pixels > y; pixels become ‘black’ Else; no change The value of x and y may be changed according the image intensity and plate area.
    4. Use the step no. 3 for both horizontal and vertical direction. 5.Check number of possible areas. 6. Logically AND with binary image obtained at “Convert image into binary algorithm. 7.Crop the required area.
Segmentation
    1.Filter the noise level present in the image. 2.Clip the plate area in such a way that only numbers of plate area extracted. 3.Separate each character from the plate.
Number Identification
    1.Create the template file from the stored template images. 2.Resize image obtained from segmentation to the size of template. 3.Compare each character with the templates. 4.Store the best matched character.
Save to file in given format
    1.Open a text file in write mode. 2.Store the character obtained from the number identification process to text file in given format. 3.Close the file.

Download Report and source codes of the project here:-;
  1. Report
  2. Source Codes
  3. Presentation File

Here are some of the snaps of the project :-

Me and frens working to start the ALR(Automatic Line Tracking Robot)

Pic1:- Me and frens working to start the ALR(Automatic Line Tracking Robot).

 

ALR(Automatic Line Tracking Robot)

Pic 2 : ALR(Automatic Line Tracking Robot)

The Door with webcam that captures the number plate of the ALR

Pic 3 : The Door with webcam that captures the number plate of the ALR ( i.e. Vehicles)

BE Industrial Expo Team for the project

Pic:- Our project team at the Industrial Expo 2009

70 comments :

  1. give me full details of ANPR.. using matlab
    send me mail at ajrockdj@gmail.com

    ReplyDelete
    Replies
    1. I have changed the download location to dropbox.. Now you can easily download the reprots, source codes and presentation file for ANPR(Automatic Number Plate Recognition) Using ALR(Automatic Line Tracking Robot).
      If any problem in code... feel free to ask.

      Delete
    2. Hi,
      First of all, its an awesome project. The code for image segmentation that you have used it nice. But i have found a better one here :
      http://webscripts.softpedia.com/script/Image-Galleries/Image-Tools/Image-Segmentation---Extraction-54590.html

      Please tell me how can i replace your code and use this one. Or pls can u just replace the code and giv. Thanks

      Delete
    3. Thanks.
      A detailed explanation in Number Plate extraction is posted here. Hope it helps you. Thanks for the link, will look at that if I get some time and respond to you.
      http://projectsofashok.blogspot.com/2012/02/number-plate-extraction-using-matlab.html

      Delete
    4. @varun,
      You can change the ocr.m file with this one and with little modifications you should be able to get the things done. ocr.m is the main file for extracting the required numbers from the number plate image and the Image Segmentation Extraction should work if kept in ocr.m.

      Delete
  2. what type of filter you are used for character segmentation???
    mail me details @ nachiket_kulkarni7@yahoo.co.in

    ReplyDelete
  3. i want a full program of line following robot using 8051 microcontroller

    ReplyDelete
  4. Can I have the details for ANPR,I am doing a project on the same topic.Kind reference is appreaciated.Thanks you.Kindly email me at deryck_teng@hotmail.com

    ReplyDelete
  5. Hello!

    I have many questions about ANPR using Matlab(simulink)so could you please contact email me at ivan.lazic85@gmail.com

    I'm a student just like you so I need help with it...

    Please response

    ReplyDelete
  6. @Ivan Lazić
    Thanks for your interest in the MATLAB Project. I'll try to contact you as soon as possible through mail and give more detail at this blog post.

    ReplyDelete
  7. hey bro really loved your project i would like to have some more details on your project.. could you provide me with it please... (Credits will be given to your project) Thanks

    vipuae@windowslive.com

    ReplyDelete
  8. @Anonymous
    Thanks for the showing ur interest in the this project. I have made updatge to the post and added the ALgorithms and links for report,source codes and ppt files.. You can have a look at them and u can contact me if u find any problem....

    ReplyDelete
  9. hey buddy.. i am working on same kind of project.. so can u help me with some more detail.. my id is karamathematics@gmail.com

    ReplyDelete
  10. i am interested in this project.
    can u send me the matlab code of number plate recognition only without the tracking system..

    email: gupta.saurabh555@gmail.com

    ReplyDelete
  11. hey bro its really nice project but can anyone mail me this project by using matlab software asap plsss....
    vijay_kumar243@yahoo.com

    ReplyDelete
  12. hi how to run source code of this anpr system.. please give me reply on rahultpawar190@rediffmail.com

    ReplyDelete
  13. sir ,plece give me full details of Automatic Line Tracking Robot (ALR) using matlab
    send me mail at pathumsana@gmail.com
    thanks.........

    ReplyDelete
  14. Hello Dear,
    I am looking ANPR for C# application.
    If you find any help then please email me

    ashutosh.shankar.gupta@gmail.com

    ReplyDelete
  15. Hi Ashok,
    I am very interested to implement your code. I tried a different type of plate. However the plate region is not extracted and segmented as mentioned in pg 9-10. I get a result with some additional numbers and alphabets.Do you what needs to be changed in the code?

    ReplyDelete
  16. Hi Ashok,
    i was trying to implement your code. However the hsmearing() and vsmearing() functions are not included. Could you pls post them too??without that the extraction is nt working
    .
    Thanks alot

    ReplyDelete
  17. hi Ashok,
    Everything butthe report link is'nt working..

    Thank you so much.

    ReplyDelete
  18. @tinu
    Its working here. I have uploaded it to 4shared.... must work....

    ReplyDelete
  19. Can't access 4shared but can you atleast send me the presentation, ANPR code, and report @ Tumusiime.isaac@gmail.com Doing very similar project.

    ReplyDelete
  20. Hi Ashok,
    Must say, quick response from a blogger!

    for the report link, after waiting for 20 secs on 4shared its showing post deleted.
    can u plz mail me the report: tinujoy@in.com

    Thanks for ur patience.

    ReplyDelete
  21. @tinu and @Tzak, I think its problem in 4shared. Although i have mailed u the source, ppt and report. :)

    ReplyDelete
  22. Hi Ashok,
    "All is well"

    Very good report n documentation.
    My very best to you.

    Thank you.

    ReplyDelete
  23. @tinu
    Thanks for the comments. Will try to be better :).

    ReplyDelete
  24. hey ashok i am working on the same project,can u pls mail me source,ppt and report to this email id:
    anil.dobariya090@gmail.com

    ReplyDelete
  25. i need to develop this application in android based mobile phone. Can u help me with it.. please time is very critical... thanq

    ReplyDelete
  26. Very thankful to you......

    ReplyDelete
  27. can i get some inforamation regarding coding of alpr using matlab my email id is manishagrawalmj@gmail.com

    ReplyDelete
  28. i realy love your project. but i want to add text recognition with it..... any help

    {akinstunde@ymail.com}

    ReplyDelete
  29. sir ,
    pls give the source code of extraction and segmentation
    agarwalaman25@gmail.com

    ReplyDelete
  30. Hi Ashok Basnet,
    i have read ur project description. It's very interesting. Right now I'm working with the same project but still have problem with extracting the license plate from the image. In the source code that u uploaded doesn't have the part about extracting plate region, can you please send me via email hehezzzzz@yahoo.com.vn.
    Thank you very much and have a nice day/
    Thomas.

    ReplyDelete
  31. ashok please tell me if i donot do any hardware work and run your code with cctv . it will show correct result or not

    ReplyDelete
  32. hii

    i have term project about license plate detection
    i need your help please

    can you send the report with code
    thh30000@hotmail.com

    best regards

    ReplyDelete
  33. Can't access 4shared pls send me the ANPR code at dhaka_black_buffalo.com Doing very similar project dear. it will be pretty helpful 4 me. thnx dear

    ReplyDelete
  34. Can't access 4shared. plsss send me the ANPR code at dhaka_black_buffalo@yahoo.com Doing very similar project. thnx in advance 4 ur help dear

    ReplyDelete
  35. Hello Ashok,
    To implement this project, does one require the image processing toolbox and neural network toolbox with matlab?

    ReplyDelete
  36. @max
    Ya we need Image Processing Toolbox to implement the project.

    ReplyDelete
  37. I am currently doing the real time car plate & logo recognition system project.Did u had more info about full source code without separate? coz i see inside got many file code. Plz help me! my email is ccoolkai@gmail.com

    ReplyDelete
  38. i am doing a similar project on the same name plate recognition topic . can someone send me the codes to yubrgh09@gmail.com

    ReplyDelete
  39. I dont access sample code.
    Pls sent me thanks.
    ahmetnusret@hotmail.com

    take care.

    ReplyDelete
  40. hey...i am doing this same project but by using C++ language if you could provide some help that would be great mail me on jbisth@gmail.com

    ReplyDelete
  41. Hello Ashok,

    I am working on the same project and i downloaded your source code it. After reviewing it i found that it doesn't have the source code for licence plate extraction. Can u send me the whole source code so that i can get an idea of extraction of licence plate through matlab. please send the code asap to rkgodlyk@gmail.com. I wud be very grateful to you.

    ReplyDelete
    Replies
    1. Hey can u mail me too the full source code 4 d same.. Thnx in advance.
      id: vinitparanoid@gmail.com

      Delete
  42. hello Ashok,

    i am currently working on same project. in your code there is problem about licence plate area extraction so, i request to give me a full project code by mail: hardik.shah021@gmail.com

    ReplyDelete
  43. Hello Ashok,

    My final year project is to develop this number plate recognition software on matlab. I would b really grateful to u if could fwd the source code,ppt and report file to mayank.kishore08@gmail.com.

    plss it is really urgent.

    ReplyDelete
  44. hello ashok

    I just want to have a look at the documentation of licence plate recognition can u pls mail it on fatals13@gmail.com

    ReplyDelete
  45. need your help with this project, can u pls email me: snar0888@gmail.com
    thanks

    ReplyDelete
  46. hello Ashok
    i am doing a project on license plate recognition...can u help me with ocr part coding...monti.gusain@gmail.com

    ReplyDelete
  47. hello sir, i m doing only the simulation level of this project... pls send me the coding for the simulation only with image.... pls send to my mail id.... by bala... balaece21@gmail.com
    thank u....

    ReplyDelete
  48. Tank you dude ... Its really helpful. I am also doing same project in my B.SC. But my problem is I am doing it for Bangladeshi Vehicle. and number plate Here in two row....Please dude Help me...How can i do that..In bangla..How can i make templates

    ReplyDelete
  49. hey...i m working on a project which will distinguish the vehicle type that is 2 wheeler or a 4 wheeler...so can u plz give some idea that will help me to distinguish the type of vehicle

    ReplyDelete
    Replies
    1. The vehicle type detection seems interesting . In my opinion, there can be two ways to accomplish the task:-
      i) Detection of number plate of the vehicle
      Since the number plate system are different for 2 wheelers and 4 wheelers, the detected number plate can be used to check what kind of vehicle is it.

      ii) The area of the vehicle captured.
      When the image of the vehicle is captured from the fixed location, the algorithm can be applied to detect the area being occupied by the vehicle. Obviously, 4 wheels take larger space within image and 2 wheelers take smaller area.

      Will be glad to know if any of these techniques works for you.

      Delete
  50. hey im working on the same project in my semister project kindly send me ur code at zarneel15@hotmail.com

    ReplyDelete
  51. hi ashok
    plz tell me how can create the same project using opencv
    also tell me how many classes identify in this project

    ReplyDelete
  52. sir please give the code for embedded implementation of no plate recognisation project with relative documents from mat file.Also give me the information about how it can be from matlab to a processor .Ie the harware part

    sivaprasadrs2@gmail.com

    ReplyDelete
  53. thank u sir.can u please send your code and images of car you have taken for your project to divyagilly@rediffmail.com

    ReplyDelete
  54. Ashok Basnet can you plz tell me the link to download this project.I am student of image processing.

    ReplyDelete
    Replies
    1. Here you go...
      http://dl.dropbox.com/u/24930699/Projects/My%20Projects/Thapathali%20Campus/ANPR%20Based%20Security%20Sytem%20Using%20ALR/ANPR_Codes.zip

      Delete
  55. This comment has been removed by the author.

    ReplyDelete
  56. Both works(Project idear and implementation, and posting the source code) is an incredible, waise 1 baath ha Indian IT me bahoooth aggay ja chukay ha, par ham Pakistani b aik dafa lag jathay ha, to chez ko sona bana k rak dethay ha,lolz
    any how great job, and hope U ppl vl continue ur struggle,
    Forward with luck !

    ReplyDelete
  57. hi, I am a student working on a similar project. Can you send me you code as well as the algorithms you used? email is bussy168@hotmail.com. Thank you very much

    ReplyDelete
  58. hey i need number plate recognition system. i.e to locate the number plate of vehicles, recognize the characters seperately, convert in to a text and later it has to be displayed.. thanks in advance....

    ReplyDelete
  59. iam working on the same project...and i hav completed upto segmentation of the plate.. now i need coding for recognition of characters..can u pls help me work on this project????????? my email id
    saiveenatempalli@gmail.com

    ReplyDelete
  60. hiii..friends i need a help from u all..i am a final year student,,I just need to recognize a vehicle number plate from an image can any 1 send me a code to my email id plz..ajayholla@gmail.com

    ReplyDelete
  61. i'm working on license plate character recognition using neural network based on matlab itself can yo please send me the complete report and ppt... i want it by tomorrow itself please do send to my email id spoorthig6@gamil.com

    ReplyDelete
  62. hai ashok brother i am doing project like u,,very nice project,,i try to execute ur code but it is not working,, i dont know the reason,,please help me sir,, email:kurushnishanth1@gmail.com

    ReplyDelete