2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > JAVA-调用百度文字识别OCR进行身份证识别

JAVA-调用百度文字识别OCR进行身份证识别

时间:2018-08-31 10:05:37

相关推荐

JAVA-调用百度文字识别OCR进行身份证识别

1.第三方接口

文字识别OCR,需要进行注册和实名认证后,获取对应的应用列表以及免费测试额度

2.调用例子

<!-- 百度识别 --><dependency><groupId>com.baidu.aip</groupId><artifactId>java-sdk</artifactId><version>4.16.11</version></dependency>

package com.alex.examples;import java.util.*;import org.json.JSONException;import org.json.JSONObject;import com.baidu.aip.ocr.AipOcr;public class IDCardSample {//设置APPID/AK/SKpublic static final String APP_ID = "身份证识别的appId";public static final String API_KEY = "身份证识别的apiKey";public static final String SECRET_KEY = "身份证识别的secretKey";public static void main(String[] args) throws JSONException {// 初始化一个AipOcrAipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);// 传入可选参数调用接口HashMap<String, String> options = new HashMap<>();/*** 检测方向,非必选,默认false* - false:默认值不进行图像方向自动矫正* - true: 开启图像方向自动矫正功能,可对旋转 90/180/270 度的图片进行自动矫正并识别*/options.put("detect_direction", "true");/*** 检测风险,非必选,默认false* 是否开启身份证风险类型(身份证复印件、临时身份证、身份证翻拍、修改过的身份证)检测功能,默认不开启,即:false。* - true:开启,请查看返回参数risk_type;* - false:不开启*/options.put("detect_risk", "false");/*** 必选* -front:身份证含照片的一面* -back:身份证带国徽的一面* 自动检测身份证正反面,如果传参指定方向与图片相反,支持正常识别,返回参数image_status字段为"reversed_side"*/String idCardSide = "back"; //检测:背面//身份证文件://参数为本地图片路径(也可以是字节流,调用的方法也是client.idcard)String image = "C:\\Users\\86137\\Pictures\\Saved Pictures\\2.jpg";JSONObject res = client.idcard(image, idCardSide, options);System.out.println(res.toString(2));}}

3.效果图如下

//查的是身份证背面/侧面,则返回背面/侧面的信息{"words_result": {"失效日期": {"words": "20390711","location": {"top": 445,"left": 523,"width": 153,"height": 38}},"签发机关": {"words": "陆丰市公安局","location": {"top": 377,"left": 339,"width": 195,"height": 38}},"签发日期": {"words": "0606","location": {"top": 445,"left": 343,"width": 152,"height": 38}}},"log_id": "1559208562721579328","words_result_num": 3,"error_code": 0,"image_status": "normal"}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。