腾讯云OCR实践 - 降低客服财务运营成本
一、 前言:
随着图片时代的飞速发展,大量的文字内容为了优化排版和表现效果,都采用了图片的形式发布和存储,这为内容的传播和安全性带来了很大的便利,需要做重复性劳动。
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.Clientconst Koa = require('koa');
const Router = require('koa-router');
const bodyParser = require('koa-bodyparser');const client = new OCRClient({credential: {secretId: "AKIDyxpjjmxxxxxxxFdtx", # 使用自己的idsecretKey: "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.bodylet 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技术进行提取录入。
相关文章:
腾讯云OCR实践 - 降低客服财务运营成本
一、 前言: 随着图片时代的飞速发展,大量的文字内容为了优化排版和表现效果,都采用了图片的形式发布和存储,这为内容的传播和安全性带来了很大的便利,需要做重复性劳动。 OCR文字扫描工具也逐渐的应运而生,…...
springboot+vue上传图片
这里是一个简单的示例,演示了如何在Spring Boot中从Vue.js上传图像: 1.前端Vue.js代码: <template><div><input type"file" change"handleFileUpload"><button click"uploadImage">…...
高压电缆护层接地环流及温度在线监测系统
高压电缆的金属护层是电缆的重要组成部分,当缆芯通过电流时,会在金属护层上产生环流,外护套的绝缘状态差、接地不良、金属护层接地方式不正确等等都会引起护套环流异常现象,严重威胁电缆运行安全。 当电缆金属护层环流出现异常时…...
无涯教程-JavaScript - IPMT函数
描述 IPMT函数根据定期,固定的还款额和固定的利率返回给定投资期限内的利息支付。 语法 IPMT (rate, per, nper, pv, [fv], [type])争论 Argument描述Required/OptionalRateThe interest rate per period.RequiredPerThe period for which you want to find the interest a…...
【EI会议征稿】第三届机械自动化与电子信息工程国际学术会议(MAEIE 2023)
第三届机械自动化与电子信息工程国际学术会议(MAEIE 2023) 第三届机械自动化与电子信息工程国际学术会议(MAEIE 2023)将于2023年12月15-17日在江苏南京举行。本会议通过与业内众多平台、社会各团体协力,聚集机械自动…...
手写实现LRN局部响应归一化算子
1、重写算子的需求 芯片推理过程中遇到很多算子计算结果不对的情况,原因是封装的算子会在某些特殊情况下计算超限,比如输入shape特别大或者数值特别大时,LRN算子计算会出现NAN值,所以需要重写算子。先对输入数据做一个预处理&…...
朗思科技数字员工通过统信桌面操作系统兼容性互认认证
近日,朗思科技数字员工与统信桌面操作系统V20进行了兼容互认,针对上述产品的功能、兼容性方面,通过共同严格测试表明——朗思科技数字员工在统信桌面操作系统 V20上整体运行稳定,满足功能及兼容性测试要求。 北京朗思智能科技有限…...
十六、Webpack常见的插件和模式
一、认识插件Plugin Webpack的另一个核心是Plugin,官方有这样一段对Plugin的描述: While loaders are used to transform certain types of modules, plugins can be leveraged to perform a wider range of tasks like bundle optimization, asset m…...
ChatGPT新增超强插件:文本直接生成视频、海报,支持自定义修改!
全球著名在线设计平台Canva,在ChatGPT Plus(GPT-4)上推出了插件功能,用户通过文本提示,几秒钟就能生成演示文稿、PPT插图、电子书封面、宴会邀请函等各种精美设计海报,同时支持生成视频。 该插件最强大的功…...
亚像素边缘提取的例子
求帮忙下载: 1.http://download.csdn.net/detail/pkma75/925394 pkma75 资源积分:1分 备注:pdf格式,用曲线拟合的方法计算亚像素,编程易实现,具有较强的实用价值 2.http://download.csdn.net/detail/kua…...
Wayland:推动Linux桌面进入下一代图形显示时代
文章首发地址 Wayland是Linux系统下的一种图形显示协议,旨在替代X Window System(X11)作为Linux桌面环境的图形显示服务。下面是对Wayland的详细解释: 背景: 传统的Linux桌面环境使用X Window System(X11&…...
mysql外键(foreign key)
简介 MySQL的外键约束用来在两个表数据之间建立链接,其中一张表的一个字段被另一张表中对应的字段约束。也就是说,设置外键约束至少要有两种表,被约束的表叫做从表(子表),另一张叫做主表(父表&…...
内网穿透——Windows搭建服务器
文章目录 1.前言2. Emby网站搭建2.1. Emby下载和安装2.2 Emby网页测试 3. 本地网页发布3.1 注册并安装cpolar内网穿透3.2 Cpolar云端设置3.3 Cpolar内网穿透本地设置 4.公网访问测试5.结语 1.前言 在现代五花八门的网络应用场景中,观看视频绝对是主力应用场景之一&…...
UE5.1 + Android 环境搭建
官方文档:一定一定一定要参照官方文档,因UE不同版本对应的环境搭建并不完全一致。 准备工作 通过EpicGameLaunch下载Android目标平台。 必须安装jdk1.8并配置环境变量,UE5.1不要使用最新的jdk20;下载地址 安装 Android Studio …...
华为python面试题目
华为Python常见的面试问题包括: Python是如何被解释的?什么是PEP8?Python是怎样管理内存的?什么是Python装饰器?Python提供哪些内置类型?Python中的异常处理是怎样的?什么是Python的上下文管理器?Python中的列表推导式是什么?Python中的生成器是什么?什么是Python的装…...
IP代理安全吗?如何防止IP被限制访问?
你是否遇到过可以正常上网,但访问某个网站却被禁止?注册某个网站账号,却被封号?那都是因为IP出现问题!您的IP地址透露很多关于您的信息,包括您的位置和互联网活动。 在本文中,我们将一起了解IP地…...
使用 gst-template 创建自己的 gstreamer 插件
系列文章目录 创建 gstreamer 插件的几种方式 使用 gst-template 创建自己的 gstreamer 插件 使用 gst-plugins-bad 里面的 gst-element-maker 工具创建gstreamer 插件 文章目录 系列文章目录前言一、如何获取 gst-template 仓库代码二、gst-template 相关的软件依赖1. 根据自…...
nginx反向代理,用户访问服务器1的80端口,请求转发至服务器2,3的8882端口
两台应用服务器,一台nginx,用户访问nginx服务器80端口,将请求转发至服务器2和服务器3的8882端口。 1、修改nginx配置文件 upstream backend {server 10.60.16.187:8882;server 10.60.16.188:8882;}server {listen 80;server_name 10.6…...
Python学习笔记:导入txt、xlsx文件并做简单函数处理
1.txt文件 1.1路径 file_path "E:\Python Project\temp.txt" with open(file_path) as f:content1 f.read() 导入文件时,如果直接放文件绝对路径上去会报错,这是因为\P是转义字符 所以在绝对路径前面加r可以避免将引号内的内容识别成转义…...
uniapp 轮播列表左右滑动,滑动到中间放大
html <!-- 轮播 --><view class"heade"><swiper class"swiper" display-multiple-items3 circulartrue previous-margin1rpxnext-margin1rpx current0 change"swiperChange" ><block v-for"(item,index) in list"…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...
通过MicroSip配置自己的freeswitch服务器进行调试记录
之前用docker安装的freeswitch的,启动是正常的, 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...
Mysql故障排插与环境优化
前置知识点 最上层是一些客户端和连接服务,包含本 sock 通信和大多数jiyukehuduan/服务端工具实现的TCP/IP通信。主要完成一些简介处理、授权认证、及相关的安全方案等。在该层上引入了线程池的概念,为通过安全认证接入的客户端提供线程。同样在该层上可…...


