简单记录一下今天关于百度AI开放平台-文字识别-财务票据文字识别的实现过程
文字识别有对应的Android SDK集成及相关Demo,文档地址如下图:
但是SDK中的返回数据字段有限,而且不能满足我们对字段的需求,所以我们选择了直接调用百度体用的Api来进行识别,文档地址如下图:
关于SDK集成的,我只是跑了下demo,具体的就不说了,下面简单说关于上图中所说的Api集成步骤,具体如下:
1.新建项目,或者在你已有的项目之上,这里以新建项目为例,添加必要的配置:
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
//recyclerview
implementation 'androidx.recyclerview:recyclerview:1.2.0-alpha06'
//basequickadapter
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.4'
//utilcodex
implementation 'com.blankj:utilcodex:1.30.4'
//permissionx
implementation 'com.permissionx.guolindev:permissionx:1.4.0'
//调用系统相机相册,拍摄照片、选取图片,进行裁剪、压缩处理图片
implementation 'com.mehayou:photoselector:1.0.3'
//okgo
implementation 'com.lzy.net:okgo:3.0.4'
}
2.基础的搭建完成之后,按照百度的文档来,具体如下:
1.申请一个百度AI开放平台账号;
2.在控制台-文字识别中创建自己的应用,获取对应的app key和secret key(这里的AK和SK使用来进行身份校验的);
3.首先需要的做的是通过AK和SK来获取AccessToken(详情见文档中示例中的Java代码:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu);
4.获取到AccessToken后保存本地,在有效期内不用再次请求AT;
5.接下来就是通过具体的URL来调用对应的识别接口来进行识别(详情见文档中示例代码的Java部分:https://ai.baidu.com/ai-doc/OCR/nk3h7xy2t 其中涉及到的工具类在注释中有对应的下载链接,建议直接下载使用);
6.最后拿到百度给你返回来的result,自己处理后续工作;
注:关于其中需要用的拍照(带有权限申请及处理相关代码)和权限,在上面依赖中自己度一下查看具体的使用即可