Hướng dẫn
FPT.AI Reader - Nhận diện CMT/CCCD
Hướng dẫn sử dụng API
Authentication
Để authorize, có thể dùng code như sau:
import requests
API_ENDPOINT = "https://api.fpt.ai/vision/idr/vnm"
auth = {'api_key': 'xxxxxxx'}
r = requests.post(API_ENDPOINT, files=/path/to/image/file, headers=auth)
# Truyền api_key vào header với cURL command
curl -X POST
https://api.fpt.ai/vision/idr/vnm
-H "api_key: xxxxxxx"
Thay cụm "xxxxxxx" bằng API key đã tạo.
Hiện tại hệ thống đã được hết nối với FPT Gateways, do đó đế có thể sử dụng, khách hàng cần tạo 1 account trên Console và sau đó tạo một API key để có thể gửi request tới gateway (mặc định mỗi API key tạo mới chỉ có thể gửi 50 requests).
API key cần phải được nhúng trong header của tất cả API requests như dưới đây:
api_key: xxxxxxx
Nhận dạng CMT/CCCD từ file image form-data
import requests
API_ENDPOINT = "https://api.fpt.ai/vision/idr/vnm"
auth = {'api_key': 'xxxxxxx'}
file = {'image': open(/path/to/image/file, 'rb')}
r = requests.post(API_ENDPOINT, files=file, headers=auth)
# Truyền api_key vào header với cURL command
curl -X POST
https://api.fpt.ai/vision/idr/vnm
-H "api_key: xxxxxxx"
-F image=@/path/to/image/file
Thay cụm "xxxxxxx" bằng API key đã tạo.
Đây là phương pháp sử dụng hệ thống bằng cách gửi ảnh CMT dạng form-data tới API endpoint. Khách hàng cần đặt key image cho file ảnh trong body của request.
Hướng dẫn gửi request bằng phần mềm POSTMAN như sau:
Header
Body
Nhận dạng CMT/CCCD từ URL
import requests
API_ENDPOINT = "https://api.fpt.ai/vision/idr/vnm"
payload = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data;
name=\"image_url\"\r\n\r\nlink/to/image\r\n
------WebKitFormBoundary7MA4YWxkTrZu0gW--"
auth = {
'content-type': "multipart/form-data;
boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
'api_key': "xxxxxxx"}
response = requests.request("POST", API_ENDPOINT, data=payload, headers=auth)
# Truyền api_key vào header với cURL command
curl -X POST
https://api.fpt.ai/vision/idr/vnm
-H "api_key: xxxxxxx"
-F "image_url=/link/to/image"
Thay cụm "xxxxxxx" bằng API key đã tạo.
Đây là phương pháp sử dụng hệ thống bằng cách gửi một đường link ảnh CMT tới API endpoint. Khách hàng cần đặt key image_url cho đường link trong body của request.
Hướng dẫn gửi request bằng phần mềm POSTMAN như sau:
Body
Nhận dạng CMT/CCCD từ string base64
import requests
API_ENDPOINT = "https://api.fpt.ai/vision/idr/vnm"
payload = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data;
name=\"image_base64\"\r\n\r\nstring/base64/of/image/goes/here\r\n
------WebKitFormBoundary7MA4YWxkTrZu0gW--"
auth = {
'content-type': "multipart/form-data;
boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
'api_key': "xxxxxxx"}
response = requests.request("POST", API_ENDPOINT, data=payload, headers=auth)
# Truyền api_key vào header với cURL command
curl -X POST
https://api.fpt.ai/vision/idr/vnm
-H "api_key: xxxxxxx"
-F "image_base64=/string/base64/of/image"
Thay cụm "xxxxxxx" bằng API key đã tạo.
Đây là phương pháp sử dụng hệ thống bằng cách gửi ảnh CMT dưới dạng string base64 tới API endpoint. Khách hàng cần đặt key image_base64 cho string base64 trong body của request.
Hướng dẫn gửi request bằng phần mềm POSTMAN như sau:
Body
Trích xuất CMT/CCCD và nhận diện khuôn mặt trên ảnh
import requests
API_ENDPOINT = "https://api.fpt.ai/vision/idr/vnm"
payload = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data;
name=\"image\";
filename=\"/path/to/image/file\"\r\nContent-Type:
image/jpeg\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\n
Content-Disposition: form-data;
name=\"face\"\r\n\r\n1\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--"
auth = {
'content-type': "multipart/form-data;
boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
'api_key': "xxxxxxx"}
response = requests.request("POST", API_ENDPOINT, data=payload, headers=auth)
# Truyền api_key vào header với cURL command
curl -X POST
https://api.fpt.ai/vision/idr/vnm
-H "api_key: xxxxxxx"
-F image=@/path/to/image/file
-F face=1
Thay cụm "xxxxxxx" bằng API key đã tạo.
Đây là một chức năng của hệ thống nhằm trích xuất ảnh cropped của CMT và ảnh mặt người có trên CMT dựa vào các thuật toán Object Detection và Face Recognition.
Để sử dụng chức năng này, ngoài các key thông thường như image, image_url và image_base64 như mô tả ở trên, khách hàng cần đặt thêm key face với giá trị bằng 1 trong body của request.
Sau khi gửi request thành công, trong kết quả trả về sẽ có thêm cropped_idcard và face là các đường link tới ảnh cropped của CMT và ảnh mặt người (xem hình bên dưới). Vì vấn đề bảo mật, các đường link này sẽ chỉ tồn tại trong vòng 5 phút kể từ khi trả về kết quả.
Hướng dẫn gửi request bằng phần mềm POSTMAN như sau:
Body
Minh họa kết quả trả về của ảnh cropped và ảnh face:
Ảnh gốc
Ảnh cropped
Ảnh face