从Python应用程序使用Tesseract OCR时的性能问题

2024-10-01 09:16:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近组装了一个接口,用于扫描可搜索文档并将其上载到我们的文档管理系统KnowledgeTree。对于这个过程的不同部分,我们可以使用很多不同的工具,但是我想把所有的东西组合到一个界面中,以使用户的操作更简单。在

这是平台:

#    OS: Ubuntu Desktop 10.04
#    GUI Toolkit: wxPython
#    OCR package: Tesseract 3.00 (compiled executable)

基本流程如下:

^{pr2}$

它工作得很好,除了第2步对某些类型的文档非常慢。它可以在基本的固定宽度文本报告中滚动,但会在其中添加一些徽标、行和其他不可读的内容,有时甚至会在一个页面上花费几分钟。更不用说,如果它试图调整方向,它可能会重复4次。相比之下,与扫描仪配套的软件使用的是ABBYY OCR,可以在不到一分钟的时间内处理50多个页面,几乎完美地处理页面布局和文本方向(我意识到这就是为什么ABBYY要花钱)。不幸的是,使用这种扫描软件对用户来说更为复杂,而且只涉及步骤1-3。在

我的问题是,我是否应该以不同的方式来处理这个问题,也许是将OCR/上载与扫描界面完全分离,或者是否有我忽略的OCR包或其他解决方案可以集成到Python应用程序中。我调用一个外部应用程序来完成这项工作是否会导致性能问题?在

不管我在这里做什么,重要的是我要控制第4步,因为要求用户为每个上传的文档手动设置类型和元数据可能是个问题。在


Tags: 工具用户文档文本应用程序类型界面软件
1条回答
网友
1楼 · 发布于 2024-10-01 09:16:13

问题是Tesseract是一个OCR引擎,而不是页面布局分析软件。tesseract website表示版本3.0可能会包含页面布局分析。在

我知道在以前的版本中,只有在只有一列文本的情况下,它才会有很好的响应。在

我认为你需要加入一个步骤1.5,做一些布局分析,并试图找到块图像,徽标,难以辨认的文本。在

您可能想看看OCRfeeder,看看他的解决方案。在

相关问题 更多 >