【问题标题】:OCR a scanned file and retrieve the metadataOCR 扫描文件并检索元数据
【发布时间】:2019-09-26 11:40:30
【问题描述】:

我正在使用 Alfresco 社区 6.1。

我要扫描数千张发票,对其进行 OCR(几乎 100% 识别)并检索所需的元数据(合作伙伴、发票编号、金额、单位、货币...)。(所有这些都在 Alfresco 中)

根据检索到的这些元数据,我需要对发票进行一些操作(将它们移动到适当的文件夹,应用一些工作流程...)。

作为第一种方法:

  • 对于 OCR,我使用了Alfresco Simple OCR Action,但结果不是很准确(远非 100%)。

  • 为了检索结果,我将 PDF OCRed 转换为纯文本文件,然后使用带有 document.content 的 javascript 搜索它的内容...但由于 OCR 不准确,我无法判断它是否是在文档中搜索的最佳解决方案。

所以我的问题是:

  • 如何使 OCR 结果更准确?

  • 如何从发票中检索重要数据?对于这种处理,我使用的方法是足够好还是非常差?

我正在使用 pdfsandwich,而我的 alfresco-global.properties 是:

ocr.command=/usr/bin/pdfsandwich
ocr.output.verbose=true
ocr.output.file.prefix.command=-o

ocr.extra.commands=-verbose -lang eng
ocr.server.os=linux

【问题讨论】:

标签: javascript metadata ocr alfresco alfresco-share


【解决方案1】:

恐怕这个问题跑题了:https://stackoverflow.com/help/on-topic

还是有一些输入:

  • 我强烈建议在将 pdf 存储在 Alfresco 中之前,在外部 / 进行所有 ocr/分类/提取
  • 您正在寻找的技术术语是:文档捕获 如果您真的希望对扫描的文档进行分类并提取入站文档的数据(您无法在结构上控制),那么解决方案非常昂贵,并且每页/期间都获得许可。该领域的市场领导者是 Kofax 和 Abbyy。
  • 如果您可以控制文档结构/如果文档的结构是固定的,您可以使用更便宜的解决方案,这些解决方案使用动态模板方法(取决于找到的锚点、条形码、正则表达式匹配)。为此,我们使用 PDFmdx 自动进行合格提取。
  • 一切都取决于 OCR 质量。我个人的看法:如果你没有时间、专业知识和资源来训练和优化它们,那么免费/开源的 ocr 组件就无法与商业解决方案竞争。 Abbyy 为 linux 提供了一个非常实惠的 CLI 解决方案(ABBYY FineReader Engine CLI for Linux),但我相信还有其他具有类似结果的解决方案。
  • 有一个非常好的和简单的解决方案,称为AutoOCR,它是一个 REST-/SOAP-Service,它提供了一个通用的、可配置的接口来使用多个 ocr 引擎和配置作为服务。我们实现了一个 Alfresco 集成来充当 Alfresco Transformer,但由于不推荐使用 Alfresco Transformer 框架,我建议在将文档存储在 Alfresco 中之前完成整个 ocr 和识别工作
  • 最后:如果是一次性方法:尝试找到至少进行 ocr 并且可能还进行分类/提取的服务提供商。

【讨论】:

    【解决方案2】:

    回答您的问题。

    要改善 OCR 结果,您需要对图像进行预处理。这包括去噪、去线、阈值等。但如果引擎不能精确工作,它们都无济于事。 4.0.0 版中的Tesseract 对于大多数应用程序来说已经足够好了。

    您的方法在某些情况下可能有效,但不适用于大量发票。我建议使用一些发票数据提取服务。在这种情况下,您无需担心预处理和提取本身。你可以使用:

    使用这样的服务可以为您省去很多麻烦和时间。

    免责声明:我是无类型的创造者之一。随时提出修改建议。

    【讨论】:

      猜你喜欢
      • 2018-05-17
      • 1970-01-01
      • 2011-09-05
      • 2018-02-10
      • 2012-04-21
      • 1970-01-01
      • 2016-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多