草庐IT

机器学习服务文本识别能力演进,大幅提升识别准确率

HMS Core 2023-03-28 原文

文本识别技术(OCR)可以识别收据、名片、文档照片等含文字的图片,将其中的文本信息提取出来,代替了人工信息录入与检测等操作,降低了输入成本,快速、方便,提升产品的易用性。

随着技术的发展,OCR已经深入生活的诸多方面。交通场景下,主要用于车牌识别,便于停车场管理、智能交通、移动警务等;生活场景下,主要用于证照识别,便于提取身份证、银行卡、护照、结婚证、户口本、营业执照等证照图像的文字信息,还可对街景路牌进行识别;票据场景下,主要用于发票凭证识别,便于银行、税务等大量票据表格录入及长期存储;其他场景下,可以利用OCR对书籍、报告、简历、合同等文件进行识别,将纸质文件电子化,便于保存和查看。

Demo

HMS Core机器学习服务OCR能力在2020年01月15日首次上线,为开发者们提供了丰富的API接口,HMS Core OCR能力支持任意角度的文本识别,对横竖排、弯曲文本精准识别的同时,还能对文本段落进行准确划分,对文本内容精确定位。为了保证一些卡证、票据的隐私性,HMS Core OCR能力还支持端侧和云侧推理,端侧适合相机或视频画面实时处理,图片中稀疏文本识别,当调用端侧接口时,可识别中文(简体)、日文、韩文、拉丁语(包括英文、西班牙文、葡萄牙文、意大利文、德文、法文、俄文)10个语种;云侧对文字识别精度要求高,适合图片中稀疏文本识别、文档图片密集文本识别,当调用云侧接口时,可以识别中文(简体)、英文、西班牙文、葡萄牙文、意大利文、德文、法文、俄文、日文、韩文、波兰文、芬兰文、挪威文、瑞典文、丹麦文、土耳其文、泰文、阿拉伯文、印地文19个语种,核心语种的识别精度达到行业顶尖水平。

基于用户需求和技术进步,HMS Core 机器学习服务OCR能力进行了升级优化:端侧模型轻量化、准确率提升。

能力演进:

1、端侧模型轻量化:文本识别端侧10个语种能力增强(模型层面)

KPI不变,端侧模型轻量化压缩42%,运行所占内存从之前版本的19.4M降到11.1M左右。

模型的轻量化将模型体积缩小,并且可以轻量化展示,内存占比小,运行更加流畅。

2、准确率提升:云侧OCR能力演进(中文模型)

云侧OCR中文识别准确率从87.62%提升到92.95%,高于行业平均水准,竞争力大幅提高。

技术描述:

OCR是通过检测纸上的字符,以检测暗、亮的方式确定其形状,而后用字符识别法将形状翻译成计算机文字的过程。即针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并经过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。

由于通用领域中存在大量弯曲文本的情况,算法团队通过重新设计文本检测模型,在横向文本的基础上,增加了任意旋转角度、弯曲文本的支持,使得在出行、广告牌等场景下的准确率和易用性大大增加。

文本识别还支持纯端侧推理,在涉及各类卡证、票据等隐私信息的场景下,相比云侧服务更加安全、可靠。考虑到端侧设备的算力、功耗等因素,算法团队通过巧妙的模型框架设计、量化、剪枝等技术,在保证识别精度的情况下,将识别模型压缩到商用的标准,保证用户的使用体验。

竞品对比:

OCR能力演进后,端侧和云侧的识别准确率都在业界属于领先地位。

云侧平均准确率高于竞品约7%,时延仅为竞品的55%。

端侧平均准确率和模型体积均优于竞品,一些小语种的准确率甚至达到95%。

优化更新:

  1. 基于现在市面上OCR能力大多只针对印刷体字符, HMS Core机器学习服务正在进行通用手写体识别能力的开发(手写体识别、手写体+印刷体混合识别)。

  2. 加入更多语种,预计新增罗马尼亚语、马来语、菲律宾语等。

  3. 预计新增版面分析功能(PDF重排),机器学习服务支持多种内容识别处理功能,提升自身AI能力竞争力。

为了满足众多场景需要,HMS Core会不断开发新功能帮助开发者构建多元化应用,后续新增功能以华为HMS Core机器学习服务联盟官网为准。

了解更多详情>>

访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

有关机器学习服务文本识别能力演进,大幅提升识别准确率的更多相关文章

  1. ruby - 使用 ruby​​ 和 savon 的 SOAP 服务 - 2

    我正在尝试使用ruby​​和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我

  2. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  3. ruby-on-rails - 启动 Rails 服务器时 ImageMagick 的警告 - 2

    最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru

  4. ruby-on-rails - s3_direct_upload 在生产服务器中不工作 - 2

    在Rails4.0.2中,我使用s3_direct_upload和aws-sdkgems直接为s3存储桶上传文件。在开发环境中它工作正常,但在生产环境中它会抛出如下错误,ActionView::Template::Error(noimplicitconversionofnilintoString)在View中,create_cv_url,:id=>"s3_uploader",:key=>"cv_uploads/{unique_id}/${filename}",:key_starts_with=>"cv_uploads/",:callback_param=>"cv[direct_uplo

  5. ruby - 在 Windows 机器上使用 Ruby 进行开发是否会适得其反? - 2

    这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby​​-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub

  6. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  7. ruby-on-rails - 在 Rails 中调试生产服务器 - 2

    您如何在Rails中的实时服务器上进行有效调试,无论是在测试版/生产服务器上?我试过直接在服务器上修改文件,然后重启应用,但是修改好像没有生效,或者需要很长时间(缓存?)我也试过在本地做“脚本/服务器生产”,但是那很慢另一种选择是编码和部署,但效率很低。有人对他们如何有效地做到这一点有任何见解吗? 最佳答案 我会回答你的问题,即使我不同意这种热修补服务器代码的方式:)首先,你真的确定你已经重启了服务器吗?您可以通过跟踪日志文件来检查它。您更改的代码显示的View可能会被缓存。缓存页面位于tmp/cache文件夹下。您可以尝试手动删除

  8. 报告回顾丨模型进化狂飙,DetectGPT能否识别最新模型生成结果? - 2

    导读语言模型给我们的生产生活带来了极大便利,但同时不少人也利用他们从事作弊工作。如何规避这些难辨真伪的文字所产生的负面影响也成为一大难题。在3月9日智源Live第33期活动「DetectGPT:判断文本是否为机器生成的工具」中,主讲人Eric为我们讲解了DetectGPT工作背后的思路——一种基于概率曲率检测的用于检测模型生成文本的工具,它可以帮助我们更好地分辨文章的来源和可信度,对保护信息真实、防止欺诈等方面具有重要意义。本次报告主要围绕其功能,实现和效果等展开。(文末点击“阅读原文”,查看活动回放。)Ericmitchell斯坦福大学计算机系四年级博士生,由ChelseaFinn和Chri

  9. [Vuforia]二.3D物体识别 - 2

    之前说过10之后的版本没有3dScan了,所以还是9.8的版本或者之前更早的版本。 3d物体扫描需要先下载扫描的APK进行扫面。首先要在手机上装一个扫描程序,扫描现实中的三维物体,然后上传高通官网,在下载成UnityPackage类型让Unity能够使用这个扫描程序可以从高通官网上进行下载,是一个安卓程序。点到Tools往下滑,找到VuforiaObjectScanner下载后解压数据线连接手机,将apk文件拷入手机安装然后刚才解压文件中的Media文件夹打开,两个PDF图打印第一张A4-ObjectScanningTarget.pdf,主要是用来辅助扫描的。好了,接下来就是扫描三维物体。将瓶

  10. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

随机推荐