户口本识别

接口描述

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

接口说明

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

请求方式:HTTP Post

返回格式:json

参数
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/hukou_proof";

      //设置请求参数

      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": {

    "type": null,

    "householder": null,

    "house_no": null,

    "address": null,

    "name": {

      "words": "赵##",

      "score": 1,

      "position": {

        "left": 1085,

        "top": 409,

        "width": 354,

        "height": 120

      },

      "chinese_key": "姓名"

    },

    "relationship": {

      "words": "妻",

      "score": 1,

      "position": {

        "left": 2610,

        "top": 407,

        "width": 112,

        "height": 104

      },

       "chinese_key": "户主或与户主关系"

    },

    "used_name": {

      "words": "",

      "score": 1,

      "position": {

        "left": 776,

        "top": 452,

        "width": 1111,

        "height": 429

      },

      "chinese_key": "曾用名"

    },

    "gender": {

      "words": "女",

      "score": 1,

      "position": {

        "left": 2616,

        "top": 596,

         "width": 98,

        "height": 100

      },

      "chinese_key": "性别"

    },

    "birth_place": {

      "words": "福建省##县",

      "score": 1,

      "position": {

        "left": 1085,

        "top": 790,

        "width": 497,

        "height": 98

      },

      "chinese_key": "出生地"

    },

    "nationality": {

      "words": "汉",

      "score": 1,

      "position": {

        "left": 2620,

        "top": 778,

        "width": 99,

        "height": 89

      },

      "chinese_key": "民族"

    },

    "from": {

      "words": "福建省##县",

      "score": 1,

       "position": {

        "left": 1086,

        "top": 974,

        "width": 496,

        "height": 94

      },

      "chinese_key": "籍贯"

    },

    "birth_date": {

      "words": "19xx年x月x日",

      "score": 1,

      "position": {

        "left": 2636,

        "top": 953,

        "width": 565,

        "height": 90

      },

      "chinese_key": "出生日期"

    },

    "idno": {

       "words": "350###",

      "score": 1,

      "position": {

        "left": 1085,

        "top": 1342,

        "width": 783,

        "height": 96

      },

      "chinese_key": "身份证号码"

    }

  },

  "error_code": 0,

  "description": "识别成功",

  "request_id": "B3B5B676A8D7424CBBF559734B5D537C",

  "recognize_time": 880,

  "available_count": 123078

}

返回说明

通用参数

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

户口本识别特有参数

参数 类型 说明
name string 姓名
relationship string 户主或与户主关系
used_name string 曾用名
gender string 性别
birth_place string 出生地
nation string 民族
from string 籍贯
birth_date string 出生日期
idno 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 四个顶点坐标,依次为左上,右上,右下,左下四个点的坐标值
blood_type Object 血型
education Object 文化程度
marriage Object 婚姻状况
military_serve Object 兵役状况
employer Object 服务处所
occupation Object 职业
when_to_city Object 何时由何地迁来本市(县)
when_to_address Object 何时由何地迁来本址
register_datetime Object 登记日期
faith Object 宗教信仰
other_address Object 本市(县)其他住址
Copyright © 2020 易道博识 all right reserved,powered by Gitbook该文件修订时间: 2023-12-04 14:10:10

results matching ""

    No results matching ""