🤗 Hugging Face - Here
📚 Product & Resources - Here
🛟 Help Center - Here
💼 KYC Verification Demo - Here
🙋♀️ Docker Hub - Here
sudo docker pull kbyai/idcard-recognition:latest
sudo docker run -e LICENSE="xxxxx" -p 8082:8080 -p 9002:9000 kbyai/idcard-recognition:latest
This repo demonstrates the server-based recognition capabilities for ID card
, passport
, and driver's license
.
At the core of this project lies the ID Card Recognition SDK
, which has been developed to provide comprehensive support for recognizing ID card
, passport
, and driver's license
from 200+ countries.
Surpported ID Type | Functionalities | Release Type |
---|---|---|
ID Card | Extracting Information(OCR) | Android(Kotlin & Java ) |
Passport | Scanning Barcode | iOS(Swift & Objectiv-C ) |
Driver License | Parsing MRZ | Flutter(Dart ) |
Auto Capturing | Web Front-end(Javascript ) |
|
Scanning QR code | Server-Windows(Python ) |
|
Supporting 200+ Countries' ID Documents | Server-Linux(Python ) |
|
Supporting 130+ Languages | ||
ID Document Detection |
No. | Repository | Release Type |
---|---|---|
1 | ID Card Recognition - Android | Android |
2 | ID Card Recognition - iOS | iOS |
3 | ID Card Recognition - Flutter | Flutter |
4 | ID Auto Capture - React | Web Front-end |
5 | ID Card Recognition - Windows | Server-Windows |
➡️ | ID Card Recognition - Linux | Server-Linux |
You can test the SDK using images here.
https://docs.kby-ai.com/help/product/id-card-sdk
To test the API
, you can use Postman
. Here are the endpoints for testing:
-
Test with an image file: Send a
POST
request tohttp://18.221.33.238:8082/idcard_recognition
. -
Test with a
base64-encoded
image: Send aPOST
request tohttp://18.221.33.238:8082/idcard_recognition_base64
.You can download the
Postman
collection to easily access and use these endpoints. click here
This project uses KBY-AI
's ID card recognition server SDK
, which requires a license per machine.
-
The code below shows how to use the license:
IDCardRecognition-Docker/app.py
Lines 14 to 25 in 9f8138f
-
To request the license, please provide us with the
machine code
obtained from thegetMachineCode
function.
🧙Email:
[email protected]
🧙Telegram:
@kbyai
🧙WhatsApp:
+19092802609
🧙Skype:
live:.cid.66e2522354b1049b
🧙Facebook:
https://www.facebook.com/KBYAI
- CPU: 2 cores or more (Recommended: 2 cores)
- RAM: 4 GB or more (Recommended: 8 GB)
- HDD: 4 GB or more (Recommended: 8 GB)
- OS: Ubuntu 20.04 or later
-
Clone the project:
git clone https://github.com/kby-ai/IDCardRecognition-Docker.git
-
Download the model from
Google Drive
: click herecd IDCardRecognition-Docker wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1fmTUG7a9IoMA8QiXR9A0xf3Cr6D5UkdC' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1fmTUG7a9IoMA8QiXR9A0xf3Cr6D5UkdC" -O data.zip && rm -rf /tmp/cookies.txt unzip data.zip
-
Build the
Docker
image:sudo docker build --pull --rm -f Dockerfile -t kby-ai-idcard:latest .
-
Run the
Docker
container:sudo docker run -v ./license.txt:/root/kby-ai-idcard/license.txt -p 8082:8080 kby-ai-idcard
-
Send us the
machine code
and then we will give you alicense key
.After that, update the
license.txt
file by overwriting the license key that you received. Then, run theDocker
container again. -
To test the
API
, you can usePostman
. Here are the endpoints for testing:Test with an image file: Send a
POST
request tohttp://{xx.xx.xx.xx}:8082/idcard_recognition
.Test with a
base64-encoded
image: Send aPOST
request tohttp://{xx.xx.xx.xx}:8082/idcard_recognition_base64
.You can download the Postman collection to easily access and use these endpoints. click here
-
Setup Gradio Ensure that you have the necessary dependencies installed.
Gradio
requiresPython 3.6
or above.You can install Gradio using pip by running the following command:
pip install gradio
-
Run the demo Run it using the following command:
cd gradio python demo.py
-
You can test within the following
URL
:
http://127.0.0.1:9000
-
Step One
First, obtain the
machine code
for activation and request a license based on themachine code
.machineCode = getMachineCode() print("machineCode: ", machineCode.decode('utf-8'))
-
Step Two
Next, activate the
SDK
using the received license.setActivation(license.encode('utf-8'))
If activation is successful, the return value will be
SDK_SUCCESS
. Otherwise, an error value will be returned. -
Step Three
After activation, call the initialization function of the
SDK
.initSDK()
If initialization is successful, the return value will be
SDK_SUCCESS
. Otherwise, an error value will be returned.
-
ID Card Recognition
The SDK provides a single
API
forID card recognition
.The function can be used as follows:
ret = idcardRecognition(base64_image.encode('utf-8'))
The function accepts only one parameter, which should be the
base64-encoded
format of the image (e.g.,JPG
,PNG
, etc.).If the recognition is successful, the function will return a
JSON-formatted
string containing the recognized information. In case of failure, the return value will beNULL
.