首页 > 编程语言 >身份证OCR识别接口如何用Java调用

身份证OCR识别接口如何用Java调用

时间:2024-08-15 13:53:13浏览次数:11  
标签:识别 Java String 接口 api 身份证 OCR

一、什么是身份证OCR识别接口?

身份证OCR识别接口又叫身份证识别,身份证图像识别,身份证文字识别,即自动识别和提取身份证上的文字和数字信息。它可以通过图像处理和模式识别算法,将身份证中的姓名、性别、民族、出生日期、住址、身份证号、签发机关、有效期限等关键信息准确地提取出来。

二、身份证OCR识别接口适用场景有哪些?

1.金融行业:用于银行开户、贷款申请、信用卡办理、证券移动开户等业务,可以快速准确地提取客户身份证信息,提高业务办理效率,同时有助于进行实名认证和风险控制;

2.政务服务:在身份证办理、户籍管理、社保登记、公安管理等方面,能够快速识别公民身份证信息并与其他信息核对,提升政务服务的效率和准确性;

3.交通领域:应用于汽车租赁、火车票预订、飞机票预订等业务,可快速识别乘客身份证信息,提高业务办理效率;

4.电信实名制:用户进行手机开卡时,用于采集和核验身份证信息,减少用户等待时间,提升用户体验;

5.保险行业:在移动投保、车险销售等业务中,身份证 OCR 可快速进行身份证认证,简化业务流程。

三、如何用Java实现身份证OCR识别接口调用?

下面我们以Java为例进行接口调用:

	public static void main(String[] args) {
	    String host = "https://kzcardocr.market.alicloudapi.com";
	    String path = "/api-mall/api/idcard/ocr";
	    String method = "POST";
	    String appcode = "你自己的AppCode";
	    Map<String, String> headers = new HashMap<String, String>();
	    //最后在header中的格式(中间是英文空格)为Authorization:APPCODE 83359fd73fe94948385f570e3c139105
	    headers.put("Authorization", "APPCODE " + appcode);
	    //根据API的要求,定义相对应的Content-Type
	    headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
	    Map<String, String> querys = new HashMap<String, String>();
	    Map<String, String> bodys = new HashMap<String, String>();
	    bodys.put("image", "image");
	    bodys.put("url", "url");


	    try {
	    	/**
	    	* 重要提示如下:
	    	* HttpUtils请从
	    	* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java
	    	* 下载
	    	*
	    	* 相应的依赖请参照
	    	* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml
	    	*/
	    	HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
	    	System.out.println(response.toString());
	    	//获取response的body
	    	//System.out.println(EntityUtils.toString(response.getEntity()));
	    } catch (Exception e) {
	    	e.printStackTrace();
	    }
	}

正确返回示例代码如下:

{
    "msg": "成功",
    "success": true,
    "code": 200,
    "data": {
        "result": 0, //0 :识别成功,1:识别失败
        "side": "front", // front:正面,back :反面
        "orderNo": "202304031918463633573",
        "info": {
            "number": "330*********1011", //身份证号
            "address": "浙江省*****651号", //住址
            "month": "8", //出生月份
            "nation": "汉", //民族
            "year": "1981", //出生年份
            "sex": "男", //性别
            "name": "张*江", //姓名
            "day": "16" //出生-日
        }
    }
}

{
    "msg": "成功",
    "success": true,
    "code": 200,
    "data": {
        "orderNo": "202304031918463633574",
        "result": 0, //0 :识别成功,1:识别失败
        "side": "back",// back :反面
        "info": {
            "authority": "上海市公安局**局",//签发机关
            "timelimit": "20220716-20420716"//有效期限
        }
    }
}

标签:识别,Java,String,接口,api,身份证,OCR
From: https://blog.csdn.net/loosenivy/article/details/141159399

相关文章

  • 基于Java Springboot音乐播放器系统
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......
  • 基于Java Springboot北京医疗企业固定资产管理系统
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......
  • 基于Java Springboot畅游游戏销售平台
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......
  • 基于Java Springboot超市管理系统
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......
  • Java反序列化(一)——基础知识
    前言·攻击JavaWeb应用-[JavaWeb安全]Java类加载机制-知乎(zhihu.com)java反序列化基础-CSDN博客Java序列化-二进制格式详解_java序列化二进制特征-CSDN博客1类加载机制1.1概述    Java程序在运行钱需要先编译成.class文件,这个文件的内容被称为字节......
  • 基于Java Springboot超市在线销售系统
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......
  • 基于Java Springboot成都某幼儿园兴趣班报名管理系统
    一、作品包含源码+数据库+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境配置软件:JDK1.8+Ma......
  • 基于Java Springboot大学生家教服务管理系统
    一、作品包含源码+数据库+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境配置软件:JDK1.8+Ma......
  • Java反序列化(二)——URLDNS链、CC1链
    0背景白日梦组长投稿视频-白日梦组长视频分享-哔哩哔哩视频(bilibili.com)实验环境Java:1.8.0_65IDEA:2022commons-collecetions:3.2.11URLDNS链分析    URLDNS并不能RCE,只是用来发起dns请求,一般用做初步探测,看能不能反序列化和出网。先给出利用链:GadgetChai......
  • 基于Java Springboot甘肃“印象”网站
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse数据库:MySQL5.7数据库管理工具:Navicat10以上版本环境......