光学字符识别算法如何重新定义业务流程?

已发表: 2022-04-14

输入数据并将其从一个地方移动到另一个地方是一项耗时且重复的任务。 一名员工每天可以轻松地花费三个小时来移动数据。 除了占用工人的时间外,人工处理数据还容易出错,从而导致收入损失。

邓白氏调查数据的过去和未来的一份报告显示,五分之一的企业因数据不完整而亏损。 光学字符识别(OCR)技术可以帮助企业解决这些问题。 OCR 算法可以将纸质文档转换为可编辑的可搜索文本。

他们还可以从文件中提取信息并将其输入到公司 IT 系统的相应字段中。 那么,OCR 是如何工作的呢? 这项技术如何帮助您实现业务目标? 您是否应该联系人工智能解决方案提供商来帮助您构建和设置 OCR 软件?

什么是光学字符识别,它是如何工作的?

OCR 定义

光学字符识别是一种将打字或手写文本以及包含文本的打印图像转换为机器可读的数字数据格式的技术。 OCR 算法有助于将大量纸质文档转换为数字文件,从而促进文本存储、处理和搜索。

OCR 系统由硬件和软件组成。 硬件部分可以是光学扫描仪或可以将纸质文档转换为数字格式的类似设备。 软件部分是OCR算法本身。

OCR 是如何工作的?

计算机很难识别字符,因为不同的字体和一个字母的书写方式会有所不同。 手写信件使事情更加复杂。 然而,光学字符识别算法接受了这一挑战。 每个 OCR 解决方案都通过四个主要步骤运行:

图像采集

该过程涉及使用光学扫描仪捕获纸质文档的数字副本。 文档必须正确对齐和调整大小。

预处理

此阶段的目标是使输入文件可供 OCR 算法使用。 消除了噪音和背景。 预处理包括以下步骤:

  • 布局分析:将标题、列和图形识别为块
  • 去歪斜:倾斜数字文档以使线条水平,以防扫描期间未正确对齐
  • 图像细化:平滑边缘,去除灰尘颗粒,增加文本和背景之间的对比度
  • 文本检测:一些算法检测单独的单词并将它们分成字母,而另一些算法则直接处理文本而不将其拆分为字符。
  • 二值化:将扫描的文档转换为黑白格式,其中深色区域代表字符(字母或数字),白色区域被识别为背景。 此步骤有助于识别不同的字体。

在这个阶段,光学字符识别算法执行不同的操作来识别字母和数字。 主要有两种方法:

  • 模式识别: OCR 算法经过各种字体、文本格式和手写风格的训练,以将输入文件中的不同字符与他们学到的字符进行比较。
  • 特征识别:一些算法受益于已知的字符属性,例如交叉线和曲线,以识别输入文件中的字符。 例如,字母“H”被识别为两条垂直线和一条交叉的水平线。 由神经网络 (NN) 提供支持的 OCR 算法使用不同的逻辑,其中第一个 NN 层聚合来自输入文件的像素以创建图像的低级特征图。

检测到字符后,程序将其转换为美国信息交换标准代码 (ASCII),以方便进一步操作。

后期处理

输出可以是基本的,例如字符串或文件。 更高级的 OCR 解决方案可以保留原始页面结构并创建带有可搜索文本的 PDF 文件。 尽管目前还没有工具可以保证对不同输入文件的 100% 准确率,但一些光学字符识别算法可以在熟悉的文本上达到 99.8% 的惊人准确率。 使用手写会显着影响结果。 此外,重要的是要了解,如果训练不足或文本不熟悉,错误率可能高达 20%。 因此,用户有必要不断监控、校对和纠正 OCR 算法的输出,尤其是当一种新型文档进入管道时。

后处理阶段还可能涉及自然语言处理 (NLP) 和其他用于数据验证的 AI 技术。 人工智能不仅可以纠正文本,还可以捕捉计算中的错误。 假设在处理发票时,OCR 算法识别出总金额为 500 美元。 AI 可以通过将所有费用相加并确定它们不达 500 美元来验证这一点。 人工智能可以通知人类员工审查这个特殊案例。

如果您想提高算法的质量,您可以尝试使用开源 OCR 库,例如 Tesseract,它们使用自己的字典进行字符分割。 另一种方法是为您的领域中重复出现的术语创建专门的词汇表。 此外,审阅者可以将他们的反馈用作另一个光学字符识别算法培训课程的输入。

OCR 算法如何使您的业务受益?

以下是光学字符识别解决方案可以为您做的事情:

  • 降低成本:将文件转换为数字格式并自动输入数据可降低员工工时方面的成本
  • 提高客户满意度:这项技术将使人们能够通过扫描身份证明文件远程更新他们的个人信息,而不是亲自去银行或任何其他机构
  • 提供更便宜的备份选项:无需将纸质文档及其副本和一式三份存储在一起,这会消耗昂贵的物理存储单元
  • 促进不同语言之间的翻译:一些 OCR 工具能够将文档从一种语言翻译成另一种语言
  • 自动化工作流程:使用良好的管理系统搜索数字文件比处理纸质文件要快。 在查找丢失的物理文件时,将暂停较少的进程。 如果您对更全面的自动化解决方案感兴趣,您可以利用包括 OCR 和其他高级功能的智能流程自动化服务。

市场上可用的 OCR 解决方案

如果您正在考虑将 OCR 功能整合到您的 IT 系统中,那么您有多种选择。

开源光学字符识别算法

有几种开源 OCR 算法可供企业适应其需求。 这些解决方案更容易定制,因为它们的源代码是普遍可访问的。 但是,没有中央权威。 开源解决方案的开发人员不承担责任,也不提供进一步的支持。 因此,代码的质量可能存在问题。 此选项更适合拥有强大的 IT 部门能够修复任何故障的公司。 或者,您可以联系机器学习顾问,他们可以为您定制和重新培训该软件。

以下是一些常用的开源 OCR 解决方案:

正方体

Tesseract 开源引擎是最流行的 OCR 工具之一,被认为是最准确的免费工具之一。 它由惠普在 1985 年至 1994 年间开发。从 2006 年开始,该平台由谷歌管理和进一步开发。 Tesseract 是用 C++ 编写的,但它提供了 Java、Python、Swift、Ruby 和 R 以及一些更常见的编程语言的包装器。

该工具使用命令行操作,没有图形用户界面。 但是,您可以部署几个 GUI 选项以使该解决方案对用户友好。 一个例子是 glmageReader。 该接口使用 Python 开发,支持不同的图像格式,包括 PNG、GIF 和 PNM。

Tesseract 不提供页面布局分析,不格式化输出,其命令行界面要求所有图像都以 TIFF 格式提交。 此外,此 OCR 解决方案未针对 GPU 进行优化,并且不允许批处理。

奥罗普斯

OCRopus 最初是用 Python 编写的,现在有一个单独的 C++ 版本。 它由 Google 支持,并被用作 Google ReCaptcha 算法的 OCR 引擎。

OCRopus 具有三个主要功能:

  • 物理布局分析:识别文本块、列和行并确定阅读顺序。 例如,为了检测列,它使用最大空白矩形算法来检测列之间的空白。
  • 行识别:识别每个块或列中的行,无论是垂直行还是从左到右的行。
  • 统计语言建模:使用字典和随机语法来解决丢失和无法识别的字母问题。

EasyOCR

光学字符识别公司 Jaided AI 使用 Python 和 PyTorch 库及其深度学习模型构建了 EasyOCR 包。 它支持 80 多种语言,包括西里尔字母、中文和阿拉伯语,并且这个基础不断扩大。 作为实施路线图的一部分,计划添加用于识别手写文本的可配置选项。

商业 OCR 解决方案

软件即服务 (SaaS) 解决方案使您能够从高质量算法中受益并获得全面的供应商支持。 根据所选平台,您可能能够在数据集上重新训练 OCR 算法,甚至进一步使其适应您的独特需求。

亚马逊文摘

Amazon Textract 是一项基于机器学习的服务,可从扫描的文档中提取印刷和手写文本。 它可以处理非结构化数据和格式化文本,例如表格和表格。 该解决方案使用 AI,不需要任何额外的配置步骤或模板。 该服务安全且符合数据保护法规,例如 HIPAA 和 GDPR。 Amazon Textract 提供了四种 API,客户可以相应地使用和付费:

  • 检测文档文本 API:从扫描中提取非结构化打印文本和笔迹。 前 100 万页每页的成本为 0.0015 美元; 之后,价格下降。
  • 分析文档 API:使用结构化数据。 从表单和表格中提取文本。 客户在处理表格时每页支付 0.015 美元,在处理表格时每页支付 0.05 美元。 在第一百万页之后价格下降。
  • 分析费用 API:适用于发票。 此服务具有收据相关字段的通用分类法。 例如,它可以识别发票号码。 用户将为前一百万页支付每页 0.01 美元。
  • 分析 ID API:了解身份证件的上下文,例如驾照和护照,并可以从特定字段中提取文本。 对于前 100,000 页,您可以以 0.025 美元的价格从这项服务中受益。

谷歌云愿景

Google 提供 Vision API,它可以从文档和图像中提取印刷和手写文本。 它包含两个光学字符识别功能:

  • text_detection:从图像中提取文本,例如交通标志的照片
  • Document_text_detection:捕获文档和图像中的文本。 它与之前的功能不同,因为它的响应针对密集文本进行了优化。

这两项功能都允许用户每月免费处理前 1,000 个单位。 之后,您将每 1,000 个单位支付 1.5 美元。 随着您每月提交更多单位,此价格会降低。

微软 Azure 计算机视觉

Microsoft 提供 OCR 服务作为其通用计算机视觉 API 的一部分,而不是作为独立功能。 因此,您需要为整个套餐付费,其中除了光学字符识别外,还包括名人、地标、品牌和一般对象检测的识别。 对于前 100 万个单位,此 API 将花费您每 1,000 笔交易 1 美元。 之后,价格降至每 1,000 笔交易 0.65 美元,并且随着您提交更多内容,价格将继续下降。

不同行业的顶级 OCR 用例

光学字符识别算法在不同行业中越来越受欢迎。 以下是一些最突出的 OCR 应用程序。

银行业务中的 OCR

银行机构在其工作流程中使用大量纸质文档。 其中包括支票、客户记录、贷款申请、银行对账单等。采用 OCR 识别算法允许员工以数字方式存储和访问所有这些文件,并防止文书工作丢失和损坏。

支票处理

该领域 OCR 的一个例子是使用银行应用程序以数字方式存入纸质支票。 这些解决方案部署光学字符识别算法来识别支票中的相关字段并相应地执行操作,而无需员工手动传输所有这些数据。 此外,此类应用程序可以对现有数据库执行签名验证并立即清除检查。

客户入职

OCR 支持的解决方案无需员工手动验证客户身份,而是可以从个人护照和其他身份证件中提取和验证所有相关信息。 这允许即时验证并改善客户体验。

客户信息更新

在 OCR 的帮助下,客户无需访问或致电银行,而是可以扫描他们的文件以自动更新信息。 例如,Alfa-Bank 与 Smart Engines 合作,通过光学字符识别功能增强其银行应用程序。 借助这项新功能,客户可以将身份证件放在智能手机的摄像头前,确认提取的数据,并在银行系统中更新他们的信息。

医疗保健中的 OCR

与银行业类似,医疗机构积累了许多纸质文件,例如 X 射线扫描、测试结果、治疗计划等。 OCR 算法有助于将这些文件数字化,以防止物理文件丢失并减少手动处理纸质文件所浪费的精力。 此外,一些识别手写文本的 OCR 解决方案可以处理患者登记文件和处方。

医疗索赔系统

有些软件供应商专门从事支持 OCR 的医疗索赔处理。 OCR Solutions 就是这样一家公司。 它开发了一种产品,可以扫描、验证和正确发送医疗索赔以供进一步处理。 该程序经过培训和配置,可以使用常见格式,例如牙科索赔表和 CMS-1500 等。

传真

许多医疗机构仍然依赖传真。 光学字符识别解决方案可以将传入的材料转换为可访问的数字存储格式。

发票

OCR 支持的解决方案可帮助医疗保健组织将发票数字化并正确归档。 一个 OCR 示例来自总部位于旧金山的 Nanonets,它提供了一种专门处理发票的 OCR 驱动的解决方案。 该公司声称其软件将把发票数据输入时间从每张发票的 3 分钟缩短到 30 秒。

零售中的 OCR

光学字符识别算法使零售员工能够节省处理采购订单、发票、装箱单和其他文件的时间。 这些解决方案还可以从产品的条形码中提取序列号,并使客户能够扫描他们的凭证并提取序列码。

身份证扫描

商店员工可能出于多种原因需要扫描个人信息,例如年龄验证、填写客户忠诚度信息等。 OCR 供应商利用了这个机会。

例如,位于佛罗里达州的 OCR Solutions 开发了 idMax,这是一款由 OCR 驱动的软件,可以扫描 ID 文档、提取相关字段并使用相应信息填充零售商的数据库。 idMax 可以本地安装,也可以通过云端访问。

在您的业务中采用 OCR 解决方案的挑战

如果您决定部署 OCR 识别算法来改进您的操作,则需要考虑以下几个方面:

输入材料:确保所有输入文件都适合 OCR 算法。 例如,文件需要没有可能干扰算法识别其内容的能力的损坏。 对比度足够高,页面是否正确对齐等。一些算法具有强大的预处理能力,可以为您解决其中的一些问题。 但如果不是这种情况,也许投资购买高质量的扫描仪并确保正确的页面对齐是一个好主意。

训练数据集:如果您决定训练或重新训练光学字符识别算法,您需要确保您计划使用的数据忠实地代表您的输入材料并包含足够正确的注释。 如果您的训练数据集太小或不包含足够的注释,则该算法将不会产生所需的结果。 此外,在训练期间,您需要特别注意相似的字符/符号。 例如,数字 2 和 7 可能看起来非常相似,尤其是在算法预计可以处理手写文本的情况下。 数据科学家需要在训练数据中涵盖这些区别。 另一个例子是使用 OCR 算法来检测和捕获汽车上的车牌。 您需要确保您的算法不会将汽车后部的带有文字的自定义标签误认为是车牌。

手写文本:手写带来许多额外的 OCR 挑战。 不同人之间的写作风格多种多样,即使是个人用户的写作也可能不一致。 收集可靠的代表性训练数据集是一项挑战,因为您需要考虑所有不同的风格。 草书笔迹特别难以处理。 此外,虽然印刷文本是一条直线,但手写往往有可变的旋转,这使事情变得更加复杂。

扩展性:如果您增加用户数量或每个时隙的请求数量,系统可能会崩溃,尤其是在您使用开源解决方案并依赖自己的计算能力的情况下。 如果是在云中运行的商业 OCR 产品,您可以安排并支付更多容量。

OCR算法的性能监控:部署后,由于不同的因素,算法的性能可能会开始下降。 一个例子是训练数据和实际生产数据之间的分布变化。 当模型开始处理它没有准备好的数据集时会发生这种情况,例如不同的字体或具有异常倾斜的字符。 这些变化会随着时间的推移影响模型的输出,您需要检测这些问题并相应地重新训练模型以保持其初始准确度水平。

总结一下

光学字符识别算法有可能加快您的业务流程。 然而,有一些相关的挑战需要考虑。 所选算法可能需要重新训练,正确注释大型数据集是一项繁琐的任务。 随着业务的扩展,您还需要考虑潜在的扩展。

采用开源解决方案在价格方面似乎很诱人,但它也有其缺点,例如缺乏支持和更新,这可能会打开安全漏洞。 商业解决方案在这方面更可靠,但成本高且难以定制。

如果您不确定如何进行以及哪种 OCR 解决方案最适合您的业务,请随时与我们联系。 在 ITRex,我们很乐意对您的业务需求进行全面评估,以确定最佳 OCR 选项。 我们还可以帮助您重新培训选定的解决方案并将其集成到您的系统中。 如果需要,我们还可以构建自定义 OCR 算法。

您想通过光学字符识别加速您的操作吗? 删除 ITRex 一行! 他们的 AI 专家将协助您进行 OCR 解决方案集成和培训。 如果需要,他们还可以为您开发自定义算法。


最初于2022 年 4 月 6 日https://itrexgroup.com上发布。