微信小程序基于万象优图实现图片 OCR

随着小程序开放越来越多的类目,越来越多的企业将各种各样的需求开发成小程序,而基于图像识别的名片识别、身份证识别或者普通文字的 OCR 也越来越多的被应用于各种场景中,基于此,腾讯云微信小程序解决方案团队将腾讯万象优图的身份证识别和文字印刷体 OCR 封装进 wafer2-node-sdk 中,使得用户可以快速调用使用图片识别。

现在,通过图像识别 Demo,一起来完成身份证和印刷体识别的快速开发吧!

首先需要到腾讯云的万象优图控制台开通万象优图功能,并且创建 Bucket。创建的 Bucket 最好为公有读私有写的权限。

以下文档基于图像识别 Demo 进行介绍,目前图像识别接口只有 Node.js SDK 提供。

打开server/config.js,添加上qcloudAppIdqcloudSecretIdqcloudSecretKey三个配置项,并在代码目录中打开 CMD,运行如下代码:

cd server && npm i

安装完成依赖,选择小程序开发者工具右上角的【腾讯云】按钮,点击【上传测试环境】上传代码到测试环境中,一键部署程序。你也可以自行部署代码,部署过程同《自行部署 Node.js Demo》,这里不再介绍。

查阅 Wafer Node.js SDK 的 API 文档,可以看到 SDK 提供了两个万象优图接口,分别是身份证识别接口和印刷体 OCR 接口。

身份证识别

直接调用 ci.idCardIdentify 即可快速识别身份证,根据文档,该接口的第一个参数为要识别的图片地址。我们可以提前使用 SDK 的图片上传功能,将图片上传到 COS 上,获取图片的地址(Bucket 必须为公有读私有写)之后,再调用身份证识别接口。接口的第二个参数为万象优图的 Bucket,第三个参数为要识别的身份证的正面还是反面(0 代表带头像那面,1 代表国徽那面)

const data = await uploader(ctx.req);
const { data: identifyResult } = await ci.idCardIdentify([data.imgUrl], 'qcloudtest', 0);

同时,身份证识别接口支持批量识别,你可以提供多个图片地址进行识别。

const { data: identifyResult } = await ci.idCardIdentify(['https://xxx.img.cn/xxx1.jpg', 'https://xxx.img.cn/xxx2.jpg'], 'qcloudtest', 0);

识别的结果直接透传万象优图接口返回值,具体数据结构可以参考:https://cloud.tencent.com/document/product/460/6895

普通印刷体识别

调用 ci.ocr 即可识别印刷体文字,接口参数与身份证识别类似,不过需要注意的是 OCR 接口仅支持对单个图片的识别,一次只能识别一张图片。

const data = await uploader(ctx.req);
const { data: ocrResult } = await ci.ocr(data.imgUrl, 'qcloudtest', 0);

识别的结果直接透传万象优图接口返回值,具体数据结构可以参考:https://cloud.tencent.com/document/product/460/9519

以上就是我们使用 SDK 如何快速开发身份证和图像识别,你也可以使用我们的 Demo 体验一下身份证识别和印刷体识别。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IMWeb前端团队

sChart.js:一个小型简单的图表库

本文作者:IMWeb 林鑫 原文出处:IMWeb社区 未经同意,禁止转载 介绍 sChart.js 作为一个小型简单的图表库,没有过多的图表类型,只包...

303100
来自专栏CVer

ECCV 2018 776篇论文一键下载

昨天推送了ECCV 2018 收录论文名单全公布,看到很多CVer纷纷转发至朋友圈,Amusi真的很开心!

36420
来自专栏CVer

重磅:TensorFlow实现YOLOv3(内含福利)

YOLO官网:YOLO: Real-Time Object Detection keras-yolo3:https://github.com/qqwweee/k...

13.5K200
来自专栏日常学python

我爬取了37000条球迷评论,知道了这场比赛的重要信息

这两天看恰好有nba决赛,是球迷的你肯定不会错过的,更何况今年的西部决赛是火箭对战勇士,今年的火箭是很强的,因为没到关键时候总会有人站出来。当然,勇士也是挺强的...

11920
来自专栏嵌入式程序猿

如何计算CAN通信波特率

CAN通信波特率的计算是一个难点,要正确计算设置CAN波特率。CAN2.0协议中定义标称位速率为一理想的发送器在没有重新同步的情况下,每秒发送的位数量,也就是我...

38780
来自专栏人工智能头条

一边吃瓜看球,一边完成AI应用实践——手写体识别入门

22120
来自专栏FreeBuf

使用Python和Tesseract来识别图形验证码

各位在企业中做Web漏洞扫描或者渗透测试的朋友,可能会经常遇到需要对图形验证码进行程序识别的需求。很多时候验证码明明很简单(对于非互联网企业,或者企业内网中的应...

79650
来自专栏灯塔大数据

每周学点大数据 | No.47 BSP 模型下的单源最短路径

No.47期 BSP 模型下的单源最短路径 我们先来举个例子吧。单源最短路径也是一种很典型的图论问题,前面我们提到过,就是求解从一个源点到各个节点的最短距离,...

36450
来自专栏Seebug漏洞平台

GPON Home Gateway 远程命令执行漏洞被利用情况

2018/04/30,vpnMentor公布了 GPON 路由器的高危漏洞:验证绕过漏洞(CVE-2018-10561)和命令注入漏洞(CVE-2018-105...

72570
来自专栏人工智能LeadAI

TensorFlow从0到1丨开篇:Hello TensorFlow !

我以官方文档为主线,开始对TensorFlow的学习。这期间会把我的理解进行持续的输出,作为《TensorFlow从0到1》系列。它不会止于翻译和笔记、语言和工...

44470

扫码关注云+社区

领取腾讯云代金券