身份证识别,银行卡识别,驾驶证识别,行驶证识别,根据百度文字识别 api 封装,能快速识别身份证信息,银行卡信息,驾驶证信息,行驶证信息,使用非常方便

OCR_identify

项目地址:wenchaosong/OCR_identify 

简介:身份证识别,银行卡识别,驾驶证识别,行驶证识别,根据百度文字识别 api 封装,能快速识别身份证信息,银行卡信息,驾驶证信息,行驶证信息,使用非常方便

更多:作者   提 Bug   

标签:

 

  

根据百度文字识别 api 封装,能快速识别身份证信息,使用非常方便

好用的话大家可以 star,有好的建议也可以提出来哦

身份证自动识别已集成

image

image

image

image

image

使用

  • 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.8'
    }
    
  • Step 3. 获取 appkey 去百度云创建应用
    打开百度云,创建应用,得到 AppKey secretKey,根据提示下载 jar 包和 lib 包,并放到项目中
    
  • Step 4. 初始化

    OCR.getInstance().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().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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值