Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Tesseract.js | 30,007 | 221 | 125 | 18 hours ago | 50 | September 20, 2022 | 33 | apache-2.0 | JavaScript | |
Pure Javascript OCR for more than 100 Languages 📖🎉🖥 | ||||||||||
Labelimg | 19,434 | 9 | 4 | a month ago | 28 | October 11, 2021 | 418 | mit | Python | |
LabelImg is now part of the Label Studio community. The popular image annotation tool created by Tzutalin is no longer actively being developed, but you can check out Label Studio, the open source data labeling tool for images, text, hypertext, audio, video and time-series data. | ||||||||||
Easyocr | 17,453 | 37 | 2 days ago | 30 | June 02, 2022 | 196 | apache-2.0 | Python | ||
Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc. | ||||||||||
Openface | 14,540 | 5 months ago | 13 | apache-2.0 | Lua | |||||
Face recognition with deep neural networks. | ||||||||||
The Incredible Pytorch | 9,479 | a month ago | 1 | mit | ||||||
The Incredible PyTorch: a curated list of tutorials, papers, projects, communities and more relating to PyTorch. | ||||||||||
Computervision Recipes | 8,817 | 2 months ago | 65 | mit | Jupyter Notebook | |||||
Best Practices, code samples, and documentation for Computer Vision. | ||||||||||
Jetson Inference | 6,243 | 2 days ago | 938 | mit | C++ | |||||
Hello AI World guide to deploying deep-learning inference networks and deep vision primitives with TensorRT and NVIDIA Jetson. | ||||||||||
Asrt_speechrecognition | 6,236 | a month ago | 1 | October 23, 2020 | 94 | gpl-3.0 | Python | |||
A Deep-Learning-Based Chinese Speech Recognition System 基于深度学习的中文语音识别系统 | ||||||||||
Deepface | 5,875 | 3 | 5 days ago | 74 | May 10, 2022 | 6 | mit | Python | ||
A Lightweight Face Recognition and Facial Attribute Analysis (Age, Gender, Emotion and Race) Library for Python | ||||||||||
Mvision | 5,784 | 2 years ago | 14 | C++ | ||||||
机器人视觉 移动机器人 VS-SLAM ORB-SLAM2 深度学习目标检测 yolov3 行为检测 opencv PCL 机器学习 无人驾驶 |
Repository | Last commit | Docker CI Health | Docker pulls |
---|---|---|---|
FTP | |||
Plate Detection | |||
OCR | |||
REST | |||
NodeRed |
Please note the demo server is deliberately kept underpowered to prevent abuse. In case your request times out the server may just be too busy with other requests. You can always try running OpenLPR locally as described below.
Free forever & Open Source License Plate Recognition software which uses deep neural networks to detect license plates and perform OCR.
Following image illustrates a dashboard built using nodered that shows real time LPR results. NodeRED can be used to build RESTful services, integrate with other systems such as over modbus to extend the business functionality of the system with ease.
In the above example it can be see that LPR was performed on the image uploaded through FTP and text 349253 was extracted successfully from the license plate area.
An abundance of information such as bounding boxes, confidence scores etc are available in the raw JSON data published by the services and available to NodeRED and any other integrating service for consumption.
For the above example, the following detail is available in db and also published on the message broker (RabbitMQ) and is as well available in NodeRED for further processing, furthermore this detail is also returned as JSON when using the REST (described further below) interface
{
"_id" : "522676bf-c958-49cb-b786-32b3d0407c02",
"filename" : "jeep.jpg",
"creationtime" : 1645719472.51666,
"unique_name" : "522676bf-c958-49cb-b786-32b3d0407c02_jeep.jpg",
"detections" : {
"boxes" : [
[
348,
400,
740,
546
]
],
"scores" : [
0.998433649539948
],
"classes" : [
2
]
},
"imgDimensions" : {
"height" : 1281,
"width" : 720,
"channels" : "RGB"
},
"ocr" : [
[
"349253",
0.996076437906518
]
]
}
The following instrctions assume you are running a linux flavor such as debian, ubuntu or popos!
Goto https://www.docker.com/get-started and install the distribution relevant to your operating system. Consider using a convenience script to fast track the installation. Also install docker-compose.
This step will take a few minutes depending on your internet connection speed. Use "bash" shell to issue the following commands
git clone https://github.com/faisalthaheem/open-lpr && \
cd open-lpr && \
docker-compose up -d
Important Images are updated frequently, therefore to ensure you are running the latest version consider using watchtower.
Use google chrome to navigate to the following address http://localhost:5000/
Use any FTP client, for example, FileZilla to connect to your localhost on port 2121 with the username and password user/12345 and upload any car image with readable license plate.
The dashboard at http://localhost:1890/show-dashboard will update to reflect the detected plate and OCR text like in the image above.
You can use the REST interface to submit an image for processing. Once services have started a command similar to following can be used from the shell to try it out; you can ofcourse use the REST interface with any programming language.
curl \
-F "filecomment=Sample file" \
-F "[email protected]/path/to/image.jpg" \
localhost:5000/process
In the above command [email protected]/path/to/image.jpg
points to the file that is to be submitted for processing, and localhost:5000 represents where the OpenLPR services are running.
The returned response is JSON as given in the example above
Please follow instructions given in the following repo OpenLPR Pre-trained models
Head over to the wiki for documentation.
Dated | Description |
---|---|
Feb 2022 | Added arm64 support to all containers except OCR and detection. |
Feb 2022 | Added REST interface. |
Feb 2022 | Ported stack to torch. Removed plate classification. |
Feb 2022 | Completed documentation. |
Jan 2021 | Ported to tensorflow 2 with compatibility mode for tensorflow 1. |
Open LPR is a distributed system aimed towards ease of management and high LPR throughput. The core consists of modules to perform the tasks of plate detection, classification and OCR.
Ground up the system is built to be scalable and can handle the load of a single site to a city wide area.
The entire stack is built on top of docker containers and is available in cpu only and gpu supported runtimes. Tensorflow, Keras and OpenCV are used amongst other libraries to deliver the service.