Đăng kiểm xe
Tiêu chuẩn đầu vào của ảnh: Hệ thống đạt kết quả tối ưu nhất về cả chất lượng và tốc độ xử lý với ảnh ở độ phân giải HD (1280x720)
1. Trích xuất thông tin đăng kiểm xe với đầu vào URL ảnh
API:
| Method | URL |
|---|---|
| GET | https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection |
Params:
| Key | Value | Mô tả |
|---|---|---|
img1 | https://example_front.com.png | Đường dẫn đến mặt trước của tài liệu |
img2 | https://example_back.com.png | Đường dẫn đến mặt sau của tài liệu |
format_type | url | Loại data truyền vào, nhận giá trị: url, file, base64 |
get_thumb | true/false | Trả về ảnh đăng kiểm xe đã được cắt và căn chỉnh |
Demo Python:
import requestsapi_key = "YOUR_API_KEY"api_secret = "YOUR_API_SECRET"image1_url = 'https://example_front.com.png'image2_url = 'https://example_back.com.png'response = requests.get("https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection?img1=%s&img2=%s&format_type=%s&get_thumb=%s"% (image1_url, image2_url, 'url', 'false'),auth=(api_key, api_secret))print(response.json())
2. Trích xuất thông tin đăng kiểm xe với đầu vào file ảnh
API:
| Method | URL | content-type |
|---|---|---|
| POST | https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection | multipart/form-data |
Params:
| Key | Value | Mô tả |
|---|---|---|
format_type | file | Loại data truyền vào, nhận giá trị: url, file, base64 |
get_thumb | true/false | Trả về ảnh đăng kiểm xe đã được cắt và căn chỉnh |
Body:
| Key | Type | Value | Mô tả |
|---|---|---|---|
img1 | file | example_front.jpg | File ảnh mặt trước của tài liệu đăng kiểm xe |
img2 | file | example_back.jpg | File ảnh mặt sau của tài liệu đăng kiểm xe |
Demo Python:
import requestsapi_key = "YOUR_API_KEY"api_secret = "YOUR_API_SECRET"image1_path = '/path/to/your/exexample_frontample.jpg'image2_path = '/path/to/your/example_back.jpg'response = requests.post("https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection?format_type=file&get_thumb=false",auth=(api_key, api_secret),files={'img1': open(image1_path, 'rb'), 'img2': open(image2_path, 'rb')})print(response.json())
3. Trích xuất thông tin đăng kiểm xe với đầu vào JSON
API:
| Method | URL | content-type |
|---|---|---|
| POST | https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection | application/json |
Params:
| Key | Value | Mô tả |
|---|---|---|
format_type | base64 | Loại data truyền vào, nhận giá trị: url, file, base64 |
get_thumb | true/false | Trả về ảnh đăng kiểm xe đã được cắt và căn chỉnh |
Body:
{"img1": "iVBORw0KGgoAAAANSU...", // string base64 của ảnh mặt trước cần trích xuất"img2": "iVBORw0KGgoAAAANSU..." // string base64 của ảnh mặt sau cần trích xuất}
Demo Python:
import base64import ioimport requestsfrom PIL import Imagedef get_byte_img(img):img_byte_arr = io.BytesIO()img.save(img_byte_arr, format='PNG')encoded_img = base64.encodebytes(img_byte_arr.getvalue()).decode('ascii')return encoded_imgapi_key = "YOUR_API_KEY"api_secret = "YOUR_API_SECRET"img1_name = "path_img1"img2_name = "path_img2"encode1_cmt = get_byte_img(Image.open(img1_name))encode2_cmt = get_byte_img(Image.open(img2_name))response = requests.post("https://demo.computervision.com.vn/api/v3/ocr/vehicle_inspection?format_type=base64&get_thumb=false",auth=(api_key, api_secret),json={'img1' : encode1_cmt, "img2" : encode2_cmt})print(response.json())
4. Thông tin trả về
Phản hồi sẽ là một JSON với định dạng sau:
{"data": [xxxx],"errorCode": string, // Mã lỗi"errorMessage": string // Thông báo lỗi}
Trong đó trường data là một list, mỗi phần tử trong list tương ứng với một đăng kiểm xe(một đăng kiểm xe có thể là một hoặc nhiều trang). Mỗi phần tử này là một JSON định dạng như sau:
{"type": "picertificate", // Thể hiện loại giấy tờ ở đây là đăng kiểm xe"info": [xxxx]}
Đăng kiểm xe - picertificate
chassis_number: Số khung.chassis_number_box: Tọa độ số khung là một list gồm [left, top, right, bottom].chassis_number_confidence: Độ tin cậy số khung.chassis_number_id: Thể hiện trườngchassis_numbernằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.commercial_use: Kinh doanh vận tải.commercial_use_box: Tọa độ kinh doanh vận tải là một list gồm [left, top, right, bottom].commercial_use_confidence: Độ tin cậy kinh doanh vận tải.commercial_use_id: Thể hiện trườngcommercial_usenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.engine_number: Số máy.engine_number_box: Tọa độ số máy là một list gồm [left, top, right, bottom].engine_number_confidence: Độ tin cậy số máy.engine_number_id: Thể hiện trườngengine_numbernằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.life_time_limit: Niên hạn sử dụng.life_time_limit_box: Tọa độ niên hạn sử dụng là một list gồm [left, top, right, bottom].life_time_limit_confidence: Độ tin cậy niên hạn sử dụng.life_time_limit_id: Thể hiện trườnglife_time_limitnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.manufactured_country: Quốc gia sản xuất.manufactured_country_box: Tọa độ quốc gia sản xuất là một list gồm [left, top, right, bottom].manufactured_country_confidence: Độ tin cậy quốc gia sản xuất.manufactured_country_id: Thể hiện trườngmanufactured_countrynằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.manufactured_year: Năm sản xuất.manufactured_year_box: Tọa độ năm sản xuất là một list gồm [left, top, right, bottom].manufactured_year_confidence: Độ tin cậy năm sản xuất.manufactured_year_id: Thể hiện trườngmanufactured_yearnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.mark: Nhãn hiệu.mark_box: Tọa độ nhãn hiệu là một list gồm [left, top, right, bottom].mark_confidence: Độ tin cậy nhãn hiệu.mark_id: Thể hiện trườngmarknằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.model_code: Số loại.model_code_box: Tọa độ số loại là một list gồm [left, top, right, bottom].model_code_confidence: Độ tin cậy số loại.model_code_id: Thể hiện trườngmodel_codenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.modification: Cải tạo.modification_box: Tọa độ cải tạo là một list gồm [left, top, right, bottom].modification_confidence: Độ tin cậy cải tạo.modification_id: Thể hiện trườngmodificationnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.registration_number: Biển đăng ký.registration_number_box: Tọa độ biển đăng ký là một list gồm [left, top, right, bottom].registration_number_confidence: Độ tin cậy biển đăng ký.registration_number_id: Thể hiện trườngregistration_numbernằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.type: Loại phương tiện.type_box: Tọa độ loại phương tiện là một list gồm [left, top, right, bottom].type_confidence: Độ tin cậy loại phương tiện.type_id: Thể hiện trườngtypenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.design_pay_load: Khối lượng hàng.design_pay_load_box: Tọa độ khối lượng hàng là một list gồm [left, top, right, bottom].design_pay_load_confidence: Độ tin cậy khối lượng hàng.design_pay_load_id: Thể hiện trườngdesign_pay_loadnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.authorized_pay_load: Khối lượng hàng cấp phép.authorized_pay_load_box: Tọa độ khối lượng hàng cấp phép là một list gồm [left, top, right, bottom].authorized_pay_load_confidence: Độ tin cậy khối lượng hàng cấp phép.authorized_pay_load_id: Thể hiện trườngauthorized_pay_loadnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.design_towed_mass: Khối lượng kéo theo.design_towed_mass_box: Tọa độ khối lượng kéo theo là một list gồm [left, top, right, bottom].design_towed_mass_confidence: Độ tin cậy khối lượng kéo theo.design_towed_mass_id: Thể hiện trườngdesign_towed_massnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.inside_cargo_container_dimension: Kích thước thùng hàng.inside_cargo_container_dimension_box: Tọa độ kích thước thùng hàng là một list gồm [left, top, right, bottom].inside_cargo_container_dimension_confidence: Độ tin cậy kích thước thùng hàng.inside_cargo_container_dimension_id: Thể hiện trườnginside_cargo_container_dimensionnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.issued_on: Đơn vị kiểm định.issued_on_box: Tọa độ đơn vị kiểm định là một list gồm [left, top, right, bottom].issued_on_confidence: Độ tin cậy đơn vị kiểm định.issued_on_code: Mã code tỉnh đơn vị kiểm định.issued_on_id: Thể hiện trườngissued_onnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.permissible_no: Số người cho phép chở.permissible_no_box: Tọa độ số người cho phép chở là một list gồm [left, top, right, bottom].permissible_no_confidence: Độ tin cậy số người cho phép chở.permissible_no_id: Thể hiện trườngpermissible_nonằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.regis_date: Ngày đăng ký.regis_date_box: Tọa độ ngày đăng ký là một list gồm [left, top, right, bottom].regis_date_confidence: Độ tin cậy ngày đăng ký.regis_date_id: Thể hiện trườngregis_datenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.seri: Số sê-ri.seri_box: Tọa độ số sê-ri là một list gồm [left, top, right, bottom].seri_confidence: Độ tin cậy số sê-ri.seri_id: Thể hiện trườngserinằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.tire_size: Cỡ lốp là một list mỗi list là một dòng trên đăng kiểm.tire_size_box: Tọa độ cỡ lốp là một list gồm [left, top, right, bottom].tire_size_confidence: Độ tin cậy cỡ lốp.tire_size_id: Thể hiện trườngtire_sizenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.valid_until: Có hiệu lực đến hết ngày.valid_until_box: Tọa độ có hiệu lực đến hết ngày là một list gồm [left, top, right, bottom].valid_until_confidence: Độ tin cậy có hiệu lực đến hết ngày.valid_until_id: Thể hiện trườngvalid_untilnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.wheel_form: Công thức bánh.wheel_form_box: Tọa độ công thức bánh là một list gồm [left, top, right, bottom].wheel_form_confidence: Độ tin cậy công thức bánh.wheel_form_id: Thể hiện trườngwheel_formnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.capacity: Dung tích.capacity_box: Tọa độ dung tích là một list gồm [left, top, right, bottom].capacity_confidence: Độ tin cậy dung tích.capacity_id: Thể hiện trườngcapacitynằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.report_number: Số phiếu.report_numer_box: Tọa độ số phiếu là một list gồm [left, top, right, bottom] (lưu ý: API trả vềreport_numer_boxthiếu chữ 'b').report_numer_confidence: Độ tin cậy số phiếu (lưu ý: API trả vềreport_numer_confidencethiếu chữ 'b').report_numer_id: Thể hiện trườngreport_numbernằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0 (lưu ý: API trả vềreport_numer_idthiếu chữ 'b').design_total_mass: Tổng khối lượng.design_total_mass_box: Tọa độ tổng khối lượng là một list gồm [left, top, right, bottom].design_total_mass_confidence: Độ tin cậy tổng khối lượng.design_total_mass_id: Thể hiện trườngdesign_total_massnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.authorized_total_mass: Tổng khối lượng cấp phép.authorized_total_mass_box: Tọa độ tổng khối lượng cấp phép là một list gồm [left, top, right, bottom].authorized_total_mass_confidence: Độ tin cậy tổng khối lượng cấp phép.authorized_total_mass_id: Thể hiện trườngauthorized_total_massnằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.lying_place: Số chỗ nằm.lying_place_box: Tọa độ số chỗ nằm là một list gồm [left, top, right, bottom].lying_place_confidence: Độ tin cậy số chỗ nằm.lying_place_id: Thể hiện trườnglying_placenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.seat_place: Số chỗ ngồi.seat_place_box: Tọa độ số chỗ ngồi là một list gồm [left, top, right, bottom].seat_place_confidence: Độ tin cậy số chỗ ngồi.seat_place_id: Thể hiện trườngseat_placenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.stand_place: Số chỗ đứng.stand_place_box: Tọa độ số chỗ đứng là một list gồm [left, top, right, bottom].stand_place_confidence: Độ tin cậy số chỗ đứng.stand_place_id: Thể hiện trườngstand_placenằm ở ảnh thứ bao nhiêu trong trườngimages, bắt đầu từ 0.images: Mảng chứa ảnh đã cắt ra và căn chỉnh của đăng kiểm xe.
Bảng mã lỗi:
| Mã lỗi | Message | Mô tả |
|---|---|---|
| 0 | Success | Trích xuất thông tin thành công |
| 1 | The photo does not contain content | Ảnh đầu vào không có giấy tờ tùy thân cần trích xuất |
| 2 | Url is unavailable | Download ảnh bị lỗi khi dùng GET |
| 3 | Incorrect image format | Upload ảnh bị lỗi khi dùng POST |
| 4 | Out of requests | Hết số lượng request |
| 5 | Incorrect api_key or api_secret | Khi api_key hoặc api_secret sai |
| 6 | Incorrect format type | Loại format khai báo trong format_type không đúng với ảnh truyền vào |