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 申请开发者账号并创建应用,获取 appId和appKey,并将需要的解析能力接入申请的应用。
使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:
- 名称:bgnUITencentOCR
- 参数:appKey、appSecret
- 配置示例:
<feature name="bgnUITencentOCR">
<param name="appId" value="87522136541"/>
<param name="appKey" value="ZWX6YTQcX1asw0m8e5"/>
</feature>
模块接口
bc
名片OCR解析
bc({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrbcocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.bc({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
bizlicense
营业执照OCR解析
bizlicense({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrbizlicenseocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.bizlicense({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
creditcard
银行卡OCR解析
creditcard({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrcreditcardocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.creditcard({
image:"/9j/4Rk8RXhpZgAATU0AKg......",
type:0
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
driverlicense
行驶证驾驶证OCR解析
driverlicense({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
type:
- 类型:数值
- 描述:(必填项)识别类型,0-行驶证识别,1-驾驶证识别。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrdriverlicenseocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.driverlicense({
image:"/9j/4Rk8RXhpZgAATU0AKg......",
type:0
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
general
通用OCR解析
general({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrgeneralocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.general({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
handwriting
手写体OCR解析
handwriting({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/handwritingocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.handwriting({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
idcard
银行卡OCR解析
idcard({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据。
card_type:
- 类型:数值
- 描述:(必填项)身份证图片类型,0-正面,1-反面。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/ocrcreditcardocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.idcard({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
plate
车牌OCR解析
plate({params}, callback(ret, err))
params
image:
- 类型:字符串
- 描述:(必填项)base64格式图片数据或者图片url地址。
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false,是否解析成功
data:JSON格式的数据对像,请参照https://ai.qq.com/doc/plateocr.shtml
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
//错误码:参考https://ai.qq.com/doc/returncode.shtml
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.plate({
image:"/9j/4Rk8RXhpZgAATU0AKg......"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
open
打开摄像头获取实时视频预览
open({params}, callback(ret, err))
params
rect:
- 类型:JSON 对象
- 描述:(可选项)模块的位置及尺寸
内部字段:
{
x: 0, //(可选项)数字类型;地图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
y: 0, //(可选项)数字类型;地图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
w: 320, //(可选项)数字类型;地图的宽度;默认:所属的 Window 或 Frame 的宽度
h: 480 //(可选项)数字类型;地图的高度;默认:所属的 Window 或 Frame 的高度
}
fixedOn:
- 类型:字符串类型
- 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
- 默认:模块依附于当前 window
fixed:
- 类型:布尔
- 描述:(可选项)模块是否随所属 window 或 frame 滚动
- 默认值:true(不随之滚动)
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true //布尔型;true||false
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.open({
rect: {
x: 0,
y: 0,
w: 320,
h: 300
},
fixedOn: api.frameName,
fixed: true
},function(ret, err) {
if (ret.status) {
alert("摄像头打开成功");
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
startScan
开始识别证照,调用该方法前需要先成功调用open方法 注意:由于采用的是服务端识别技术,因此识别时间长稍微有点长,一般在5~10秒内返回;同时本次证照识别成功后会自动停止扫描,开发者如果需要批量进行扫描可以在本次扫描结果成功返回后再次调用该接口
startScan({params}, callback(ret, err))
params
mode:
- 类型:字符串
描述:(必填项)要识别的证照类型,可选项目如下:
"bc", "bizlicense", "creditcard","driverlicense", "general", "handwriting", "idcard", "plate"
timeout:
- 类型:整数
- 描述:(可选项)识别超时时长(单位秒)
- 默认:30秒
type:
- 类型:整数
- 描述:(可选项)当识别证照类型是行驶证驾驶证时(0表示行驶证,1表示驾驶证)
card_type:
- 类型:整数
- 描述:(可选项)当识别证照类型是身份证时(0表示正面,1表示反面)
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true, //布尔型;true||false
data:Object, //JSON对像;识别成功后返回,内部结构与其它非UI接口返回值相同
image:imageBase64,//字符串;识别成功后返回,当前识别成功的图片快照的base64字串
}
err:
- 类型:JSON 对象
- 内部字段:
{
code: 0 //数字类型;
msg: //错误消息
}
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.startScan({
mode: "bizlicense"
},function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
close
关闭摄像头预览
close()
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.close();
可用性
Android系统
可提供的1.0.0及更高版本
show
显示摄像头预览
show()
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.show();
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本
hide
隐藏摄像头预览
hide()
示例代码
var OCR= api.require('bgnUITencentOCR');
OCR.hide();
可用性
Android系统,iOS系统
可提供的1.1.0及更高版本