港澳台居民往来内地通行证识别(含质检)

接口描述

用户通过发送HTTP Post请求方式提交数据至公有云服务器,服务器识别并返回json格式的识别结果。

接口说明

请求URL:http://api.exocr.com/ocr/v1/gat_pass_check

请求方式:HTTP Post

返回格式:json

参数
Content-Type 使用二进制方式时,为multipart/form-data;使用url方式时,为application/x-www-form-urlencoded

请求参数

参数 必选 类型 说明
app_key string 请在控制台->我的应用中获取
app_secret string 请在控制台->我的应用中获取
image_base64 string 图像base64串。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。
image_url string 图像url地址。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。
image_binary data 图像二进制。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。
crop_face_image int 是否返回切割头像 , 0:不返回,1:返回,默认不返回
check_all_risks int 是否返回所有风险项 ,0:不返回,1:返回,默认不返回

调用示例

java(相关依赖库下载)

package com.exocr.httpclient;



import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.io.InputStream;

import java.util.HashMap;

import java.util.Map;



import com.exocr.common.utils.HttpClientUtils;



public class Test {



   public static void main(String[] args) throws FileNotFoundException {





      /**

       * base64

       */

      //识别url

      String url = " http://api.exocr.com/ocr/v1/gat_pass_check";

      //设置请求参数

      Map<String, String> params = new HashMap<String, String>();

      params.put("app_key", "#####");

      params.put("app_secret", "#####");

      params.put("crop_image", "1");

      //设置识别图像base64编码

      params.put("image_base64", "base64ImageStr");

      //发送请求,得到识别结果

      String result = HttpClientUtils.doPost(url, params);

      System.out.println(result);





      /**

       * url

       */

      //设置请求参数、识别图像url

      params.put("app_key", "#####");

      params.put("app_secret", "#####");

      params.put("image_url", "imageUrl");

      params.put("crop_image", "1");

      //发送请求,得到识别结果

      result = HttpClientUtils.doPost(url, params);

      System.out.println(result);

      /**

       * 二进制

       */

      //设置请求参数

      params.put("app_key", "#####");

      params.put("app_secret", "#####");

      params.put("crop_image", "1");

      //拿到本地图像,写入数据流

      File file = new File("/Users/mac/logs/idcard.png");

      InputStream in = new FileInputStream(file);

      //设置数据流

      Map<String, InputStream> streamMap = new HashMap<String, InputStream>();

      streamMap.put("image_binary", in);

      //发送请求,得到识别结果

      result = HttpClientUtils.doPostStream(url, params, streamMap);

      //关闭io流

      try {

         in.close();

      } catch (IOException e) {

         e.printStackTrace();

      }

      System.out.println(result);

   }

}

返回示例

{
    "result": {
        "recognize_result": {
            "idno": {
                "words": "H60795522",
                "score": 0.999973,
                "position": {
                    "left": 456,
                    "top": 725,
                    "width": 371,
                    "height": 57
                },
                "quad": "456,731,826,725,827,776,457,782",
                "chinese_key": "身份证号码"
            },
            "area": {...},
            "issued_times": {...},
            "english_name": {...},
            "gender": {...},
            "birthdate": {...},
            "chinese_name": {...},
            "authority": {...},
            "valid": {...}
        },
        "check_result": [
            {
                "risk": 6,
                "risk_list": [
                    6,
                    8
                ],
                "risk_details": {
                    "edge_cover": {
                        "bboxes": [],
                        "classes": [],
                        "scores": [],
                        "class_names": []
                    },
                    "light_spot": {
                        "bboxes": [
                           [30,10,1093,10,1093,692,30,692]
                        ],
                        "classes": [
                            1
                        ],
                        "scores": [
                            0.8373299837112427
                        ],
                        "class_names": [
                            "spot"
                        ]
                    },
                    "blur_score": 0.4320279359817505
                },
                "quad": [30,10,1093,10,1093,692,30,692]
            }
        ]
    },
    "error_code": 0,
    "description": "识别成功",
    "request_id": "4AF8DD0FCD71427A82FA884FB00CFEA8",
    "recognize_time": 377,
    "available_count": 9999763,
    "version": null,
    "rotation": 0,
    "face_img": "",
    "page_name": "港澳台居民来往内地通行证正面",
    "dbg_xml": "",
    "crop_image": ""
}

返回说明

通用参数

参数 类型 说明
result Object 结果列表,包括识别结果和质检结果
error_code int 错误码,返回0为正确,其他为错误
description string 识别结果描述
request_id string 请求唯一标识符
recognize_time int 识别所用时间,单位为毫秒
available_count int 识别剩余可用次数,次数不足时无法继续识别,可在控制台进行充值次数
version String 版本信息
rotation int 旋转角度
face_img String 人脸切图
page_name String 分类结果
crop_image String 图片切图

result参数

字段 说明 类型 备注
recognize_result 识别结果 Object
recognize_result/area 地区 Object
recognize_result/chinese_name 中文姓名 Object
recognize_result/english_name 英文姓名 Object
recognize_result/birthdate 出生日期 Object
recognize_result/gender 性别 Object
recognize_result/valid 有效期限 Object
recognize_result/authority 签发机关 Object
recognize_result/idno 身份证号码 Object
recognize_result/idno2 身份证号码2 Object MRZ码中的身份证号码
recognize_result/issued_times 换证次数 Object
recognize_result/name 身份证姓名 Object
recognize_result/MRZCode MRZ码 Object
recognize_result/name/chinese_key 该字段中文含义 String
recognize_result/name/words 该字段识别结果 String utf-8格式
recognize_result/name/score 该字段可信度 Float 取值范围为0~1
recognize_result/name/quad 字段顶点坐标 String 所在区域的四个点,依次为左上,右上,右下,左下四个点的坐标值
recognize_result/name/position 字段位置矩形框 Object 以左上角为基准,距离左侧,上侧,右侧矩形框长度,下侧矩形框长度
check_result 质检结果 List check_all_risks为0时值为空
check_result/risk 图像风险类型 Int 5:遮挡,6:切边,7:卡变形,8:有光斑,9:未检测到证件 10:模糊
check_result/risk_list 风险列表 List 包含检测到的所有风险
check_result/risk_details 风险详情 Object
check_result/risk_details/blur_score 模糊风险分值 float 0.3以下清晰,值越大越模糊
check_result/risk_details/edge_cover 遮挡风险详情 Object
check_result/risk_details/edge_cover/classes 类型 List 1:有遮挡
check_result/risk_details/edge_cover/bboxes 坐标信息 List
check_result/risk_details/edge_cover/class_names 遮挡 List Occlusion遮挡
check_result/risk_details/edge_cover/scores 分值 Float 0.4以上分数越大,遮挡越可信
check_result/risk_details/light_spot 光斑风险详情 Object
check_result/risk_details/light_spot/classes 类型 int 1:有光斑
check_result/risk_details/light_spot/bboxes 坐标信息 List
check_result/risk_details/light_spot/class_names 光斑 String Spot光斑
check_result/risk_details/light_spot/scores 分值 Float 0.4以上分数越大,光斑越可信
check_result/quad 顶点坐标 List
Copyright © 2020 易道博识 all right reserved,powered by Gitbook该文件修订时间: 2024-07-29 15:06:25

results matching ""

    No results matching ""