# OCR 身份证识别
[![](https://jitpack.io/v/wenchaosong/OCR_identify.svg)](https://jitpack.io/#wenchaosong/OCR_identify)
[![](https://img.shields.io/github/stars/wenchaosong/OCR_identify.svg)](https://github.com/wenchaosong/OCR_identify)
[![](https://img.shields.io/github/issues/wenchaosong/OCR_identify.svg)](https://github.com/wenchaosong/OCR_identify)
### 根据百度文字识别 api 封装,能快速识别身份证信息,使用非常方便
### 好用的话大家可以 star,有好的建议也可以提出来哦
### 身份证自动识别已集成
![image](/pics/idcard1.png )
![image](/pics/idcard2.png )
![image](/pics/idcard3.png )
![image](/pics/idcard4.png )
![image](/pics/idcard5.png )
## 使用
- Step 1. 把 JitPack repository 添加到build.gradle文件中 repositories的末尾:
```
repositories {
maven { url "https://jitpack.io" }
}
```
- Step 2. 在你的app build.gradle 的 dependencies 中添加依赖
```
dependencies {
compile 'com.github.wenchaosong:OCR_identify:3.0.9'
}
```
- Step 3. 获取 appkey [去百度云创建应用](https://login.bce.baidu.com/?account=)
```
打开百度云,创建应用,得到 AppKey secretKey,根据提示下载 jar 包和 lib 包,并放到项目中
```
- Step 4. 初始化
```
OCR.getInstance(this).initAccessTokenWithAkSk(new OnResultListener<AccessToken>() {
@Override
public void onResult(AccessToken result) {
}
@Override
public void onError(OCRError error) {
error.printStackTrace();
Log.d("onError", "msg: " + error.getMessage());
}
}, getApplicationContext(), "你注册的appkey", "你注册的sk");
```
- Step 5.拍照
```
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);
```
- Step 6.回调
```
@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);
}
}
}
}
}
```
- Step 7.解析
```
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<IDCardResult>() {
@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());
}
});
}
```
- 混淆
```
-keep class com.baidu.ocr.sdk.**{*;}
-dontwarn com.baidu.ocr.**
```
### 详情见 demo
程序员无锋
- 粉丝: 3708
- 资源: 2573
最新资源
- 含风电-光伏-光热电站电力系统N-k安全优化调度模型 关键词:N-K安全约束 光热电站 优化调度 参考文档:《光热电站促进风电消纳的电力系统优化调度》参考光热电站模型; 仿真平台: MATLAB +
- C++程序,基于元胞自动机法模拟枝晶生长,能实现任意角度(偏心正方算法),同时采用LBM考虑了对流作用对枝晶生长的影响
- MATLAB 用蚁群算法解决旅行商TSP问题
- 转速电流双闭环,无传感器无刷直流电机Simulink模型: 第一张图为转速,转矩 第二张图为反向电动势 第三张图为三相电流
- 风储调频 使用双馈发电机(DFIG)相关的电池储能系统(BESS)来支持一次频率,包含相关的控制策略 该模型包含2.0MW690V双馈发电机DFIG与电池储能系统BESS的Simulink模型,此
- 永磁同步电机PMSM模糊PI控制,内有详细的搭建过程以及对应详细的参考资料 另外有与传统PI对比的资料以及相关模型,全套一起打包 仿真效果非常好.
- comsol导模共振双BIC
- 滑模PMSG风力涡轮发电机Simulink模型
- comsol电磁超声压电接收EMAT 在1mm厚铝板中激励250kHz的电磁超声在200mm位置处设置一个深0.8mm的裂纹缺陷,左端面设为低反射边界 在85mm位置处放置一个压电片接收信号,信号如
- 多源联合系统的优化调度 包括风光火-抽水蓄能-蓄电池5种电源的优化调度 在MATLAB中采用yalmip进行编码 采用cplex求解 程序运行良好 注释详尽 适合电力系统优化初学者学习
- AGV全覆盖移动避障路径规划 扫地机器人路径规划 第一类算法 全覆盖智能算法 %% 基于深度优先搜索算法的路径规划-扫地机器人移动仿真 % 返回深度优先搜索实现全覆盖的运行次数 % 将栅格模型的每一个
- 多智能体系统,一致性,事件触发,一阶事件触发仿真文件,效果好,有对应参考文献
- VMD信号分解算法 1、VMD功率分解,VMD滚动轴承故障,将原始信号分解成多个模态 2、然后进行降噪、滤波等作用 光伏功率分解 3、滚动轴承故障检测 混合储能容量分配等 4、也可用于应用于时
- 蓄电池与超级电容器混合储能并网Matlab Simulink仿真模型,仅供学习交流 已测试,模型正确,曲线输出正常 可送相关参考文献 (1)混合储能,模型原创,储能并网,混合储能能量管理,蓄
- 小土堆学习之最大池化层与卷积层
- 基于ANN神经网络的无刷直流电机(BLDC)转速控制 适合课题研究与参考学习 主要包括: 1) BLDC的开环控制Simulink模型; 2) 基于PI的无刷直流电机BLDC的转速控制; 3) 基于A
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈