码code | 利用AI技术,你的小程序也能图文识别

1,233 阅读5分钟

近日,明星旧照修复图在网络上引发热议,在打拐方面也有凭童年照找到被拐儿童的技术突破,这些看似天方夜谭的操作均由AI实现。如今AI技术发展迅猛,市场接受度也较好,开发者可以将其视作提升自身小程序的一个契机。


在此之前,腾讯官方就推出了腾讯AI开放平台,提供众多关于AI技术的接口,方便开发者开发以及应用这项技术。


对于小程序开发者来说,可以利用哪些AI技术让自己的小程序出奇制胜?今天我们特别介绍应用较为广泛的AI图片识别技术。


AI图片识别技术的应用

腾讯图片识别依托腾讯领先的图片处理技术和深度识别引擎,可以快速、准确地识别图片内容信息并自动生成文字描述。这项AI技术,能够帮助小程序实现图文识别功能,为用户提供更贴心的服务。


这项技术是基于腾讯AI Lab领先的深度学习算法,对图片的信息进行提取。目前它已支持证件、名片、手写体等OCR和物体、场景等图片的识别。

                            

由于图文识别功能的实用性和综合性较强,生活服务类、网络购物类、科普类等小程序的开发者们可以选择AI图片识别技术,优化自己的小程序。以下是我们挑选的两个场景示例:


场景一:查询快递,但不想手动输入长长的快递码

现在查快递、实名认证、绑定银行卡等操作在互联网已经是家常便饭,但号码将近20位数字,如果挨个输入可能会输到头秃。


要是开发者能够在自己的小程序里接入OCR,支持用户扫图自动录入号码,那么将会大大提高用户体验。

                              

「顺丰速运+」通过AI图片识别技术,自动识别快递单上的快递号,再结合自有运单数据库,向用户自动展示完整的运单信息。


场景二:想了解某样东西,却无法提取文字信息去搜索

世界那么大,总有自己的认知短板。当用户想了解在路上、展览上看到的某样物品,会选择拍下来,再去寻求科普信息。


如果小程序能够使用图片识别技术,那么用户就可以随拍随科普,获取该物品相关的信息,操作流程也简单许多,真正实现“现在!我要拿到它的全部信息!”

                                

「博物官」应用了AI图片识别技术,用户在参观展馆时,通过拍摄展品,可获取对应的展品信息,无需导览员的讲解。


接入AI图片识别技术的步骤(以身份证OCR为例)

1、成为开发者

登录腾讯AI开放平台(https://ai.qq.com/),点击顶部导航栏右侧控制台或者底部立即使用,注册成为开发者后即可进入控制台页面。

2、 创建应用

在控制台页面,可在「应用」板块点击创建应用,填写应用的相关信息,勾选身份证OCR,完成应用的创建。

(*注:最多可以创建100个应用,在创建应用的表单中,可以自行勾选所需的AI技术接口,最多可以为应用开放所有的接口权限。)

3、获取接入凭证

在应用创建完毕后,开发者可在应用详情中查看到此应用的接入凭证,主要为AppID、AppKey。

4、 接口鉴权

使用应用所分配到的AppID、AppKey,获取接口鉴权签名。

5、 调试

调用平台AI技术接口,根据需求进行调试。


参考示例:

假设示例请求数据如下。

参数名称参数数据描述
app_id1000001仅供参考
image
实时计算base64
card_type0仅供参考
time_stamp
实时计算
nonce_str
实时计算
sign
实时计算

假设应用密钥为:a95eceb1ac8c24ee28b70f7dbba912bf,示例图片文件存储路径为:/path/to/image

下面使用PHP实现该HTTP API调用,其中getReqSigndoHttpPost可以从接口鉴权获取。

// 图片base64编码
$path   = '/path/to/image';
$data   = file_get_contents($path);
$base64 = base64_encode($data);

// 设置请求数据
$appkey = 'a95eceb1ac8c24ee28b70f7dbba912bf';
$params = array(
    'app_id'     => '1000001',
    'image'      => $base64,
    'card_type'  => '0',
    'time_stamp' => strval(time()),
    'nonce_str'  => strval(rand()),
    'sign'       => '',
);
$params['sign'] = getReqSign($params, $appkey);

// 执行API调用
$url = 'https://api.ai.qq.com/fcgi-bin/ocr/ocr_idcardocr';
$response = doHttpPost($url, $params);
echo $response;

上述echo $response的输出结果即API的响应结果(注意使用UTF-8编码):

{
    "ret": 0,
    "msg": "ok",
    "data": {
        "name": "李明",
        "sex": "男",
        "nation": "汉",
        "birth": "1987/1/1",
        "address": "北京市石景山区高新技术园腾讯大楼",
        "id": "440524198701010014",
        "frontimage": "/9j/...",
        "authority": "",
        "valid_date": "",
        "backimage": "",
    }
}

了解更多小程序开发相关内容,欢迎微信扫描下方二维码关注「微信极客WeGeek」公众号,共筑微信生态。