bgnUITencentOCR

来自于:布谷鸟模块工作室立即使用

bc bizlicense creditcard driverlicense general handwriting idcard plate open startScan close show hide

概述

模块概述

bgnUITencentOCR封装了腾讯AI开放平台的OCR解析,腾讯提供永久免费的访问策略,目前该腾讯AI开放平台的OCR解析支持:身份证OCR、行驶证驾驶证OCR、通用OCR、营业执照OCR、银行卡OCR、手写体OCR、车牌OCR、名片OCR的解析策略。

该模块是bgnTencentOCR的增强版,兼容bgnTencentOCR的所有功能,新模块主要提供了调用摄像头进行实时OCR解析的方法,对于不需要该功能的用户建议使用bgnTencentOCR模块

模块使用攻略

使用之前须从腾讯AI开放平台 https://ai.qq.com 申请开发者账号并创建应用,获取 appIdappKey,并将需要的解析能力接入申请的应用。

使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 名称:bgnUITencentOCR
  • 参数:appKey、appSecret
  • 配置示例:
  1. <feature name="bgnUITencentOCR">
  2. <param name="appId" value="87522136541"/>
  3. <param name="appKey" value="ZWX6YTQcX1asw0m8e5"/>
  4. </feature>

模块接口

bc

名片OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrbcocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.bc({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

bizlicense

营业执照OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrbizlicenseocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.bizlicense({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

creditcard

银行卡OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrcreditcardocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.creditcard({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......",
  4. type:0
  5. },function(ret, err) {
  6. if (ret.status) {
  7. alert(JSON.stringify(ret));
  8. }else{
  9. alert(JSON.stringify(err));
  10. }
  11. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

driverlicense

行驶证驾驶证OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

type:

  • 类型:数值
  • 描述:(必填项)识别类型,0-行驶证识别,1-驾驶证识别。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrdriverlicenseocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.driverlicense({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......",
  4. type:0
  5. },function(ret, err) {
  6. if (ret.status) {
  7. alert(JSON.stringify(ret));
  8. }else{
  9. alert(JSON.stringify(err));
  10. }
  11. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

general

通用OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrgeneralocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.general({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

handwriting

手写体OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/handwritingocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.handwriting({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

idcard

银行卡OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据。

card_type:

  • 类型:数值
  • 描述:(必填项)身份证图片类型,0-正面,1-反面。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrcreditcardocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.idcard({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

plate

车牌OCR解析

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

params

image:

  • 类型:字符串
  • 描述:(必填项)base64格式图片数据或者图片url地址。

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false,是否解析成功
  3. data:JSON格式的数据对像,请参照https://ai.qq.com/doc/plateocr.shtml
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. //错误码:参考https://ai.qq.com/doc/returncode.shtml
  4. msg: //错误消息
  5. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.plate({
  3. image:"/9j/4Rk8RXhpZgAATU0AKg......"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

open

打开摄像头获取实时视频预览

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

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)模块的位置及尺寸
  • 内部字段:

    1. {
    2. x: 0, //(可选项)数字类型;地图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
    3. y: 0, //(可选项)数字类型;地图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
    4. w: 320, //(可选项)数字类型;地图的宽度;默认:所属的 Window 或 Frame 的宽度
    5. h: 480 //(可选项)数字类型;地图的高度;默认:所属的 Window 或 Frame 的高度
    6. }

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)模块是否随所属 window 或 frame 滚动
  • 默认值:true(不随之滚动)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. msg: //错误消息
  4. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.open({
  3. rect: {
  4. x: 0,
  5. y: 0,
  6. w: 320,
  7. h: 300
  8. },
  9. fixedOn: api.frameName,
  10. fixed: true
  11. },function(ret, err) {
  12. if (ret.status) {
  13. alert("摄像头打开成功");
  14. }
  15. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

startScan

开始识别证照,调用该方法前需要先成功调用open方法 注意:由于采用的是服务端识别技术,因此识别时间长稍微有点长,一般在5~10秒内返回;同时本次证照识别成功后会自动停止扫描,开发者如果需要批量进行扫描可以在本次扫描结果成功返回后再次调用该接口

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

params

mode:

  • 类型:字符串
  • 描述:(必填项)要识别的证照类型,可选项目如下:

    1. "bc", "bizlicense", "creditcard","driverlicense", "general", "handwriting", "idcard", "plate"

timeout:

  • 类型:整数
  • 描述:(可选项)识别超时时长(单位秒)
  • 默认:30秒

type:

  • 类型:整数
  • 描述:(可选项)当识别证照类型是行驶证驾驶证时(0表示行驶证,1表示驾驶证)

card_type:

  • 类型:整数
  • 描述:(可选项)当识别证照类型是身份证时(0表示正面,1表示反面)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. data:Object, //JSON对像;识别成功后返回,内部结构与其它非UI接口返回值相同
  4. image:imageBase64,//字符串;识别成功后返回,当前识别成功的图片快照的base64字串
  5. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. code: 0 //数字类型;
  3. msg: //错误消息
  4. }

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.startScan({
  3. mode: "bizlicense"
  4. },function(ret, err) {
  5. if (ret.status) {
  6. alert(JSON.stringify(ret));
  7. }else{
  8. alert(JSON.stringify(err));
  9. }
  10. });

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

close

关闭摄像头预览

close()

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.close();

可用性

Android系统

可提供的1.0.0及更高版本

show

显示摄像头预览

show()

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.show();

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本

hide

隐藏摄像头预览

hide()

示例代码

  1. var OCR= api.require('bgnUITencentOCR');
  2. OCR.hide();

可用性

Android系统,iOS系统

可提供的1.1.0及更高版本