baiduOCRRecognizer

来自于:AC模块工作室立即使用

init recognizeGeneralbase recognizeAccurateBasic recognizeGeneral recognizeAccurate recognizeGeneralEnhanced recognizeWebimage recognizeBankCard recognizeIDCard recognizeVehicleLicense recognizeDrivingLicense recognizeLicensePlate recognizeBusinessLicense recognizeReceipt recognizeVatInvoice

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

baiduOCRRecognizer模块封装了百度AI文字识别功能,使用此模块可实现百度通用文字识别、通用文字识别(高精度版)、通用文字识别(含位置信息版)、通用文字识别(高精度含位置版)、通用文字识别(含生僻字版)、网络图片文字识别、身份证识别、银行卡识别、驾驶证识别、行驶证识别、车牌识别、营业执照识别、通用票据识别。。详情请参考网站帮助

使用此模块注意

需要到管理控制台创建应用

注意:本模块 iOS 平台上最低适配系统版本为 iOS 8.0

使用说明:

  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 图片压缩转码错误

init

初始化sdk,先调用此接口进行授权

init({params},callback(ret))

params

appKey:

  • 类型:字符串
  • 描述:应用的appkey
  • 默认:无

appSecret:

  • 类型:布尔类型
  • 描述:应用的appSecret
  • 默认:无

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. state :true , 布尔类型: true(成功) false (失败)
  3. token:'1111', 字符串类型: statetrue返回 token值,iOS不支持此字段
  4. errCode:0, 数字类型: statefalse返回 错误码
  5. errDesc:'' 字符串类型: statefalse返回 错误描述
  6. }

示例代码

  1. var demo = api.require('baiduOCRRecognizer');
  2. demo.init(function(ret){
  3. api.alert({ msg:JSON.stringify(ret)});
  4. });

补充说明

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeGeneralbase

通用文字识别

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

languageType:

  • 类型:字符串
  • 描述:识别语言类型,默认为CHN_ENG。可选值包括: CHN_ENG:中英文混合; ENG:英文; POR:葡萄牙语;FRE:法语;GER:德语; ITA:意大利语;SPA:西班牙语;RUS:俄语;JAP:日语
  • 默认:CHN_ENG

detectLanguage:

  • 类型:布尔类型
  • 描述:是否检测语言,默认不检测。当前支持(中文、英语、日语、韩语)
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性
  1. {
  2. "log_id":8814667417068238186, 数字类型:唯一的log id,用于问题定位
  3. "direction":0, 数字类型: 图像方向,当detect_direction=true时存在。
  4. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  5. "words_result_num":5, 数字类型:识别结果数,表示words_result的元素个数
  6. "words_result":[ 数组类型: 定位和识别结果数组
  7. {"words":"①"}, 字符串类型:识别结果字符串
  8. {"words":"请完善以下信息"},
  9. {"words":"请输入姓名"},
  10. {"words":"(必填"},
  11. {"words":"请输入手机号"}
  12. ]
  13. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo = api.require('baiduOCRRecognizer');
  2. demo.recognizeGeneralbasic({
  3. // path:'widget://image/text.png',
  4. path:'fs://text.jpg',
  5. DetectDirection:true,
  6. //languageType:"JAP",
  7. //detectLanguage:true,
  8. },function(ret){
  9. api.alert({ msg:JSON.stringify(ret)});
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeAccurateBasic

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

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:是否检测图像朝向,默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性
  1. {
  2. "log_id":8814667417068238186, 数字类型:唯一的log id,用于问题定位
  3. "direction":0, 数字类型: 图像方向,当detect_direction=true时存在。
  4. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  5. "words_result_num":5, 数字类型:识别结果数,表示words_result的元素个数
  6. "words_result":[ 数组类型: 定位和识别结果数组
  7. {"words":"①"}, 字符串类型:识别结果字符串
  8. {"words":"请完善以下信息"},
  9. {"words":"请输入姓名"},
  10. {"words":"(必填"},
  11. {"words":"请输入手机号"}
  12. ]
  13. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo = api.require('baiduOCRRecognizer');
  2. demo.recognizeAccurateBasic({
  3. // path:'widget://image/text.png',
  4. path:'fs://text.jpg',
  5. DetectDirection:true,
  6. },function(ret,err){
  7. api.alert({ msg:JSON.stringify(ret)});
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeGeneral

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

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

recognize_granularity:

  • 类型:字符串
  • 描述:是否定位单字符位置,big:不定位单字符位置,默认值;small:定位单字符位置
  • 默认:small

vertexes_location:

  • 类型:布尔类型
  • 描述:是否返回文字外接多边形顶点位置,不支持单字位置。默认为false
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

  • 结果返回字段

direction 数字类型: 图像方向,当detect_direction=true时存在。 1:未定义, 0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270度 log_id 数字类型: 唯一的log id,用于问题定位
words_result 数组类型: 定位和识别结果数组
words_result_num 数字类型: 识别结果数,表示words_result的元素个数
vertexes_location 数组类型: 当前为四个顶点: 左上,右上,右下,左下。当vertexes_location=true时存在 | x 数字类型: 水平坐标(坐标0点为左上角)
y 数字类型: 垂直坐标(坐标0点为左上角) | left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标
width 数字类型: 表示定位位置的长方形的宽度
height 数字类型: 表示定位位置的长方形的高度
words 字符串类型: 识别结果字符串
chars 数组类型: 单字符结果,recognize_granularity=small时存在
location 数组类型: 位置数组(坐标0点为左上角)
left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型:表示定位位置的长方形左上顶点的垂直坐标
width 数字类型:| 表示定位定位位置的长方形的宽度
height 数字类型:表示位置的长方形的高度
char 字符串类型: 单字符识别结果

  1. {
  2. 数字类型: 图像方向,当detect_direction=true时存在。
  3. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  4. direction : 2,
  5. log_id : 676709620, 数字类型:唯一的log id,用于问题定位
  6. words_result : [ { 数组类型: 定位和识别结果数组
  7. location : {
  8. height : 20;
  9. left : 86;
  10. top : 387;
  11. width : 22;
  12. };
  13. words : "N";
  14. },
  15. ],
  16. words_result_num : 1; 数字类型:识别结果数,表示words_result的元素个数
  17. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var replay = api.require('baiduOCRRecognizer');
  2. replay.recognizeGeneral({
  3. path:'fs://text.jpg',
  4. DetectDirection:true,
  5. recognize_granularity:'small',
  6. vertexes_location:true,
  7. },function(ret) {
  8. api.alert({ msg:JSON.stringify(ret)});
  9. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeAccurate

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

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

recognize_granularity:

  • 类型:字符串
  • 描述:是否定位单字符位置,big:不定位单字符位置,默认值;small:定位单字符位置
  • 默认:small

vertexes_location:

  • 类型:布尔类型
  • 描述:是否返回文字外接多边形顶点位置,不支持单字位置。默认为false
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

  • 结果返回字段

direction 数字类型: 图像方向,当detect_direction=true时存在。 1:未定义, 0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270度 log_id 数字类型: 唯一的log id,用于问题定位
words_result 数组类型: 定位和识别结果数组
words_result_num 数字类型: 识别结果数,表示words_result的元素个数
vertexes_location 数组类型: 当前为四个顶点: 左上,右上,右下,左下。当vertexes_location=true时存在 | x 数字类型: 水平坐标(坐标0点为左上角)
y 数字类型: 垂直坐标(坐标0点为左上角) | left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标
width 数字类型: 表示定位位置的长方形的宽度
height 数字类型: 表示定位位置的长方形的高度
words 字符串类型: 识别结果字符串
chars 数组类型: 单字符结果,recognize_granularity=small时存在
location 数组类型: 位置数组(坐标0点为左上角)
left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型:表示定位位置的长方形左上顶点的垂直坐标
width 数字类型:| 表示定位定位位置的长方形的宽度
height 数字类型:表示位置的长方形的高度
char 字符串类型: 单字符识别结果

  1. {
  2. 数字类型: 图像方向,当detect_direction=true时存在。
  3. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  4. direction : 2,
  5. log_id : 676709620, 数字类型:唯一的log id,用于问题定位
  6. words_result : [ { 数组类型: 定位和识别结果数组
  7. location : {
  8. height : 20;
  9. left : 86;
  10. top : 387;
  11. width : 22;
  12. };
  13. words : "N";
  14. },
  15. ],
  16. words_result_num : 1; 数字类型:识别结果数,表示words_result的元素个数
  17. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var replay = api.require('baiduOCRRecognizer');
  2. replay.recognizeAccurate({
  3. path:'fs://text.jpg',
  4. DetectDirection:true,
  5. recognize_granularity:'small',
  6. vertexes_location:true,
  7. },function(ret) {
  8. api.alert({ msg:JSON.stringify(ret)});
  9. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeGeneralEnhanced

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

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

    callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性
  1. {
  2. "log_id":8814667417068238186, 数字类型:唯一的log id,用于问题定位
  3. "direction":0, 数字类型: 图像方向,当detect_direction=true时存在。
  4. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  5. "words_result_num":5, 数字类型:识别结果数,表示words_result的元素个数
  6. "words_result":[ 数组类型: 定位和识别结果数组
  7. {"words":"①"}, 字符串类型:识别结果字符串
  8. {"words":"请完善以下信息"},
  9. {"words":"请输入姓名"},
  10. {"words":"(必填"},
  11. {"words":"请输入手机号"}
  12. ]
  13. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeGeneralEnhanced({
  3. path:'fs://text.jpg',
  4. DetectDirection:true,
  5. },function(ret,err) {
  6. api.alert({ msg:JSON.stringify(ret)});
  7. api.alert({ msg:JSON.stringify(err)});
  8. }
  9. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeWebimage

recognizeWebimage

网络图片文字识别

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

detectLanguage:

  • 类型:布尔类型
  • 描述:是否检测语言,默认不检测。当前支持(中文、英语、日语、韩语)
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性
  1. {
  2. "log_id":8814667417068238186, 数字类型:唯一的log id,用于问题定位
  3. "direction":0, 数字类型: 图像方向,当detect_direction=true时存在。
  4. 1:未定义,0:正向,- 1: 逆时针90度,- 2:逆时针180度,- 3:逆时针270
  5. "words_result_num":5, 数字类型:识别结果数,表示words_result的元素个数
  6. "words_result":[ 数组类型: 定位和识别结果数组
  7. {"words":"①"}, 字符串类型:识别结果字符串
  8. {"words":"请完善以下信息"},
  9. {"words":"请输入姓名"},
  10. {"words":"(必填"},
  11. {"words":"请输入手机号"}
  12. ]
  13. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeWebimage({
  3. path:'fs://text.jpg',
  4. DetectDirection:true,
  5. },function(ret,err) {
  6. api.alert({ msg:JSON.stringify(ret)});
  7. api.alert({ msg:JSON.stringify(err)});
  8. }
  9. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeBankCard

银行卡识别

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

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型:唯一的log id,用于问题定位 result Object 定位和识别结果数组 bank_card_number 字符串类型: 银行卡识别结果 bank_name 字符串类型: 银行名,不能识别时为空 bank_card_type 数字类型: 银行卡类型,0:不能识别; 1: 借记卡; 2: 信用卡

  1. {
  2. "log_id": 3207866271;
  3. result: {
  4. "bank_card_number": "6226 2288 8888 8888",
  5. "bank_card_type": 1,
  6. "bank_name": "\U5de5\U5546\U94f6\U884c"
  7. };
  8. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeBankCard({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeIDCard

身份证识别 recognizeIDCard({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

accuracy:

  • 类型:字符串
  • 描述:精准度 取值 auto、normal、high 精度越高,速度越慢。
  • 默认:auto

isFront:

  • 类型:布尔类型
  • 描述:true:身份证正面,false:身份证背面
  • 默认:true

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

direction 数字类型: 图像方向,当detect_direction=true时存在。-1:未定义,0:正向,1: 逆时针90度, 2:逆时 针180度, 3:逆时针270度 log_id 数字类型: 唯一的log id,用于问题定位
words_result 数组类型: 定位和识别结果数组,数组元素的key是身份证的主体字段(正面支持:住址、公民身份号码、出生、姓名、性别、民族,背面支持:签发机关、签发日期、失效日期)。只返回识别出的字段。若身份证号码校验不通过,则不返回 words_result_num 数字类型: 识别结果数,表示words_result的元素个数
location 数组类型: 位置数组(坐标0点为左上角)
left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标
width 数字类型: 表示定位位置的长方形的宽度
height 数字类型:表示定位位置的长方形的高度
words 字符串类型: 识别结果字符串

  1. {
  2. "log_id": 7037721,
  3. "direction": 0,
  4. "words_result_num": 2,
  5. "words_result": {
  6. "住址": {
  7. "location": {
  8. "left": 227,
  9. "top": 235,
  10. "width": 229,
  11. "height": 51
  12. },
  13. "words": "湖北省天门市渔薪镇杨咀村一组2号",
  14. }
  15. ...
  16. }
  17. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeIDCard({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeVehicleLicense

行驶证识别 recognizeVehicleLicense({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组
words 字符串类型: 识别结果字符串

  1. {
  2. "errno": 0,
  3. "msg": "success",
  4. "data": {
  5. "words_result_num": 10,
  6. "words_result": {
  7. "品牌型号": {
  8. "words": "保时捷GT37182RUCRE"
  9. },
  10. "发证日期": {
  11. "words": "20160104"
  12. },
  13. "使用性质": {
  14. "words": "非营运"
  15. },
  16. "发动机号码": {
  17. "words": "20832"
  18. },
  19. "号牌号码": {
  20. "words": "苏A001"
  21. },
  22. "所有人": {
  23. "words": "圆圆"
  24. },
  25. "住址": {
  26. "words": "南京市江宁区弘景大道"
  27. },
  28. "注册日期": {
  29. "words": "20160104"
  30. },
  31. "车辆识别代号": {
  32. "words": "HCE58"
  33. },
  34. "车辆类型": {
  35. "words": "小型轿车"
  36. }
  37. }
  38. }
  39. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeVehicleLicense({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeDrivingLicense

驾驶证识别 recognizeDrivingLicense({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

DetectDirection:

  • 类型:布尔类型
  • 描述:默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:true:检测朝向; false:不检测朝向。
  • 默认:false

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组
words 字符串类型: 识别结果字符串

  1. {
  2. "errno": 0,
  3. "msg": "success",
  4. "data": {
  5. "words_result_num": 10,
  6. "words_result": {
  7. "证号": {
  8. "words": "3208231999053090"
  9. },
  10. "有效期限": {
  11. "words": "6年"
  12. },
  13. "准驾车型": {
  14. "words": "B2"
  15. },
  16. "有效起始日期": {
  17. "words": "20101125"
  18. },
  19. "住址": {
  20. "words": "江苏省南通市海门镇秀山新城"
  21. },
  22. "姓名": {
  23. "words": "小欧欧"
  24. },
  25. "国籍": {
  26. "words": "中国"
  27. },
  28. "出生日期": {
  29. "words": "19990530"
  30. },
  31. "性别": {
  32. "words": "男"
  33. },
  34. "初次领证日期": {
  35. "words": "20100125"
  36. }
  37. }
  38. }
  39. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeDrivingLicense({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeLicensePlate

车牌识别 recognizeLicensePlate({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组 字符串类型: 识别结果字符串
color  字符串类型: 车牌颜色,如”blue”

  1. {
  2. "words_result":{
  3. "color":"blue",
  4. "number":"粤FQ0000"
  5. },
  6. "log_id":2783673432
  7. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeLicensePlate({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeBusinessLicense

营业执照识别 recognizeBusinessLicense({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组 字符串类型: 识别结果字符串

left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标
width 数字类型: 表示定位位置的长方形的宽度
height 数字类型: 表示定位位置的长方形的高度
words 字符串类型: 识别结果字符串

  1. {
  2. "log_id": 490058765,
  3. "words_result": {
  4. "单位名称": {
  5. "location": {
  6. "left": 500,
  7. "top": 479,
  8. "width": 618,
  9. "height": 54
  10. },
  11. "words": "袁氏财团有限公司"
  12. },
  13. "法人": {
  14. "location": {
  15. "left": 938,
  16. "top": 557,
  17. "width": 94,
  18. "height": 46
  19. },
  20. "words": "袁运筹"
  21. },
  22. "地址": {
  23. "location": {
  24. "left": 503,
  25. "top": 644,
  26. "width": 574,
  27. "height": 57
  28. },
  29. "words": "江苏省南京市中山东路19号"
  30. },
  31. "有效期": {
  32. "location": {
  33. "left": 779,
  34. "top": 1108,
  35. "width": 271,
  36. "height": 49
  37. },
  38. "words": "2015年02月12日"
  39. },
  40. "证件编号": {
  41. "location": {
  42. "left": 1219,
  43. "top": 357,
  44. "width": 466,
  45. "height": 39
  46. },
  47. "words": "苏餐证字(2019)第666602666661号"
  48. },
  49. "社会信用代码": {
  50. "location": {
  51. "left": 0,
  52. "top": 0,
  53. "width": 0,
  54. "height": 0
  55. },
  56. "words": "无"
  57. }
  58. },
  59. "words_result_num": 6
  60. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeBusinessLicense({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeReceipt

通用票据识别 recognizeReceipt({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组 字符串类型: 识别结果字符串

left 数字类型: 表示定位位置的长方形左上顶点的水平坐标
top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标
width 数字类型: 表示定位位置的长方形的宽度
height 数字类型: 表示定位位置的长方形的高度
words 字符串类型: 识别结果字符串
location object: 位置数组(坐标0点为左上角) | | | chars 数组类型: 单字符结果,recognize_granularity=small时存在 | | location 数组类型: 位置数组(坐标0点为左上角) | | left 数字类型: 表示定位位置的长方形左上顶点的水平坐标 | | top 数字类型: 表示定位位置的长方形左上顶点的垂直坐标 | | width 数字类型:表示定位定位位置的长方形的宽度 | | height 数字类型:表示位置的长方形的高度 | | char 数字类型:单字符识别结果 | | probability object类型: 识别结果中每一行的置信度值,包含average:行置信度平均值,variance:行置信度方差,min:行置信度最小值 |

  1. {
  2. "log_id": 2661573626,
  3. "words_result": [
  4. {
  5. "location": {
  6. "left": 10,
  7. "top": 3,
  8. "width": 121,
  9. "height": 24
  10. },
  11. "words": "姓名:小明明",
  12. "chars": [
  13. {
  14. "location": {
  15. "left": 16,
  16. "top": 6,
  17. "width": 17,
  18. "height": 20
  19. },
  20. "char": "姓"
  21. },
  22. {
  23. "location": {
  24. "left": 35,
  25. "top": 6,
  26. "width": 17,
  27. "height": 20
  28. },
  29. "char": "名"
  30. },
  31. {
  32. "location": {
  33. "left": 55,
  34. "top": 6,
  35. "width": 11,
  36. "height": 20
  37. },
  38. "char": ":"
  39. },
  40. {
  41. "location": {
  42. "left": 68,
  43. "top": 6,
  44. "width": 17,
  45. "height": 20
  46. },
  47. "char": "小"
  48. },
  49. {
  50. "location": {
  51. "left": 87,
  52. "top": 6,
  53. "width": 17,
  54. "height": 20
  55. },
  56. "char": "明"
  57. },
  58. {
  59. "location": {
  60. "left": 107,
  61. "top": 6,
  62. "width": 17,
  63. "height": 20
  64. },
  65. "char": "明"
  66. }
  67. ]
  68. }
  69. ],
  70. "words_result_num": 2
  71. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeReceipt({
  3. path:'fs://text.jpg',
  4. },function(ret,err) {
  5. api.alert({ msg:JSON.stringify(ret)});
  6. api.alert({ msg:JSON.stringify(err)});
  7. }
  8. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeVatInvoice

增值税票据识别 recognizeVatInvoice({params}, callback(ret,err))

params

path:

  • 类型:字符串
  • 描述:图片路径,支持fs://、widget://等文件路径协议或绝对路径。
  • 默认:无

accuracy:

  • 类型:字符串
  • 描述:normal对应普通精度模型,识别速度较快,high对应高精度识别模型,
  • 默认:normal

callback(ret,err)

ret:

  • 类型:JSON对象
  • 内部字段:
  • 注意:通常返回结果取words_result为一个JSON对象,但是不排除为数组的可能性

结果参数字段:

log_id 数字类型: 唯一的log id,用于问题定位
words_result_num 数字类型: 识别结果数,表示words_result的元素个数 words_result 数组类型: 识别结果数组 字符串类型: 识别结果字符串 InvoiceType 字符串类型:发票种类名称
InvoiceCode 数字类型:发票代码
InvoiceNum 数字类型:发票号码 InvoiceDate 数字类型:开票日期 TotalAmount 数字类型:合计金额 TotalTax 数字类型:合计税额 AmountInFiguers 数组类型:价税合计(小写) AmountInWords object类型:价税合计(大写) CheckCode 字符串类型: 校验码 SellerName 数字类型:销售方名称 SellerRegisterNum 数字类型:销售方纳税人识别号 PurchaserName 数字类型: 购方名称 PurchaserRegisterNum 数字类型: 购方纳税人识别号 CommodityName object[]类型: 货物名称 -row 数字类型: 行号 -word 字符串类型: 内容 CommodityType object[]类型: 规格型号 -row 数字类型: 行号 -word 字符串类型 内容 CommodityUnit object[]类型: 单位 -row 数字类型: 行号 -word 字符串类型 内容 CommodityNum object[]类型: 数量 -row 数字类型: 行号 -word 字符串类型 内容 CommodityPrice object[]类型: 单价 -row 数字类型: 行号 -word 字符串类型 内容 CommodityAmount object[]类型: 金额 -row 数字类型: 行号 -word 是 string 内容 CommodityTaxRate object[]类型: 税率 -row 数字类型: 行号 -word 字符串类型 内容 CommodityTax object[]类型: 税额 -row 数字类型: 行号 -word 字符串类型 内容

  1. "log_id": "5425496231209218858",
  2. "words_result_num": 29,
  3. "words_result": {
  4. "InvoiceNum": "14641426",
  5. "SellerName": "上海易火广告传媒有限公司",
  6. "CommodityTaxRate": [
  7. {
  8. "word": "6%",
  9. "row": "1"
  10. }
  11. ],
  12. "SellerBank": "中国银行南翔支行446863841354",
  13. "Checker": ":沈园园",
  14. "TotalAmount": "94339.62",
  15. "CommodityAmount": [
  16. {
  17. "word": "94339.62",
  18. "row": "1"
  19. }
  20. ],
  21. "InvoiceDate": "2016年06月02日",
  22. "CommodityTax": [
  23. {
  24. "word": "5660.38",
  25. "row": "1"
  26. }
  27. ],
  28. "PurchaserName": "百度时代网络技术(北京)有限公司",
  29. "CommodityNum": [
  30. {
  31. "word": "",
  32. "row": "1"
  33. }
  34. ],
  35. "PurchaserBank": "招商银行北京分行大屯路支行8661820285100030",
  36. "Remarks": "告传",
  37. "Password": "074/45781873408>/6>8>65*887676033/51+<5415>9/32--852>1+29<65>641-5>66<500>87/*-34<943359034>716905113*4242>",
  38. "SellerAddress": ":嘉定区胜辛南路500号15幢1161室55033753",
  39. "PurchaserAddress": "北京市海淀区东北旺西路8号中关村软件园17号楼二属A2010-59108001",
  40. "InvoiceCode": "3100153130",
  41. "CommodityUnit": [
  42. {
  43. "word": "",
  44. "row": "1"
  45. }
  46. ],
  47. "Payee": ":徐蓉",
  48. "PurchaserRegisterNum": "110108787751579",
  49. "CommodityPrice": [
  50. {
  51. "word": "",
  52. "row": "1"
  53. }
  54. ],
  55. "NoteDrawer": "沈园园",
  56. "AmountInWords": "壹拾万圆整",
  57. "AmountInFiguers": "100000.00",
  58. "TotalTax": "5660.38",
  59. "InvoiceType": "专用发票",
  60. "SellerRegisterNum": "913101140659591751",
  61. "CommodityName": [
  62. {
  63. "word": "信息服务费",
  64. "row": "1"
  65. }
  66. ],
  67. "CommodityType": [
  68. {
  69. "word": "",
  70. "row": "1"
  71. }
  72. ]
  73. }
  74. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. errCode : 0, //数值类型;错误码
  3. errDesc : '', //字符串类型;错误描述
  4. }

示例代码

  1. var demo =api.require('baiduOCRRecognizer');
  2. demo.recognizeVatInvoice({
  3. path:'fs://text.jpg',
  4. accuracy:'high',
  5. },function(ret,err) {
  6. api.alert({ msg:JSON.stringify(ret)});
  7. api.alert({ msg:JSON.stringify(err)});
  8. }
  9. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本