你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
首页
热门
推荐
精选
登录
|
注册
ORC身份证图片号码识别
立即下载
用AI写一个
金额:
2
元
支付方式:
友情提醒:源码购买后不支持退换货
立即支付
我要免费下载
发布时间:2019-12-26
13人
|
浏览:2727次
|
收藏
|
分享
技术:Android,ORC
运行环境:Android
概述
使用百度文字识别API封装的,能狗快速方便的识别身份证信息。身份证自动识别, 银行卡识别, 驾驶证识别, 行驶证识别
详细
### 概述: 使用百度文字识别API封装的,能狗快速方便的识别身份证信息。身份证自动识别, 银行卡识别, 驾驶证识别, 行驶证识别, 也可进行拓展 ### 开发环境: - Android - 百度文字识别API - 百度云创建应用 ### 效果图:  ---  ---  ---  ---  ### 项目结构图:  ### 详细: - 创建百度云应用,获取 appkey。详细可百度,很多很详细 - 将 JitPack repository 添加到build.gradle文件中 repositories的末尾: ``` repositories { maven { url "https://jitpack.io" } } ``` - 添加依赖 在app build.gradle 的 dependencies 中添加依赖 ``` dependencies { compile 'com.github.wenchaosong:OCR_identify:3.0.9' } ``` - 初始化 ``` OCR.getInstance(this).initAccessTokenWithAkSk(new OnResultListener
() { @Override public void onResult(AccessToken result) { } @Override public void onError(OCRError error) { error.printStackTrace(); Log.d("onError", "msg: " + error.getMessage()); } }, getApplicationContext(), "注册的appkey", "注册的sk"); ``` - 调用拍照 ``` Intent intent = new Intent(MainActivity.this, CameraActivity.class); intent.putExtra(CameraActivity.KEY_OUTPUT_FILE_PATH, FileUtil.getSaveFile(getApplication()).getAbsolutePath()); intent.putExtra(CameraActivity.KEY_CONTENT_TYPE, CameraActivity.CONTENT_TYPE_ID_CARD_FRONT); startActivityForResult(intent, REQUEST_CODE_CAMERA); ``` - 回调处理 ``` @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE_CAMERA && resultCode == Activity.RESULT_OK) { if (data != null) { String contentType = data.getStringExtra(CameraActivity.KEY_CONTENT_TYPE); String filePath = FileUtil.getSaveFile(getApplicationContext()).getAbsolutePath(); if (!TextUtils.isEmpty(contentType)) { if (CameraActivity.CONTENT_TYPE_ID_CARD_FRONT.equals(contentType)) { recIDCard(IDCardParams.ID_CARD_SIDE_FRONT, filePath); } else if (CameraActivity.CONTENT_TYPE_ID_CARD_BACK.equals(contentType)) { recIDCard(IDCardParams.ID_CARD_SIDE_BACK, filePath); } } } } } ``` - 进行解析 ``` private void recIDCard(String idCardSide, String filePath) { IDCardParams param = new IDCardParams(); param.setImageFile(new File(filePath)); param.setIdCardSide(idCardSide); param.setDetectDirection(true); OCR.getInstance(this).recognizeIDCard(param, new OnResultListener
() { @Override public void onResult(IDCardResult result) { if (result != null) { Log.d("onResult", "result: " + result.toString()); } } @Override public void onError(OCRError error) { Log.d("onError", "error: " + error.getMessage()); } }); } ``` - 代码截取 ``` // 正面(手动) findViewById(R.id.id_card_front_button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, CameraActivity.class); intent.putExtra(CameraActivity.KEY_OUTPUT_FILE_PATH, FileUtil.getSaveFile(getApplication()).getAbsolutePath()); intent.putExtra(CameraActivity.KEY_CONTENT_TYPE, CameraActivity.CONTENT_TYPE_ID_CARD_FRONT); startActivityForResult(intent, REQUEST_CODE_CAMERA); } }); // 反面(手动) findViewById(R.id.id_card_back_button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, CameraActivity.class); intent.putExtra(CameraActivity.KEY_OUTPUT_FILE_PATH, FileUtil.getSaveFile(getApplication()).getAbsolutePath()); intent.putExtra(CameraActivity.KEY_CONTENT_TYPE, CameraActivity.CONTENT_TYPE_ID_CARD_BACK); startActivityForResult(intent, REQUEST_CODE_CAMERA); } }); // 正面(自动) findViewById(R.id.id_card_front_button_auto).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, CameraActivity.class); intent.putExtra(CameraActivity.KEY_OUTPUT_FILE_PATH, FileUtil.getSaveFile(getApplication()).getAbsolutePath()); intent.putExtra(CameraActivity.KEY_NATIVE_ENABLE, true); // 请手动使用CameraNativeHelper初始化和释放模型 intent.putExtra(CameraActivity.KEY_NATIVE_MANUAL, true); intent.putExtra(CameraActivity.KEY_CONTENT_TYPE, CameraActivity.CONTENT_TYPE_ID_CARD_FRONT); startActivityForResult(intent, REQUEST_CODE_CAMERA); } }); ``` ### 其他详细代码,请看demo
本实例支付的费用只是购买源码的费用,如有疑问欢迎在文末留言交流,如需作者在线代码指导、定制等,在作者开启付费服务后,可以点击“购买服务”进行实时联系,请知悉,谢谢
感谢
1
手机上随时阅读、收藏该文章 ?请扫下方二维码
相似例子推荐
评论
作者
尘心
购买服务
购买服务
服务描述:
辅助将例子调试运行,根据开发者环境。
服务价格:
¥15
我要联系
14
例子数量
596
帮助
63
感谢
评分详细
可运行:
4.5
分
代码质量:
4.5
分
文章描述详细:
4.5
分
代码注释:
4.5
分
综合:
4.5
分
作者例子
Java实现PDF文件生成并且打印pdf文件 demo
微信支付之PC网站(Native)支付详解
超全面SpringBoot实战企业项目框架搭建
超详细!!基于springboot搭建超美个人博客
轻量级Spring+Quartz实现动态添加定时任务
ORC身份证图片号码识别
基于SpringBoot的一套强大后台管理系统
一套精简的springboot后台管理系统
Java GUI 图书管理系统
springboot仓库erp管理系统功能超强大
JavaWeb 图书管理系统
强大的图书管理系统(前后端分离版)
支付宝pc支付(springboot版),简单配置即可实现支付
Java教师信息管理系统(SpringBoot版)