想要从打印或手写表格中提取数据?查看 纳米网™ 表单数据提取器 免费并自动导出任何形式的信息!
表格无处不在;它们被定义为通过要求参与者以特定格式填写所需信息来收集信息而创建的文档。它们很有帮助,因为它们能够在短时间内收集大量数据。然而,并非所有表单都具有相同的数据收集能力,并且通常需要稍后进行手动工作。因此,我们依靠工具和算法来智能地自动化表单数据提取的过程。这篇博文将深入探讨使用 OCR 和深度学习从表单中提取数据的不同场景和技术。
什么是表单数据提取?
表单数据提取是从在线和离线表单中提取数据的过程。该数据可以任何格式找到,通常包含带有相关信息的表格。然而,提取这些数据并不总是一件容易的任务,因为许多布局和设计不允许轻松选择文本。没有从它们复制数据的本机方法。因此,我们依靠自动化技术来帮助从更有效且不易出错的表单中提取数据。
例如,如今,许多用户依靠基于 PDF 的表单来收集联系信息。这是一种高效的信息收集方式,因为它不需要发送者和接收者提供输入。但从 PDF 表单中提取这些数据可能具有挑战性且成本高昂。
在这里,表单数据提取可以帮助从 PDF 表单中提取数据,例如姓名、电子邮件地址、电话号码等。它可以导入到另一个应用程序中,例如 Excel、Sheets 或任何其他结构化格式。它的工作方式是提取工具读取 PDF 文件,自动提取所需内容,并以易于阅读的格式组织它。该数据可以导出为其他格式,例如 Excel、CSV、JSON 和其他结构良好的数据格式。在下一节中,让我们看看构建表单数据提取算法时经常遇到的一些挑战。
想要从打印或手写表格中提取数据?查看纳米网™ 免费的表单数据提取器并自动从任何表单导出信息!
是什么让表单数据提取具有挑战性?
由于多种原因,数据提取是一个令人兴奋的问题。一方面,这是一个图像识别问题,但它还必须考虑图像中可能存在的文本和表单的布局,这使得构建算法更加复杂。本节讨论人们在构建表单数据提取算法时遇到的一些常见挑战。
- 缺乏数据:数据提取算法通常是使用强大的深度学习和基于计算机视觉的算法构建的。这些通常依赖大量数据来实现最先进的性能。因此,找到一致且可靠的数据集并对其进行处理对于任何形式的数据提取工具或软件都至关重要。例如,假设我们有具有多个模板的表单,那么这些算法应该能够理解广泛的表单;因此,在强大的数据集上训练它们将获得更准确的性能。
- 处理字体、语言和布局: 有大量不同的字体、设计和模板可用于不同类型的表单数据。它们可能属于几个完全不同的类别,这使得在需要考虑大量不同的字符类型时确保准确识别变得具有挑战性。因此,将字体集合限制为特定的语言和类型非常重要,因为一旦正确处理了这些文档,它将创建许多可以顺利进行的流程。在多语言情况下,需要做好准备并处理复杂的排版。
- 方向和倾斜(旋转): 在数据管理过程中,我们经常扫描图像来训练输入数据收集的算法。如果您曾经使用过扫描仪或数码相机,那么您可能已经注意到,捕获文档图像的角度有时会导致它们出现倾斜。这称为偏斜度,指的是角度的程度。这种偏度会降低模型的准确性。幸运的是,可以使用各种技术来解决这个问题,只需修改我们的软件检测图像特定区域特征的方式即可。这种技术的一个例子是投影轮廓方法或傅立叶变换方法,它们可以在形状、尺寸和纹理识别方面获得更清晰的结果!尽管方向和偏度可能是简单的错误,但它们可能会大量影响模型的准确性。
- 数据保障及安全:如果您要从各种来源提取数据以进行数据收集,那么了解现有的安全措施非常重要。否则,您将面临泄露正在传输的信息的风险。这可能会导致个人信息被泄露或发送到 API 的信息不安全。因此,在使用ETL脚本和在线API进行数据提取的同时,还必须注意数据安全问题。
- 表抽取:有时,我们会在表格中看到表单数据;构建一个可以处理表单提取和表格提取的强大算法可能具有挑战性。通常的方法是独立构建这些算法并将其应用于数据,但这将导致使用更多的计算能力,从而增加成本。因此,理想的表单提取应该能够提取表单数据以及给定文档中的数据。
- 后处理/导出输出:任何数据提取的输出数据都不是直接的。因此,开发人员依靠后处理技术将结果过滤为更结构化的格式。处理数据后,将其导出为更结构化的格式,例如 CSV、Excel 或数据库。组织依靠第三方集成或开发 API 来自动化此过程,这又很耗时。因此,理想的数据提取算法应该灵活且易于与外部数据源通信。
想要从打印或手写表格中提取数据?查看纳米网™ 免费的表单数据提取器并自动从任何表单导出信息!
深入了解各种场景的表单提取
到目前为止,我们已经讨论了表单数据提取的基础知识和挑战。在本节中,我们将深入研究不同的场景并了解表单数据提取的深度。我们还将研究如何自动化这些特定场景的提取过程。
场景#1:离线表单的手写识别
离线表单在日常生活中很常见。表格必须易于填写和提交。手动数字化离线表格可能是一项繁忙且昂贵的任务,这就是需要深度学习算法的原因。由于手写字符的复杂性,手写文档是提取数据的主要挑战。因此,数据识别算法被大量使用,机器可以通过数据识别算法学习阅读和解释手写文本。该过程涉及扫描手写文字的图像并将其转换为可以通过算法处理和分析的数据。然后,该算法根据笔划创建字符映射并识别相应的字母以提取文本。
场景 #2:表单上的复选框标识
复选框表单是一种数据输入形式,用于在输入字段中收集用户信息。这种类型的数据通常出现在列表和表格中,要求用户选择一个或多个项目,例如他们想要联系的项目。它可以在许多地方找到——在线表格、问卷和调查等等。如今,一些算法甚至可以从复选框自动执行数据提取过程。该算法的主要目标是使用计算机视觉技术识别输入区域。这些涉及识别线条(水平和垂直)、应用滤镜、轮廓和检测图像上的边缘。识别输入区域后,可以轻松提取已标记或未标记的复选框内容。
场景#3:表单的布局不时发生变化
填写表格时,通常有两种不同类型的选项。对于某些表格,我们需要通过填写所有相关字段来提供信息,而对于其他表格,我们可以通过从几个复选框中进行选择来提供信息。表单的布局也会根据表单的类型及其上下文而变化。因此,有必要构建一种能够处理多个非结构化文档并根据表单标签智能提取内容的算法。处理文档布局的深度学习架构的一种流行技术是图 CNN。图卷积网络(GCN)背后的想法是确保神经元激活是数据驱动的。它们被设计用于在由节点和边组成的图上运行。图卷积层能够在没有特定于任务的训练信号的情况下识别模式。因此,当数据稳健时,这些是合适的。
场景 #4:表格单元格检测
在某些情况下,企业会遇到由表格单元格组成的特殊类型的表单。表格单元格是表格内存储数据的矩形区域。它们可以分为标题、行或列。理想的算法应该识别所有这些类型的细胞及其边界,以从中提取数据。一些流行的表提取技术包括 Stream 和 Lattice;这些算法可以通过对图像使用简单的同构操作来帮助检测线条、形状、多边形。
表单数据提取解决方案如何演变?
表单数据提取起源于计算机出现之前人们处理纸质表单的时代。随着计算的出现,以电子方式存储数据成为可能。计算机程序可以使用这些数据来创建报告,例如销售统计数据。该软件还可用于打印邮寄标签,例如客户的姓名和地址,以及打印发票,例如应付金额和应发送的地址。然而,今天我们看到了不同版本的表单数据提取软件;它们高度准确、速度更快,并以高度组织和结构化的方式提供数据。现在,让我们简要讨论不同类型的表单数据提取技术。
- 基于规则的数据提取:基于规则的提取是一种自动从特定模板表单中提取数据的技术。它可以在没有任何人工干预的情况下提取数据。他们的工作方式是检查页面上的不同字段,并根据周围的文本、标签和其他上下文线索决定提取哪些字段。这些算法通常使用 ETL 脚本或网络抓取来开发和自动化。然而,当它们在看不见的数据上进行测试时,它们完全失败了。
- 使用 OCR 提取表单数据:OCR 是任何形式的数据提取问题的首选解决方案。然而,必须编写额外的脚本和程序才能获得准确的性能。为了使 OCR 发挥作用,需要输入带有文本的图像。然后软件读取每个像素并将每个像素与其对应的字母进行比较。如果匹配,它将输出该字母以及与该字母足够接近的任何数字或符号。 OCR 的最大挑战是弄清楚如何分隔字母。例如,当音符靠近或重叠时,例如“a”和“e”。因此,当我们提取离线表单时,这些可能不起作用。
- 用于表单数据提取的 NER:命名实体识别是对自然语言文本中预定义实体进行识别和分类的任务。它通常用于从表单中提取信息,人们在表单中输入名称、地址、评论等。识别命名实体的任务与更广泛的共指消解任务密切相关,共指消解确定对相同实体的提及是否指代该实体。相同的现实世界实体。如今,借助先进的编程工具和框架,我们可以利用预先训练的模型来构建基于 NER 的模型来执行信息提取任务。
- 使用深度学习进行表单数据提取: 深度学习并不新鲜,它已经存在了几十年,但深度学习架构和计算能力的最新发展带来了突破性的成果。使用深度学习的表单数据提取几乎可以在任何格式(无论是数字格式还是手写格式)下实现最先进的性能。该过程首先向深度神经网络 (DNN) 提供数千或数百万个不同的示例,并标明它们的内容。例如,带有名称、电子邮件、ID 等实体的图像形式标签。DNN 处理所有这些信息并自行学习这些信息是如何连接的。然而,构建高度准确的模型需要大量的专业知识和实验。
想要从打印或手写表格中提取数据?查看纳米网™ 免费的表单数据提取器并自动从任何表单导出信息!
使用 OCR 提取表单数据
有许多不同的库可用于从表单中提取数据。但是,如果您想从表单图像中提取数据怎么办?这就是 Tesseract OCR(光学字符识别)的用武之地。Tesseract 是 HP 开发的开源 OCR(光学字符识别)引擎。使用 Tesseract OCR,可以将纸质发票、收据和支票等扫描文档转换为可搜索、可编辑的数字文件。它有多种语言版本,并且可以识别各种图像格式的字符。 Tesseract 通常与其他库结合使用来处理图像以提取文本。
要对此进行测试,请确保在本地计算机上安装 Tesseract。您可以使用 Tesseract CLI 或 Python 绑定来运行 OCR。 Python-tesseract 是 Google 的 Tesseract-OCR 引擎的包装器。它可用于读取 Pillow 和 Leptonica 成像库支持的所有图像类型,包括 jpeg、png、gif、bmp、tiff 等。如果需要,您可以轻松地将其用作独立的调用脚本来进行超立方体。
现在,让我们获取包含表单数据的收据,并尝试使用计算机视觉和 Tesseract 来识别文本的位置。
import pytesseract
from pytesseract import Output
import cv2 img = cv2.imread('receipt.jpg')
d = pytesseract.image_to_data(img, output_type=Output.DICT)
n_boxes = len(d['level'])
for i in range(n_boxes): (x, y, w, h) = (d['left'][i], d['top'][i], d['width'][i], d['height'][i]) img = cv2.rectangle(img, (x, y), (x + w, y + h), (0, 0, 255), 2) cv2.imshow(img,'img')
在这里,在输出中,正如我们所看到的,程序能够识别表单内的所有文本。现在,让我们应用 OCR 来提取所有信息。我们可以简单地通过使用来做到这一点 图像到字符串 Python 中的函数。
extracted_text = pytesseract.image_to_string(img, lang = 'deu')
输出:
Berghotel
Grosse Scheidegg
3818 Grindelwald
Familie R.Müller Rech.Nr. 4572 30.07.2007/13:29: 17
Bar Tisch 7/01
2xLatte Macchiato &ä 4.50 CHF 9,00
1xGloki a 5.00 CH 5.00
1xSchweinschnitzel ä 22.00 CHF 22.00
IxChässpätz 1 a 18.50 CHF 18.50 Total: CHF 54.50 Incl. 7.6% MwSt 54.50 CHF: 3.85 Entspricht in Euro 36.33 EUR
Es bediente Sie: Ursula MwSt Nr. : 430 234
Tel.: 033 853 67 16
Fax.: 033 853 67 19
E-mail: grossescheidegs@b luewin. Ch
在这里我们可以从表单中提取所有信息。然而,在大多数情况下,仅使用 OCR 并无帮助,因为提取的数据将完全是非结构化的。因此,用户依靠表单上的键值对提取,只能识别特定的实体,例如 ID、日期、税额等。这只有通过深度学习才能实现。在下一节中,让我们看看如何利用不同的深度学习技术来构建信息提取算法。
使用深度学习解决表单数据提取问题
图卷积网络(图 CNN) 是一类深度卷积神经网络 (CNN),能够有效学习图数据结构中的高度非线性特征,同时保留节点和边结构。他们可以将图数据结构作为输入并生成节点和边的“特征图”。生成的特征可用于图分类、聚类或社区检测。 GCN 提供了一个强大的解决方案,可以从发票和收据等大型、视觉效果丰富的文档中提取信息。为了处理这些,每个图像必须转换为由节点和边组成的图。图像上的任何单词都由其自己的节点表示;其余数据的可视化被编码在节点的特征向量中。
该模型首先将文档中的每个文本段编码为图嵌入。这样做可以捕获每个文本元素周围的视觉和文本上下文,以及它在文本块中的位置。然后,它将这些图表与文本嵌入相结合,以创建文档结构及其内容的整体表示。该模型学习根据文本之间的相对位置以及它们在较大读者群中出现的上下文,为可能是实体的文本分配更高的权重。最后,它应用标准 BiLSTM-CRF 模型进行实体提取。结果表明,该算法大幅优于基线模型 (BiLSTM-CRF)。
LayoutLM 模型的架构深受 BERT 启发,并结合了来自 Faster R-CNN 的图像嵌入。 LayoutLM 输入嵌入作为文本和位置嵌入的组合生成,然后与 Faster R-CNN 模型生成的图像嵌入相结合。屏蔽视觉语言模型和多标签文档分类主要用作 LayoutLM 的预训练任务。 LayoutLM 模型具有价值、动态且强大,足以满足任何需要理解布局的工作,例如表单/收据提取、文档图像分类,甚至可以使用此训练模型执行视觉问答。
LayoutLM 模型在 IIT-CDIP Test Collection 1.0 上进行训练,其中包括超过 6 万份文档和超过 11 万份扫描文档图像,总数据超过 12GB。该模型在表格理解、收据理解和扫描文档图像分类任务方面远远优于多个 SOTA 预训练模型。
Form2Seq 是一个专注于使用位置序列从输入文本中提取结构的框架。与传统的 seq2seq 框架不同,Form2Seq 利用结构的相对空间位置,而不是它们的顺序。
在这种方法中,首先,我们对低级元素进行分类,以便更好地处理和组织。表单有 10 种类型,例如字段标题、列表项等。接下来,我们将较低级别的元素(例如文本字段和 ChoiceFields)分组为称为 ChoiceGroups 的高阶结构。这些用作信息收集机制,以实现更好的用户体验将较低级别的元素转换为较高阶的构造,例如文本字段、ChoiceFields 和 ChoiceGroups,用作表单中的信息收集机制。这是可以通过按照自然阅读顺序以线性顺序排列组成元素并将其空间和文本表示输入到 Seq2Seq 框架来实现的。 Seq2Seq 框架根据上下文顺序对句子的每个元素进行预测。这使得它能够处理更多信息并更好地理解手头的任务。
该模型在分类任务上实现了 90% 的准确率,高于基于分割的基线模型。文本块、文本字段和选择字段的 F1 分别为 86.01%、61.63%。该框架在ICDAR数据集上实现了表结构识别的结果状态。
想要从打印或手写表格中提取数据?查看纳米网™ 免费的表单数据提取器并自动从任何表单导出信息!
为什么 Nanonets 基于 AI 的 OCR 是最佳选择
尽管 OCR 软件可以将扫描的文本图像转换为 PDF、DOC 和 PPT 等格式化数字文件,但它并不总是准确的。当今的领先软件,如基于 AI 的 Nanonets OCR 深度学习系统,克服了传统 OCR 系统在从扫描文档创建可编辑文件时面临的许多挑战。它已成为数据提取的最佳选择,因为它可以提供高准确率和对噪声、图形元素和格式更改的高容忍度。现在,让我们讨论一下基于人工智能的 OCR 为何是最佳选择的几点。
- 正如所讨论的,OCR 是一种提取数据的简单技术。然而,当使用看不见的/新的数据时,它们将无法一致地工作。然而,基于人工智能的 OCR 可以处理此类情况,因为它们可以在广泛的数据上进行训练。
- 普通 OCR 无法处理表单数据提取的复杂布局。因此,在深度学习或人工智能的支持下,他们可以通过理解数据的布局、文本和上下文来提供最佳结果。
- 当数据中存在噪声(例如倾斜、低光扫描图像等)时,OCR 可能会表现不佳,而深度学习模型可以处理此类情况并仍然返回高度准确的结果。
- 与传统 OCR 相比,基于 AI 的 OCR 具有高度可定制性和灵活性;它们可以构建在各种数据的基础上,将非结构化数据转换为任何结构化格式。
- 与普通 OCR 相比,基于 AI 的 OCR 的后处理输出更容易访问;它们可以直接从模型导出为任何数据格式,例如 JSON、CSV、Excel Sheets,甚至是数据库(例如 Postgres)。
- 基于 AI 的 OCR 可以使用预先训练的模型导出为简单的 API。这在其他传统方法中仍然是可能的,但可能很难及时持续地改进模型。而基于人工智能的 OCR 可以根据错误自动调整。
- 使用直接 OCR 来提取表格是不可能的。然而,借助人工智能/深度学习的力量,这可以轻松完成。如今,基于人工智能的 OCR 可以准确指向文档中基于表格的表单并提取信息。
- 如果文档中存在任何财务或机密数据,人工智能模型还可以执行欺诈检查。它基本上从扫描的文档中查找编辑/模糊的文本并通知管理员。重复的文档或信息也可以通过这些模型来识别。而 OCR 在这种情况下就会失败。
- &
- 67
- 7
- 9
- 账号管理
- 精准的
- 实现
- 横过
- 额外
- 地址
- 高级
- AI
- 算法
- 算法
- 所有类型
- 尽管
- 量
- 量
- 另一个
- API
- APIs
- 应用领域
- 应用
- 的途径
- 架构
- 围绕
- 自动化
- 可使用
- 背景
- 底线
- 基本上
- 基础
- 成为
- 作为
- 最佳
- 最大
- 阻止
- 博客
- 边界
- 建立
- 建筑物
- 企业
- 容量
- 字幕
- 关心
- 例
- 原因
- 挑战
- 挑战
- 支票
- 分类
- 收集
- 收藏
- 采集
- 组合
- 结合
- 注释
- 相当常见
- 社体的一部分
- 相比
- 复杂
- 计算
- 计算能力
- 内容
- Contents
- 成本
- 可以
- 创建
- 创造
- 关键
- 合作伙伴
- data
- 数据安全
- 数据库
- 重要日期
- 设计
- 检测
- 开发
- 发达
- 开发
- 发展
- 不同
- 数字
- 尺寸
- 讨论
- 文件
- 动态
- 容易
- 边缘
- 有效
- 高效
- 邮箱地址
- 必要
- 欧元
- 例子
- Excel
- 体验
- 专门知识
- 提取物
- 面临
- 快
- 专栏
- 特征
- 字段
- 过滤器
- 终于
- 金融
- 姓氏:
- 固定
- 流
- 申请
- 格式
- 形式
- 发现
- 骨架
- 骗局
- Free
- 功能
- 基本原理
- 生成
- 目标
- 团队
- 帮助
- 有帮助
- 高
- 高度
- 创新中心
- How To
- HTTPS
- 主意
- 鉴定
- 鉴定
- 图片
- 影响力故事
- 重要
- 不可能
- 改善
- 其他
- 包括
- 包含
- 信息
- 灵感
- 集成
- 问题
- IT
- 工作
- 已知
- 标签
- 语言
- 语言
- 大
- 大
- 铅
- 学习
- 导致
- 杠杆作用
- 杠杆
- 清单
- 书单
- 本地
- 圖書分館的位置
- 地点
- 机
- 主要
- 手册
- 手动
- 地图
- 提到
- 百万
- 百万
- 模型
- 模型
- 最先进的
- 名称
- 自然
- 网络
- 网络
- 节点
- 噪声
- 数字
- 在线
- 运营
- 附加选项
- 附加选项
- 秩序
- 组织
- 组织
- 其他名称
- 除此以外
- 纸类
- 与会者
- 员工
- 性能
- 个人
- 热门
- 可能
- 功率
- 强大
- 预测
- 当下
- 小学
- 市场问题
- 过程
- 过程
- 本人简介
- 曲目
- 代码编程
- 训练课程
- 投影
- 提供
- 题
- 范围
- 价格表
- RE
- 读者
- 阅读
- 原因
- 认识
- 减少
- 业务报告
- 要求
- REST的
- 成果
- 风险
- 运行
- 销售
- 浏览
- 扫描
- 安全
- 保安
- 分割
- 选
- 形状
- 短
- 简易
- So
- 软件
- 解决方案
- 开始
- 州/领地
- 国家的最先进的
- 统计
- 商店
- 流
- 强烈
- 支持
- 系统
- 产品
- 任务
- 税
- 技术
- test
- 第三方
- 数千
- 通过
- 次
- 耗时的
- 今晚
- 一起
- 公差
- 工具
- 传统
- 产品培训
- 转型
- 理解
- 使用
- 用户
- 平时
- 愿景
- 可视化
- W
- 卷筒纸
- 什么是
- 什么是
- 是否
- 中
- 也完全不需要
- 话
- 工作
- 加工
- 合作
- 写作
- X