baiduOCR

来自于:开发者立即使用

initAccessToken recognizeGeneralBasic recognizeAccurateBasic recognizeGeneral recognizeAccurate recognizeGeneralEnhanced recognizeWebimage recognizeBankCard recognizeIDCard recognizeVehicleLicense recognizeDrivingLicense recognizeLicensePlate recognizeBusinessLicense recognizeReceipt

概述

baiduOCR模块封装了百度AI文字识别功能,使用此模块可实现百度通用文字识别、通用文字识别(高精度版)、通用文字识别(含位置信息版)、通用文字识别(高精度含位置版)、通用文字识别(含生僻字版)、网络图片文字识别、身份证识别、银行卡识别、驾驶证识别、行驶证识别、车牌识别、营业执照识别、通用票据识别。暂仅支持 android 平台。

使用说明:

  1. 1、首先要在百度AI开放平台注册账号;
  2. 2、创建应用,选择需要使用文字识别选项,然后获取API KeySecret Key,后面需要使用aksk进行百度身份验证;
  3. 3、有些选项是需要付费的,若没有付费进行使用,调用相应的接口会返回错写信息;
  4. 4、具体操作可参考百度AI开发平台文档;

身份验证错误说明:

  1. 对应的是错误码、错误信息、说明
  2. 110 Access token invalid or no longer valid Access Token过期失效
  3. 283501 License file check error 授权文件不匹配
  4. 283502 App identifier unmatch BundleId不匹配
  5. 283503 License file not exists 请确认aip.licence文件存在于assets文件夹中
  6. 283504 Network error 网络请求失败
  7. 283505 Server illegal response 服务器返回数据异常
  8. 283506 Load jni so library error JNI加载异常
  9. 283601 Server authentication error 身份验证错误
  10. 283602 Authentication time error 时间戳不正确,可能是设备时间异常
  11. 283604 App identifier unmatch 错误的PackageName或者BundleId
  12. 283700 Server internal error 服务器内部错误

识别验证错误说明:

  1. 对应的是错误码、错误信息、说明
  2. 216015 module closed 模块关闭
  3. 216100 invalid param 非法参数
  4. 216101 not enough param 参数数量不够
  5. 216102 service not support 业务不支持
  6. 216103 param too long 参数太长
  7. 216110 appid not exist APP ID不存在
  8. 216111 invalid userid 非法用户ID
  9. 216200 empty image 空的图片
  10. 216201 image format error 图片格式错误
  11. 216202 image size error 图片大小错误
  12. 216300 db error DB错误
  13. 216400 backend error 后端系统错误
  14. 216401 internal error 内部错误
  15. 216500 unknown error 未知错误
  16. 216600 id number format error 身份证的ID格式错误
  17. 216601 id number and name not match 身份证的ID和名字不匹配
  18. 216630 recognize error 识别错误
  19. 216631 recognize bank card error 识别银行卡错误(通常为检测不到银行卡)
  20. 216632 ocr unknown error
  21. 216633 recognize idcard error 识别身份证错误(通常为检测不到身份证)
  22. 216634 detect error 检测错误
  23. 216635 get mask error 获取mask图片错误
  24. 282000 logic internal error 业务逻辑层内部错误
  25. 282001 logic backend error 业务逻辑层后端服务错误
  26. 282100 image transcode error 图片压缩转码错误

initAccessToken

身份验证

initAccessToken({params},callback(ret, err))

params

ak:

  • 类型:字符串
  • 描述:API Key
  • 说明:字段必填,不填会返回错误信息msg

sk:

  • 类型:字符串
  • 描述:Secret Key
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. status: //true or false
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. ak: 'your ak',
  4. sk: 'your sk',
  5. };
  6. baiduOCR.initAccessToken(param, function (ret, err) {
  7. if (ret.status) {
  8. console.log(ret.status);
  9. alert('身份验证成功');
  10. } else {
  11. console.log(err.msg);
  12. alert('错误信息:' + err.msg);
  13. }
  14. });

补充说明

请确保参数ak、sk正确,身份验证在使用前验证一次即可,或是每次请求都先验证也可以。(程序中验证过一次,第二次会直接返回true)

可用性

Android系统

可提供的1.0.0及更高版本

recognizeGeneralBasic

通用文字识别

recognizeGeneralBasic({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeGeneralBasic(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeAccurateBasic

通用文字识别(高精度版)

recognizeAccurateBasic({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeAccurateBasic(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeGeneral

通用文字识别(含位置信息版)

recognizeGeneral({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeGeneral(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeAccurate

通用文字识别(高精度含位置信息版)

recognizeAccurate({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeAccurate(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeGeneralEnhanced

通用文字识别(含生僻字版)

recognizeGeneralEnhanced({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeGeneralEnhanced(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。 这个模块目前是付费模块,所以免费用户调用接口会返回错误。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeWebimage

网络图片文字识别

recognizeWebimage({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeWebimage(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeBankCard

银行卡识别

recognizeBankCard({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeBankCard(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeIDCard

身份证识别

recognizeIDCard({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

idCardSide:

  • 类型:字符串
  • 描述:身份证正面反面(正面:front,反面:back)
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. idCardSide: 'front'//正面,反面为back
  5. };
  6. baiduOCR.recognizeIDCard(param, function (ret, err) {
  7. if (ret.status) {
  8. console.log(ret.content);
  9. alert('识别的数据' + '\n' + ret.content);
  10. } else {
  11. console.log(err.msg);
  12. alert('错误信息:' + err.msg);
  13. }
  14. });

补充说明

请确保参数filePath、idCardSide正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeVehicleLicense

行驶证识别

recognizeVehicleLicense({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeVehicleLicense(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeDrivingLicense

驾驶证识别

recognizeDrivingLicense({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeDrivingLicense(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeLicensePlate

车牌识别

recognizeLicensePlate({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeLicensePlate(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeBusinessLicense

营业执照识别

recognizeBusinessLicense({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeBusinessLicense(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本

recognizeReceipt

通用票据识别

recognizeReceipt({params},callback(ret, err))

params

filePath:

  • 类型:字符串
  • 描述:识别图片路径
  • 说明:字段必填,不填会返回错误信息msg

callback(ret, err)

ret:

  • 类型:JSON 对象

内部字段:

  1. {
  2. content: //返回识别的json字符串数据
  3. }

err:

  • 类型:JSON 对象

内部字段:

  1. {
  2. msg: //返回错误信息
  3. }

示例代码

  1. var baiduOCR= api.require('baiduOCR');
  2. var param = {
  3. filePath: 'your filePath',
  4. };
  5. baiduOCR.recognizeReceipt(param, function (ret, err) {
  6. if (ret.status) {
  7. console.log(ret.content);
  8. alert('识别的数据' + '\n' + ret.content);
  9. } else {
  10. console.log(err.msg);
  11. alert('错误信息:' + err.msg);
  12. }
  13. });

补充说明

请确保参数filePath正确,返回的失败json字符串,可以在前端进行JSON.parse(ret.content)转换,然后根据你自己的需求获取你想要的数据。

可用性

Android系统

可提供的1.0.0及更高版本