我目前正在进行一个项目,我们收到了 25 种不同的发票类型,全部都是扫描的。最终目标是从发票中提取文本和表格数据,然后最终将这些数据解析到 Excel 中。发票类型有不同的格式。我们如何提取表格数据+文本?我们可以创建 1 个模型来为 25 种发票类型执行此操作吗?或者我们需要 25 个模型吗?
从扫描发票中提取文本和表格数据涉及 OCR(光学字符识别)和后处理以构建数据。以下是您的项目的流程和注意事项的细分:
提取文本和表格数据的步骤
OCR 用于文本提取:
使用 Tesseract、Google Vision API 或 AWS Textract 等工具 将扫描的发票转换为机器可读的文本。
这些工具通常提供边界框坐标,对于 提取结构化数据,例如表格。
预处理:
表格数据提取:
数据解析:
导出到Excel:
模型注意事项
是否使用一种或多种模型取决于发票类型之间的相似性:
单一型号:
如果发票类型共享相似的布局或包含常见的键值对和表结构,您可以使用 LayoutLMv3 等工具或专为文档处理设计的微调转换器来训练单个模型。
使用标记数据集来训练模型以识别不同的部分并适应细微的变化。
多种型号: 如果发票格式差异很大(例如,不同的语言、表格放置或没有标准布局),则创建针对特定发票类型定制的多个模型或基于规则的管道可能是可行的。
推荐方法
从单一模型开始:
添加自定义管道:
迭代:
需要考虑的工具