zoukankan      html  css  js  c++  java
  • 百度OCR 文字识别 Android安全校验

    百度OCR接口使用总结:
    之前总结一下关于百度OCR文字识别接口的使用步骤(Android版本 不带包名配置 安全性弱).这边博客主要介绍,百度OCR文字识别接口,官方推荐使用方式,授权文件(安全模式);

    最终实现结果如下

    效果预览

    注册百度账号

    没有百度账号需要注册一个百度账号……
    https://passport.baidu.com/v2/?reg

    登录百度ai控制台

    http://ai.baidu.com/
    ai登录

    创建文字识别应用

    创建应用

    填写相关信息(选择文字识别需要包名)


    填写正确的包名

    下载相关文件

    下载sdk
    https://ai.baidu.com/sdk#ocr
    下载sdk

    点击查看应用详情,下载License文件-Android(文字识别)
    在这里插入图片描述

    新建工程

    1.导入jar包及so文件

    文件位置:
    	aip-ocr-android-sdk-1.4.4aip-ocr-android-sdk-1.4.4libsocr-sdk.jar
    	
    	将libs目录下armeabi,arm64-v8a,armeabi-v7a,x86文件夹按需添加到android studio工程src/main/jniLibs目录中	
    

    2.导入License文件

    将License文件添加到assets文件夹里面

    3.添加相应的权限

    
        <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"/>
    
    

    4.如需使用UI模块,导入ocr-ui工程。(如不需要,可跳过该步骤)


    获取token代码

     private void getToken() {
    
            OCR.getInstance(mContext).initAccessToken(new OnResultListener<AccessToken>() {
                @Override
                public void onResult(AccessToken result) {
                    // 调用成功,返回AccessToken对象
                    final String token = result.getAccessToken();
    
                    Log.e("MainActivity", "MainActivity onResult()" + token);
    
                    mToken = token;
                }
    
                @Override
                public void onError(OCRError error) {
                    // 调用失败,返回OCRError子类SDKError对象
                    error.printStackTrace();
                }
            }, getApplicationContext());
    
        }
    

    识别图片文字

    
    public void getData(String filePath) {
    
    
            if (TextUtils.isEmpty(this.mToken)) {
                getToken();
            }
    
            // 通用文字识别参数设置
            GeneralBasicParams param = new GeneralBasicParams();
            param.setDetectDirection(true);
            param.setImageFile(new File(filePath));
    
            final StringBuffer sb = new StringBuffer();
    
    		// 调用通用文字识别服务
            OCR.getInstance(this).recognizeGeneralBasic(param, new OnResultListener<GeneralResult>() {
                @Override
                public void onResult(GeneralResult result) {
                    // 调用成功,返回GeneralResult对象
                    for (WordSimple wordSimple : result.getWordList()) {
                        // wordSimple不包含位置信息
                        WordSimple word = wordSimple;
                        sb.append(word.getWords());
                        sb.append("
    ");
                    }
                    // json格式返回字符串
                    //listener.onResult(result.getJsonRes());
    
                    Log.e("MainActivity", "MainActivity onResult()    ::" + sb.toString());
    
    
                    Message msg = Message.obtain();
                    msg.what = 100;
                    msg.obj = sb.toString();
                    mHandler.sendMessage(msg);
                }
    
                @Override
                public void onError(OCRError error) {
                    // 调用失败,返回OCRError对象
                    int errorCode = error.getErrorCode();
                    Log.e("MainActivity", "MainActivity onError()    ::" + errorCode);
    
                    error.printStackTrace();
                }
            });
    }
    
    demo下载链接

    https://download.csdn.net/download/pyfysf/10916124
    https://download.csdn.net/download/pyfysf/10916124
    https://download.csdn.net/download/pyfysf/10916124

    百度官方相应api文档地址
    http://ai.baidu.com/docs#/OCR-API/top
    http://ai.baidu.com/docs#/OCR-Android-SDK/top

  • 相关阅读:
    RecyclerView 源码分析(一) —— 绘制流程解析
    sqlserver outer join
    获取最后一个标签 xpath
    pytesseract
    pytesseract代码优化
    sql server recursion
    sql
    sql server
    mssql乱码问题
    SQL
  • 原文地址:https://www.cnblogs.com/shaofeer/p/11154325.html
Copyright © 2011-2022 走看看