今天时间比较宽松,简单学习了一下百度AI开发平台中的身份证中文字识别,10来分钟就搞定了,百度API就是厉害,简单写下,做个备忘。

下载整个项目源码。

一、注册百度账号及新增一个应用,获取百度API所需的AppID,API Key,Secret Key三个参数。

访问http://ai.baidu.com,使用百度账号登录后,出现如下界面

成功创建应用后,出现类似如下界面:

二、编写Java代码

身份证正反面图片中的文字识别实现步骤如下:

1.下载百度SDK

https://ai.baidu.com/sdk#ocr中,下载java SDK

2.在MyEclipse等开发工具中,创建Java工程

下面以MyEclipse举例,创建的Java工程目录如下:

3.集成百度SDK

身份证中文字识别代码如下,简单几行代码就搞定,具体如下:

package com.zrscsoft.api.baidu;

import java.util.HashMap;

import org.json.JSONObject;

import com.baidu.aip.ocr.AipOcr;

public class Sample {
    //设置APPID/AK/SK
    public static final String APP_ID = "你的 App ID";
    public static final String API_KEY = "你的 Api Key";
    public static final String SECRET_KEY = "你的 Secret Key";
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         // 初始化一个AipOcr
        AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);

// 可选:设置网络连接参数
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);

// 传入可选参数调用接口
        HashMap<String, String> options = new HashMap<String, String>();
        options.put("detect_direction", "true");
        options.put("detect_risk", "false");
        // 识别身份证正面(正面图片为本地图片,即D:\1.png)
        JSONObject frontres = client.idcard("D:\\1.png", "front", options);
        System.out.println(frontres.toString(2));
        // 识别身份证反面(反面图片为本地图片,即D:\2.png)
        JSONObject backres = client.idcard("D:\\2.png", "back", options);
        System.out.println(backres.toString(2));
    }
    
}

4.运行Sample中main()方法,运行后的结果,大致如下:

备注:识别出来的文字,为了安全起见,用***********代替。

{
  "words_result": {
    "性别": {
      "words": "***********",
      "location": {
        "height": 17,
        "width": 15,
        "left": 108,
        "top": 84
      }
    },
    "姓名": {
      "words": "***********",
      "location": {
        "height": 21,
        "width": 65,
        "left": 106,
        "top": 42
      }
    },
    "住址": {
      "words": "***********",
      "location": {
        "height": 73,
        "width": 213,
        "left": 103,
        "top": 162
      }
    },
    "公民身份号码": {
      "words": "***********",
      "location": {
        "height": 24,
        "width": 287,
        "left": 191,
        "top": 263
      }
    },
    "出生": {
      "words": "***********",
      "location": {
        "height": 18,
        "width": 163,
        "left": 108,
        "top": 121
      }
    },
    "民族": {
      "words": "汉",
      "location": {
        "height": 16,
        "width": 13,
        "left": 211,
        "top": 84
      }
    }
  },
  "direction": 0,
  "words_result_num": 6,
  "image_status": "normal",
  "log_id": 8235694298503456566
}
{
  "words_result": {
    "失效日期": {
      "words": "***********",
      "location": {
        "height": 22,
        "width": 90,
        "left": 308,
        "top": 263
      }
    },
    "签发机关": {
      "words": "***********",
      "location": {
        "height": 30,
        "width": 265,
        "left": 201,
        "top": 215
      }
    },
    "签发日期": {
      "words": "***********",
      "location": {
        "height": 22,
        "width": 95,
        "left": 198,
        "top": 258
      }
    }
  },
  "direction": 0,
  "words_result_num": 3,
  "image_status": "normal",
  "log_id": 3369545259709262582
}

下载整个项目源码。

使用百度API,分分钟搞定身份证正反面图片中的文字识别(Java代码实现)相关推荐

  1. 一文搞定!手把手教你文字识别(识别篇:LSTM+CTC, CRNN, chineseocr方法)

    个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 文字识别是AI的一个重要应用场景,文字识别过程一般由图像输入.预处理.文本检测.文本识别.结果输出等环节组成.   其中,文本检测. ...

  2. 一段代码完成所有分享功能,分分钟搞定分享功能

    一段代码完成所有分享功能,分分钟搞定分享功能 效果如下: 代码: <div style="width:100%; height:30px;"> <div styl ...

  3. 有了这个开源项目,让你分分钟搞定第三方授权登录

    第三方登录授权对于很多开发者来说是很烦人的一件事,每个平台都要获得各自的权限,实践起来非常麻烦.今天 Gitee 给大家推荐的这款开源项目就是针对这个痛点所开发,一次性集成了十多家国内外常用的第三方平 ...

  4. endnote转化成纯文本后_如何用Endnote分分钟搞定参考文献

    原标题:如何用Endnote分分钟搞定参考文献 解螺旋公众号·陪伴你科研的第1924天 Endnote教程第二弹来啦! 写论文离不了对参考文献的引用,Endnote在文献撰写中发挥着重要作用.下面我们 ...

  5. 永中word页码怎么从第二页开始_pdf如何在线转word?这样做,分分钟搞定pdf转word...

    原标题:pdf如何在线转word?这样做,分分钟搞定pdf转word 上了初中以后,我感觉到学习压力更大了,特别是写作文.记得小学时,我的作文还被老师当堂表扬过,现在最多只能拿到合格线分数.为了提高语 ...

  6. C4D优质电商背景素材|分分钟搞定设计稿

    优质的背景设计能很好的衬托出产品的气质.这类素材往往都是分层可编辑的格式,替换产品本身,加上文字设计,banner产品图分分钟搞定,广告设计稿也顿时高大上.这类素材要到专业提供网站,比如素材路上(ww ...

  7. 怎么扫描同网段mac地址linux,如何快速收集局域网内的IP+MAC信息?用这个扫描器分分钟搞定!!!...

    原标题:如何快速收集局域网内的IP+MAC信息?用这个扫描器分分钟搞定!!! 网 工 圈 中国圈内 最早的公益 公众号,本号已认证(关注近 5w+) 关注 科来MAC地址扫描器安装 1.右键" ...

  8. 【ps】米饭工作室教你分分钟搞定“小问题”照片

    五一出游是不是拍了很多照片?如果你有ps又不懂高深的修图技术,那么多照片修起来是不是很吃力?但不是每张照片拍的都可以直接上传,有些只是有些暗,或者只是有点儿歪,画面边上有人乱入,却又很想上传分享给朋友 ...

  9. 计算机一级b证书图片p,只需两步,分分钟搞定证件照(内附福利)

    原标题:只需两步,分分钟搞定证件照(内附福利) 简历中要不要放证件照? 当然要! 怎么样才能让证件照成为求职过程中的加分项? 不浮夸,不造作! 证件照怎么拍? 不要998,小V教你在家就能自制最美证件 ...

最新文章

  1. 利用Vlan控制与隔离广播风暴
  2. python 和 torch 交叉熵损失
  3. Part2_2 Bs4常见操作
  4. centos7 安装 Minio
  5. php工程模式,factory - PHP工程模式如何传入参数
  6. 一个jdbc connection连接对应一个事务
  7. Spring boot 开发 GA/T1400 协议之注册、保活、注销、校时功能
  8. 华为交换机学习指南基于MAC地址划分VLAN
  9. ab性能测试工具使用
  10. android 公式编辑器,公式编辑器
  11. 谷歌人机图像识别接口
  12. 第二周——学习内存取证神器volatility的使用
  13. Latex常用符号表
  14. 用R来求解一元二次方程
  15. 《科比传》留下深刻印象的文字
  16. 面试篇1:C/C++,Linux
  17. FCM公式详细推及代码
  18. 解决 Linux 系统,出现“不在sudoers文件中,此事将被报告”的问题
  19. graphpad软件百度云分享吧_还在用百度云软件?来试试这四个良心的云盘软件吧!...
  20. VCIP 2020:面向VVC的自适应分辨率改变

热门文章

  1. 计算机程序设计是干嘛的,程序设计究竟是做什么事情的
  2. 41页大数据治理平台建设与应用解决方案(附下载)
  3. Hello CTP(五)——CTP仓位计算
  4. 技高一筹 行家妙招封堵USB泄密Vista数据
  5. 03 矩阵不只是mn个数字
  6. MBA案例分析: 美国西南航空的十年发展战略规划
  7. Android巴士倒闭了吗
  8. 什么是最牛逼的代码?
  9. CES 2016逛展攻略:三大展区万家展台 你不能错过!
  10. DNSPod十问肖雨浓:“无服务器计算”动了谁的奶酪?