openalpr ======== OpenALPR is an open source Automatic License Plate Recognition library written in C++ with bindings in C#, Java, Node.js, Go, and Python. The library analyzes images and video…
openalpr
========
OpenALPR is an open source *Automatic License Plate Recognition* library written in C++ with bindings in C#, Java, Node.js, Go, and Python. The library analyzes images and video streams to identify license plates. The output is the text representation of any license plate characters.
Check out a live online demo here: http://www.openalpr.com/demo-image.html
User Guide
-----------
OpenALPR includes a command line utility. Simply typing "alpr [image file path]" is enough to get started recognizing license plate images.
For example, the following output is created by analyzing this image:

user@linux:~/openalpr$ alpr ./samplecar.png
plate0: top 10 results -- Processing Time = 58.1879ms.
- PE3R2X confidence: 88.9371
- PE32X confidence: 78.1385
- PE3R2 confidence: 77.5444
- PE3R2Y confidence: 76.1448
- P63R2X confidence: 72.9016
- FE3R2X confidence: 72.1147
- PE32 confidence: 66.7458
- PE32Y confidence: 65.3462
- P632X confidence: 62.1031
- P63R2 confidence: 61.5089
Detailed command line usage:
user@linux:~/openalpr$ alpr --help
USAGE:
alpr [-c ] [--config ] [-n ] [--seek
] [-p ] [--clock] [-d] [-j] [--]
[--version] [-h]
Where:
-c , --country
Country code to identify (either us for USA or eu for Europe).
Default=us
--config
Path to the openalpr.conf file
-n , --topn
Max number of possible plate numbers to return. Default=10
--seek
Seek to the specified millisecond in a video file. Default=0
-p , --pattern
Attempt to match the plate number against a plate pattern (e.g., md
for Maryland, ca for California)
--clock
Measure/print the total time to process image and all plates.
Default=off
-d, --detect_region
Attempt to detect the region of the plate image. [Experimental]
Default=off
-j, --json
Output recognition results in JSON format. Default=off
--, --ignore_rest
Ignores the rest of the labeled arguments following this flag.
--version
Displays version information and exits.
-h, --help
Displays usage information and exits.
Image containing license plates
OpenAlpr Command Line Utility
Binaries
----------
Pre-compiled Windows binaries can be downloaded on the releases page
Install OpenALPR on Ubuntu 16.04 with the following commands:
sudo apt-get update && sudo apt-get install -y openalpr openalpr-daemon openalpr-utils libopenalpr-dev
Documentation
---------------
Detailed documentation is available at doc.openalpr.com
Integrating the Library
-----------------------
OpenALPR is written in C++ and has bindings in C#, Python, Node.js, Go, and Java. Please see this guide for examples showing how to run OpenALPR in your application: http://doc.openalpr.com/bindings.html
Compiling
-----------

OpenALPR compiles and runs on Linux, Mac OSX and Windows.
OpenALPR requires the following additional libraries:
- Tesseract OCR v3.0.4 (https://github.com/tesseract-ocr/tesseract)
- OpenCV v2.4.8+ (http://opencv.org/)
After cloning this GitHub repository, you should download and extract Tesseract and OpenCV source code into their own directories. Compile both libraries.
Please follow these detailed compilation guides for your respective operating system:
If all went well, there should be an executable named *alpr* along with *libopenalpr-static.a* and *libopenalpr.so* that can be linked into your project.Docker
------
shell
# Build docker image
docker build -t openalpr https://github.com/openalpr/openalpr.git
# Download test image
wget http://plates.openalpr.com/h786poj.jpg
# Run alpr on image
docker run -it --rm -v $(pwd):/data:ro openalpr -c eu h786poj.jpg
Questions
---------
Please post questions or comments to the Google group list: https://groups.google.com/forum/#!forum/openalpr
Contributions
-------------
Improvements to the OpenALPR library are always welcome. Please review the OpenALPR design description and get started.
Code contributions are not the only way to help out. Do you have a large library of license plate images? If so, please upload your data to the anonymous FTP located at upload.openalpr.com. Do you have time to "tag" plate images in an input image or help in other ways? Please let everyone know by posting a note in the forum.
License
-------
Affero GPLv3
http://www.gnu.org/licenses/agpl-3.0.html
Commercial-friendly licensing available. Contact: [email protected]
-
openalpr
Automatic License Plate Recognition library
C++ ★ 11k 2y agoExplain → -
train-ocr
Input files and scripts necessary to train the license plate OCR
Python ★ 239 6y agoExplain → -
train-detector
Input files and scripts necessary to train the license plate detector.
Python ★ 124 6y agoExplain → -
benchmarks
Benchmark tests supporting the openalpr library
Python ★ 113 8y agoExplain → -
plate_tagger
Utility for tagging license plates in images - used for training
C++ ★ 53 9y agoExplain → -
cloudapi
OpenALPR Cloud API Client Libraries
HTML ★ 48 8y agoExplain → -
plates_br
LP images for brazil
★ 39 7y agoExplain → -
deepstream_jetson
OpenALPR Plug-in for DeepStream on Jetson
C++ ★ 29 7y agoExplain → -
docker
Docker configuration for OpenALPR
Python ★ 19 3y agoExplain → -
openalpr-android ⑂
Android Automatic License Plate Recognition library (http://www.openalpr.com) ported for android
Java ★ 17 10y agoExplain → -
doc
OpenALPR Documentation
Python ★ 13 4y agoExplain → -
webservice
Python webservice for OpenALPR
Python ★ 11 11y agoExplain → -
demovideo
OpenALPR utility to create demonstration videos
Python ★ 11 1y agoExplain → -
mongoose-mit ⑂
Fork of MIT-licensed Mongoose web server
★ 10 12y agoExplain → -
openalpr_hotlist_import
Imports a state law enforcement hotlist to the OpenALPR web server alert lists
Python ★ 10 3y agoExplain → -
imageclipper
Based on https://code.google.com/p/imageclipper/ with enhancements
C ★ 10 12y agoExplain → -
rollingdb
RollingDB Storage Library
C++ ★ 9 5y agoExplain → -
openalpr-windows ⑂
Build OpenALPR on Windows.
C ★ 8 10y agoExplain → -
milestone_plugin
Plugin to interface OpenALPR commercial software with Milestone XProtect
C# ★ 7 3y agoExplain → -
OpenAlprDroidApp ⑂
Reference App demonstrating the use of Open Alpr library
Java ★ 6 11y agoExplain → -
alprstream_sample
Contains sample code for running the commercial AlprStream API
C++ ★ 4 7y agoExplain → -
tesseract ⑂
Tesseract Open Source OCR Engine (main repository)
C++ ★ 4 10y agoExplain → -
gpsupdate
Updates OpenALPR agent with GPS coordinates from a USB/Serial GPS device
Python ★ 4 3y agoExplain → -
plates_in
Indian license plate images
★ 3 10y agoExplain → -
trainHOG ⑂
Example program showing how to train your custom HOG detector using openCV
C++ ★ 2 13y agoExplain → -
alpr_ruby ⑂
Ruby wrapper for OpenALPR Cloud API.
Ruby ★ 2 10y agoExplain → -
speed_benchmark
Test OpenALPR performance on target hardware
Python ★ 1 3y agoExplain → -
simpleini ⑂
Cross-platform C++ library providing a simple API to read and write INI-style configuration files
C++ ★ 1 12y agoExplain → -
breakpad ⑂
Mirror of Google Breakpad project
C++ ★ 1 9y agoExplain → -
agent-failsafe
No description.
Python ★ 1 5y agoExplain → -
openalpr-consulting ⑂
One-off consulting projects for future reference
★ 1 7y agoExplain → -
elsag_import
Import script to process data from Elsag systems
Python ★ 1 3y agoExplain → -
openalpr-droidapp-native ⑂
Native JNI Implementation of OpenAlprDroidApp
C++ ★ 0 11y agoExplain →
No repos match these filters.