我想从我的图片或pdf中获取特定数据。例如,我在扫描文档中有发票账单,所以我只想提取 发票号。我已经使用 Tesseract OCR,Apache Tika OCR,Aspose OCR 所以请建议我逐步获取特定数据。提前谢谢。
答案 0 :(得分:0)
一般来说,你所寻找的是“zonal ocr”。有几种方法可以获得所需的数据:
使用正则表达式(regex)
使用大多数OCR软件返回的坐标。您可以在https://ocr.space
使用像Kantu这样的可视化工具pdf scraping。
答案 1 :(得分:0)
您可以使用custom recognition blocks从图像的一部分中获取/提取某些特定内容。请注意,当您拥有类似结构的文档/图像时,上述解决方案非常有用,即:要扫描的内容始终位于每个图像的相同位置。
此外,您可以使用Aspose.OCR和Aspose.Pdf对PDF文件执行OCR操作。有关详细信息,请访问Performing OCR on PDF Documents链接。
我与Aspose一起担任开发人员传播者。
答案 2 :(得分:-1)
您是否考虑过使用ABBYY FlexiCapture?该功能是其功能的主要方面之一。在使用FlexiCapture等产品时,问题就变成了您的文档是固定还是半结构化设计。对于发票等文档,答案几乎总是半结构化的,因为信息在页面上移动。此外,通常有许多不同的发票布局。 ABBYY通过FlexiCapture for Invoice产品解决了这一挑战。
作为替代方案,如果您只是需要在某个地区提取类似发票号的内容,那么您可以使用ABBYY Recognition Server这样的低价产品,您可以使用他们所谓的区域模板,或者您可以提取全部OCR文本并开发一个应用程序来应用正则表达式来定位字段标签旁边的字段值。当字段标签和字段值在OCR结果文本中没有彼此接近时会出现问题。这可能发生在字段标签的换行符(“发票号”或“发票#”)之后,紧接着下一行的第一个位置后面还有另一个值。然后,OCR文本可能会变成“发票号Bob Bob's Bargain Barn 66422”。正则表达式可以在搜索短语“Invoice No.”之后立即查找该值然后为相邻的文本“Bob's Bargain Barn”生成结果。更糟糕的是,标签文本和发票号码通常都在一个表格内,这使得一些OCR引擎完全忽略它(但不是识别服务器)会使事情变得复杂。出于这些原因,我们研究了FlexiCapture,因为它消除了数据提取所需的奇特编码。它很贵但值得。 披露,我们是ABBYY的合作伙伴。