Android端身份证拍照识别
支持的系统和硬件版本
系统:支持 Android 4.0(API Level 15)到Android7.0(API Level 25)系统。需要开发者通过minSdkVersion来保证支持系统的检测。
CPU架构:armeabi,arm64-v8a,armeabi-v7a,x86
机型:手机和平板皆可
硬件要求:要求设备上有相机模块。
网络:支持WIFI及移动网络,移动网络支持使用NET网关及WAP网关(CMWAP、CTWAP、UNIWAP、3GWAP)。
集成SDK
1.前往百度开发平台文字识别SDK下载页面下载Android SDK压缩包。
2.(必须)将下载包libs目录中的ocr-sdk.jar文件拷贝到工程libs目录中,并加入工程依赖。
3.(必须)将libs目录下armeabi,arm64-v8a,armeabi-v7a,x86文件夹按需添加到android studio工程src/main/jniLibs目录中。
添加必要的权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
运行效果图
代码
1.初始化orc,正确的Api Key和Secret Key需要去百度根据自己包名自行配置,如果配置错误,就无法使用orc文字识别
2.调用拍摄的activity,OCR-UI模块提供了一套默认的UI,可以直接导入使用。
findViewById(R.id.idcardheadbutton).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, DataFileUtil.getSaveFile(getApplication()).getAbsolutePath()); intent.putExtra(CameraActivity.KEY_CONTENT_TYPE, CameraActivity.CONTENT_TYPE_ID_CARD_FRONT); startActivityForResult(intent, REQUEST_CODE_CAMERA); } });
3.识别身份证信息
总结
只有身份证正面的识别,反面识别的代码被我去掉了,如果需要,可以联系我。
DEMO
https://download.csdn.net/download/wen_haha/10447864