All Projects → mahavird → my_deep_anpr

mahavird / my_deep_anpr

Licence: MIT License
License Plate Recognition based on CNN/Deep Learning

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to my deep anpr

image triplet loss
Image similarity using Triplet Loss
Stars: ✭ 76 (+35.71%)
Mutual labels:  cnn-tensorflow
ALPR System
Automatic License Plate Recognition System for Vietnamese Plates
Stars: ✭ 71 (+26.79%)
Mutual labels:  license-plate-recognition
ConvALPR
Reconocedor Automatico (real-time) de Patentes utilizando Redes Neuronales Convolucionales
Stars: ✭ 15 (-73.21%)
Mutual labels:  license-plate-recognition
open-lpr
Open Source and Free License Plate Recognition Software
Stars: ✭ 74 (+32.14%)
Mutual labels:  license-plate-recognition
vrpdr
Deep Learning Applied To Vehicle Registration Plate Detection and Recognition in PyTorch.
Stars: ✭ 36 (-35.71%)
Mutual labels:  license-plate-recognition
Vehicle-Number-Plate-Reading
Read Vehicle Number Plate and store the data in a CSV file with date and time.
Stars: ✭ 47 (-16.07%)
Mutual labels:  license-plate-recognition
cnn-ocr-lp
OCR implementado con solo Redes Convolucionales (CNN) de Patentes Argentinas
Stars: ✭ 22 (-60.71%)
Mutual labels:  license-plate-recognition
deep-license-plate-recognition
Automatic License Plate Recognition (ALPR) or Automatic Number Plate Recognition (ANPR) software that works with any camera.
Stars: ✭ 309 (+451.79%)
Mutual labels:  license-plate-recognition
alpr utils
ALPR model in unconstrained scenarios for Chinese license plates
Stars: ✭ 158 (+182.14%)
Mutual labels:  license-plate-recognition
license-plate-detect-recoginition-pytorch
深度学习车牌检测与识别,检测结果包含车牌矩形框和4个角点,基于pytorch框架运行
Stars: ✭ 77 (+37.5%)
Mutual labels:  license-plate-recognition
Udacity-CarND-Vehicle-Detection-and-Tracking
Term 1, Project 5 - Udacity Self Driving Car Nanodegree
Stars: ✭ 20 (-64.29%)
Mutual labels:  sliding-windows

My Deep ANPR

The work is based on Matthew Earl's repository.
Do follow his blog post to get an overview how he designed the sysytem.

Here we are using CNN based sliding window approach to build an automatic number plate recognition system.The system performs well on standard number plates used in countries like UK but fails to achieve decent results on Indian Number plates.

Another shortcoming with this model is that , the model has been designed based on the assumption of all the number plates having 10 digits (7 digits in Matt Earls), which leads to error for recognition of number plates which don't have 10 digits.

Following is a result of the model on an Indian Number Plate: alt text

Note: This is an experimental project and is incomplete in a number of ways, if you're looking for a practical number plate recognition system this project is not for you. If however you've read the above blog post and wish to tinker with the code, read on. If you're really keen you can tackle some of the enhancements on the Issues page to help make this project more practical. Please comment on the relevant issue if you plan on making an enhancement and we can talk through the potential solution.

Usage is as follows:

  1. ./extractbgs.py SUN397.tar.gz: Extract ~3GB of background images from the SUN database into bgs/. (bgs/ must not already exist.) The tar file (36GB) can be downloaded here. This step may take a while as it will extract 108,634 images.

  2. ./gen.py 1000: Generate 1000 test set images in test/. (test/ must not already exist.) This step requires UKNumberPlate.ttf to be in the fonts/ directory, which can be downloaded here.

  3. ./train.py: Train the model. A GPU is recommended for this step. It will take around 100,000 batches to converge. When you're satisfied that the network has learned enough press Ctrl+C and the process will write the weights to weights.npz and return. (Google Drive link for the weights.npz)

  4. ./detect.py in.jpg weights.npz out.jpg: Detect number plates in an image.

The project has the following dependencies:

  • Using a python virtual environment is recommended.
  • Code is based on python3
  • TensorFlow (TF Version 1.0.1, cuda 8.0, cudnn 5.0)
  • OpenCV (Easy install: pip install opencv-python)
  • NumPy

If you directly want to see the results on a 10 digit license plate,do following:

  1. git clone https://github.com/mahavird/my_deep_anpr.git

  2. To download the weights.npz use following command:
    python gdrivedownload.py 1ZArKaR2HfY_319A7WUAVRSU7KO8E5klE /home/mahavircingular/my_deep_anpr/weights.npz

Replace the destination folder with your destination folder(In my case it is /home/mahavircingular/my_deep_anpr/weights.npz )

Finally see the output in out.jpg
3. python detect.py in.jpg weights.npz out.jpg

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].