居民临时身份证识别接口

接口描述

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

接口说明

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

请求方式:HTTP Post

返回格式:json

API 定义

ocr/v1/temp_id

参数
Content-Type 使用二进制方式时,为multipart/form-data;使用base64和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图像为准。

调用示例

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/temp_id";

      //设置请求参数

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

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

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

      //设置识别图像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");

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

      result = HttpClientUtils.doPost(url, params);

      System.out.println(result);

      /**

       * 二进制

       */

      //设置请求参数

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

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

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

      File file = new File("/Users/mac/logs/test.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":{

        "name":{

            "words":"张##",

            "score":1,

            "position":{

                "left":102,

                "top":24,

                "width":74,

                "height":30

            },

            "chinese_key":"姓名"

        },

        "gender":{

            "words":"男",

            "score":1,

            "position":{

                "left":188,

                "top":361,

                "width":307,

                "height":29

            },

            "chinese_key":"性别"

        },

        "nationality":{

            "words":"瑶",

            "score":1,

            "position":{

                "left":228,

                "top":75,

                "width":29,

                "height":26

            },

            "chinese_key":"民族"

        },

        "birthdate":{

            "words":"1982年8月17日",

            "score":1,

            "position":{

                "left":104,

                "top":125,

                "width":234,

                "height":27

            },

            "chinese_key":"出生"

        },

        "address":{

            "words":"##二",

            "score":1,

            "position":{

                "left":102,

                "top":163,

                "width":273,

                "height":56

            },

            "chinese_key":"住址"

        },

        "idno":{

            "words":"45088##",

            "score":1,

            "position":{

                "left":188,

                "top":361,

                "width":307,

                "height":29

            },

            "chinese_key":"公民身份号码"

        },

        "issued":{

            "words":"东莞市公安局",

            "score":1,

            "position":{

                "left":139,

                "top":319,

                "width":134,

                "height":24

            },

            "chinese_key":"签发机关"

        },

        "valid":{

            "words":"2016.01.15-2016.04.15",

            "score":1,

            "position":{

                "left":136,

                "top":281,

                "width":239,

                "height":21

            },

            "chinese_key":"有效期限"

        }

    },

    "error_code":0,

    "description":"识别成功",

    "request_id":"CFE30D0007524D4387EC627E79ACE78C",

    "recognize_time":495,

    "available_count":9995

}

返回结果

通用参数

参数 类型 说明
result array 返回结果数组,包括所有字段的识别信息
error_code int 错误码,返回0为正确,其他为错误
description string 识别结果描述
request_id string
recognize_time int 识别所用时间,单位为毫秒
available_count int 识别剩余可用次数,次数不足时无法继续识别,可在控制台进行充值次数

临时身份证识别特有参数

参数 类型 说明
name string 姓名
gender string 性别
nationality string 民族
birthdate string 出生
address string 住址
idno string 公民身份号码
issued string 签发机关
valid string 有效期限
position array 当前字段在图像上的位置信息
left int 位置值,距离原图左侧距离x,单位为像素
top int 位置值,距离原图上方距离y,单位为像素
width int 位置值,字段所在图框宽度w,单位为像素
height int 位置值,字段所在图框高度h,单位为像素
chinese_key String 该字段中文含义
words String 识别结果
score Float 照片可信度,取值范围为0~1
quad String 四个顶点坐标,依次为左上,右上,右下,左下四个点的坐标值
Copyright © 2020 易道博识 all right reserved,powered by Gitbook该文件修订时间: 2023-12-04 14:10:10

results matching ""

    No results matching ""