我的 Serverless 实战 — Serverless 腾讯云文字识别(OCR)详细部署过程
Posted 盛夏温暖流年
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的 Serverless 实战 — Serverless 腾讯云文字识别(OCR)详细部署过程相关的知识,希望对你有一定的参考价值。
通过 Serverless Framework Component 和 OCR SDK, 我们能够快速部署一个基于 COS + API + SCF 的通用文字识别 OCR 应用,在部署之前,先来了解一下什么是 OCR。
OCR 技术
OCR(Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程。即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。
如何除错或利用辅助信息提高识别正确率,是OCR最重要的课题,ICR(Intelligent Character Recognition)的名词也因此而产生。
衡量一个OCR系统性能好坏的主要指标有:拒识率、误识率、识别速度、用户界面的友好性,产品的稳定性,易用性及可行性等。
腾讯云 OCR 优势
腾讯云 OCR 基于腾讯优图实验室的深度学习技术,能够将图片上的文字内容,智能识别成为可编辑的文本。支持身份证、名片等卡证类和票据类的印刷体识别,也支持运单等手写体识别,支持提供定制化服务,可以有效地代替人工录入信息,具有以下几个方面的优势:
- 准确性高
腾讯云文字识别 OCR 可自动从图片中定位并识别字段,印刷体的平均准确率可达90%以上,手写体的识别平均准确率高达85%以上,鲁棒性强。 - 稳定性强
腾讯云的身份证识别、名片识别、营业执照识别服务已成功应用于微众银行、QQ、广点通等腾讯内部核心业务,接受过海量用户和复杂场景的考验,各项反馈良好。 - 适用性高
依托腾讯优图自研的 OCR 技术,涵盖了整个证件检测识别框架的所有核心算法,支持横向、竖向拍摄,适应透视畸变、光照不均、部分遮挡的情况,具备非常高的复杂环境可用性。 - 简单易用
腾讯云文字识别 OCR 除了可直接调用的全面的 API 接口,还提供了丰富多样的 SDK 供开发者使用,服务使用简单便捷,兼容性强。 - 应用广泛
腾讯云文字识别 OCR 提供手写体和印刷体的识别,除各类标准化的卡证识别外,也提供定制化的 OCR 识别,如各类票据或运单等的个性化识别,满足多样化的场景应用需要。
而 Serverless Framework 与 OCR 的结合,为用户提供了方便快捷、成本更低的通用文字识别应用部署方案。
腾讯云 Serverless + OCR 部署流程
1. 环境准备
- linux 服务器版本:CentOS 7.9
- 安装 Node.js(建议使用 Node.js10.0 及以上版本)
- 开通 OCR 通用文字识别服务
2. 基础环境搭建
(1). 安装 Node.js
官网下载
https://nodejs.org/en/download/
选择最新版本的 Node.js
上传到 Linux 后解压
xz -d node-v14.17.0-linux-x64.tar.xz
tar -xvf node-v14.17.0-linux-x64.tar
进入解压文件夹
cd node-v14.17.0-linux-x64
设置 node 和 npm 为全局变量
ln -s /tmp/upload/node-v14.17.0-linux-x64/bin/node /usr/local/bin/node
ln -s /tmp/upload/node-v14.17.0-linux-x64/bin/npm /usr/local/bin/npm
运行命令进行测试
node -v
正常输出版本号说明安装成功
(2). 开通 OCR 通用文字识别服务
打开官方链接
https://console.cloud.tencent.com/ocr/overview
填写个人信息
申请审核秒通过,接下来就可以使用了。
3. 配置
安装 Serverless Framework
npm install -g serverless
设置 serverless 为全局变量
ln -s /tmp/upload/node-v14.17.0-linux-x64/bin/serverless /usr/local/bin/serverless
验证是否安装成功
serverless -v
结果如下
新建本地文件夹,使用 serverless init 命令,下载相关 template
mkdir ocr
cd ocr
serverless init ocr-app
创建完成
在 ocr-app 目录下找到 .env.example 文件,改名为 .env
mv .env.example .env
在里面输入账户、密钥信息和指定存储桶(用于存放上传的图像)
其中,账户、密钥信息可以在以下链接中找到
https://console.cloud.tencent.com/cam/capi
如果没有密钥需要创建一个
下载所有 npm 依赖
npm run bootstrap
下载完成结果
4. 部署
执行以下命令进行部署
serverless deploy --all
部署成功后,可以使用浏览器访问项目的 website 链接(以下图片中绿色字体的上一行)
选择图片上传,项目即可通过 OCR SDK 自动完成文字识别
执行以下语句,可移除项目
serverless remove --all
以上是关于我的 Serverless 实战 — Serverless 腾讯云文字识别(OCR)详细部署过程的主要内容,如果未能解决你的问题,请参考以下文章
我的 Serverless 实战 — Serverless 初探
我的 Serverless 实战 — serverless中的CLS服务应用详解
我的Serverless实战—基于Serverless搭建WordPress个人博客图文教程
我的 Serverless 实战 — serverless中的CLS服务应用详解