说明:参与中秋活动
一、 前言:
随着图片时代的飞速发展,大量的文字内容为了优化排版和表现效果,都采用了图片的形式发布和存储,这为内容的传播和安全性带来了很大的便利,需要做重复性劳动。
OCR文字扫描工具也逐渐的应运而生,主要是为了帮助用户解决了内容编辑的难题。
二、 OCR是什么?
OCR全称是Optical Character Recognition,意思是“光学字符识别技术”。
1. OCR的作用:
通过OCR 技术识别图像中的文字,提取出来转换成文本格式,输出一些结构化的文本数据。
2. OCR实现文字识别的过程:
OCR的原理就是通过扫描仪将汉字文稿通过电荷耦合器件CCD将文稿的光信号转换为电信号,经过模拟/数字转换器转化为数字信号传输给计算机。计算机接受的是文稿的数字图像,然后对这些图像中的汉字进行识别。
3. OCR的选择:
4. OCR在生活中的应用:
智能识别技术高速发展的今天,通过仔细回忆,发现生活中方方面面都应用了OCR识别技术,以下为本人实际在生活中实际应用场景,看看您是否也有同样的经历?
(1). 小孩做作业:
平时家里老人在辅导小孩做作业,遇到不会做的,会使用“作业帮”的软件。对不理解的题目进行拍照,上传到服务器,服务器识别到文字,并在题库中查找对应的题目,将查询的结果再返回到界面中。
(2). 自媒体运营:
经常需要去公众号发布一些文案、活动,在网上找的比较好的素材,大家应该经常会看到一些百度文库等这种付费的文案素材下载,有时,只能靠自己对着手敲形式。可以使用微信自带的“文字识别”功能进行识别。
(3). 支付付款:
在手机二维码支付之前,人们都还是用现金支付,而现在大街小巷都在用手机支付,这样一新的支付方式已经进入我们的生活并被逐渐被大众所接受。那我们打开扫一扫,往商家或者个人的二唯码扫一下,就能识别是谁?甚至更为先进的人脸识别扫码支付,这些其实都是OCR应用场景最广的一种方式吧。
(4). 共享单车:
上班离公司比较近,每天上下班都是扫一下共享单车,来回通勤。使用微信扫描共享单车上的二唯码,也是一种OCR的应用场景。
以下是OCR在生活的应用场景的一个总结:
接下来,结合公司的业务,进行流程优化,以达到公司节能降本提效的结果。
三、公司业务:
公司是做宠物相关业务的,公司秉承为宠物提供营养、健康、安全的食品为己任,专注于犬猫粮的研发、生产和销售。
四、公司业务痛点:
目前OCR技术正在被广泛的运用,腾讯云文字识别就是一款运用OCR的技术,可以帮助企业解决一些业务的痛点,为公司进行增效降本。
1.业务场景:
场景一:公司的地推业务员,需要去宠物店进行登记授权店铺可以销售本公司的产品,也可以为公司拓展客户的目的,公司客服部门专门需要对业务员地推的提交的信息进行审核,同时,也为业务的考核进行评定。
场景二:供应商在采购后,需要将开立的发票进行公司交账。
2. 业务痛点:
- 商家认证时,上传的营业执照后,需要人工去审核,十分耗费人力,而且是一个十分枯燥重复的事情。
- 发票提交后,需要财务人员人工去审核,财务的人员也经常加班。
- 通过扩展人力 + 加班的形式,会导致公司的人力成本增大。
下面让我们通过对腾讯云文字识别实践,来降低客服财务运营成本.
五、腾讯云文字识别实践:
基于腾讯优图实验室的深度学习技术的文字识别,将图片上的文字内容,智能识别成为可编辑的文本。OCR 支持身份证、名片等卡证类和票据类的印刷体识别,也支持运单等手写体识别,支持提供定制化服务,可以有效地代替人工录入信息。
基于腾讯优图实验室的深度学习技术的文字识别,在产品选型时,相对于其它产品提供了很大的优势。
基于腾讯自研的深度学习技术和海量的数据,提供卡证、票据类印刷体和手写体、自定义模板等多种场景和类型的文字识别服务。
腾讯云OCR是一款优秀的文字识别服务,具有高精度、低错误率、快速识别等特点,并可应用于不同的场景。使用腾讯云OCR可以帮助我们快速处理图像中的文字信息,提高工作效率,受到了广泛的应用。
1. 开通相关产品:
可以看到腾讯云的OCR的产品很多,可以看到在很多领域可以广泛的应用,成为高效生产力的辅助工具。
这里为了测试本文提到的2种场景,选择“通用文字识别”类型。
勾选“我已阅读并同意”,即可进行开通文字识别产品功能。
账号记得需要实名制,否则会提示需要进行实名制。审核通过后,可以看到我们首次开通“文字识别服务”,各个资源包有免费赠送的次数,让我们可以对产品进行一个调研与测试,十分的贴心。
首次开通会赠送250次免费机会,开通的类型也是有9种之多,可以灵活根据自己的业务需求进行测试。
2. 免费测试:
腾讯云文字识别产品家族包括通用文字识别、通用卡证识别、票据单据识别、文本图像增强、智能结构化识别、智能扫码以及特定场景识别等服务,开通后即可享受1,000次/月的免费调用额度。
3. 新手体验:
官方提供了多种途径,可以根据这些途径选择合适的使用方式。
- 文字识别体验Demo
- 可视化调用文字识别服务
- 一分钟代码接入服务端 API
4. 在线文字识别体验Demo:
直接点击“上传本地文件”,选择一个营业执照,进行在线解析,可以看到返回的识别结果。
5. 可视化调用文字识别服务 - 官方调试工具:
先从官网提供的在线调试工具进行测试,先看看效果,在“签名串生成”中,点击“查看密钥”,去查看ID和密钥。
查看API的ID和密钥,显示密钥需要短信验证一下。
在“在线调用”中,输入参数里面,填入imageUrl,和刚刚生成的签名串,点击“发起调用”,可以看到响应结果有返回的数据了。
六、构建Node服务解析:
腾讯云OCR官方准备了多种方式,快速将该接口对应的腾讯云开发者工具套件(SDK) 集成到本地项目中,本文为了演示功能,使用的是Node的Koa框架进行开发。
序号 | 包 | 作用 |
---|---|---|
1 | koa | Koa是Node.js的一个高级框架,它基于Node.js的中间件机制,提供了一个更简单、更灵活的框架,用于构建高效、可扩展的Web应用程序。 |
2 | koa-bodyparser | Koa-bodyparser是一个Web框架koa的中间件,用于解析HTTP请求中的请求体,也就是把POST请求中的数据解析到ctx.request.body中。 |
3 | koa-router | koa-router是koa的一个中间件,其内部也包含众多的中间件,这些中间件通过Layer对象根据路由路径的不同进行划分。 |
4 | tencentcloud-sdk-nodejs | 用于访问腾讯云服务的 SDK,可以帮助您使用 Node.js 语言在腾讯云上进行开发。 |
1. 初始化项目:
mkdir orc-test
cd orc-test
npm init
# 一路按回车即可初始化一个package.json
# 安装插件
yarn add tencentcloud-sdk-nodejs@4.0.673 koa@^2.14.2 koa-bodyparser@^4.4.1 koa-router@^12.0.0
2. 写入ocr识别的代码:
const tencentcloud = require("tencentcloud-sdk-nodejs")
const OCRClient = tencentcloud.ocr.v20181119.Client
const Koa = require('koa');
const Router = require('koa-router');
const bodyParser = require('koa-bodyparser');
const client = new OCRClient({
credential: {
secretId: "AKIDyxpjjmxxxxxxxFdtx", # 使用自己的id
secretKey: "eFh0961yxxxxAQ", # 使用自己的密钥
},
// 产品地域
region: "ap-guangzhou",
})
// 实例化Koa对象 => app
const app = new Koa();
// 实例化路由对象 => router
const router = new Router();
app.use(bodyParser())
// 测试接口
router.get('/', async (ctx, next) => {
ctx.response.body = `<h1>Hello, Koa2</h1>`;
});
function getImg(ImageUrl) {
return client.BizLicenseOCR(
{
ImageUrl,
},
)
}
// 获取营业执照结果
router.post('/api/getBusiness', async (ctx, next) => {
const request = ctx.request.body
let result = await getImg(request.url);
ctx.response.type = 'application/json';
ctx.response.body = {"code": '200', "message": '成功', "data": result };
});
app.use(router.routes()).use(router.allowedMethods());
// 在端口3000监听
app.listen(3000);
console.log('app started at port 3000...');
3. 构建测试url:
在postman中输入get请求的http://127.0.0.1:3000即可
4. 测试营业执照是否能正确解析:
在postman中,输入post请求的http://127.0.0.1:3000/api/getBusiness,post请求参数为url,可以看到能返回营业执照的信息。
5. 测试增值税发票是否能正确解析:
将请求图片的解析函数BizLicenseOCR,替换为函数VatInvoiceOCR。
function getImg(ImageUrl) {
return client.VatInvoiceOCR(
{
ImageUrl,
},
)
}
这里方法的名称可以参考以下,不同的类型图片,使用不同的方法:
在postman中,输入post请求的http://127.0.0.1:3000/api/getBusiness,post请求参数为url,可以看到能返回增值税发票的信息。
6. 总结:
以下是我从0到1开始由入门到实战,花了不到半小时,就完成了整个OCR的体验流程,可以感受到腾讯云的产品确实简单易用,同时,也完成了对营业执照、增值税发票的一个调研完成。
7. 改善措施前后对比:
六、预计导入收益:
- 采用腾讯云的OCR文字识别功能,可以大大的简化了业务的工作流程。
- 由之前的纯人工操作,改为自动审核机制,将识别不出来或者识别有误的,再进行人工审核。
- 极大的方便了客服、财务人员的工作量,也不需要经常下班后还要带电脑。
对公司的一个降本节流的策略,做了一个预计的评估,人力的成本约减少30%左右,工作提高的效率在50%以上,做成基础的公共服务,后续有新的业务场景也可以很快的上线。
当然,需要根据公司的实际情况进行调研,比如采购的成本如果远远大于人工的成本,可能就需要进行衡量一下。
七、总结:
OCR技术的成熟,使得图文时代的内容编辑更加轻松,对于经常和文字图片打交道的业务场景来说,基于OCR技术的文字识别和提取工具是必不可少的效率提升的利器。
在信息社会时代,每天会产生大量的票据、表单、证件数据,这些数据想要从人工处理转变到信息电子化,需要利用OCR技术进行提取录入。