传统 OCR 和屏幕上的 OCR 有什么区别?

What is the difference between conventional and on-screen OCR?

我一直在想屏幕OCR和通常的扫描文本OCR之间的区别。多年来我一直在使用 FineReader(并尝试过其他一些程序),而且我知道它们通常对扫描分辨率非常挑剔。以至于他们无法识别从屏幕上捕获的文本。对我来说,这看起来违反直觉,因为由于完美的单色背景,屏幕上的文字通常几乎没有噪音。我看到 Abbyy(FineReader 生产商)现在提供 ScreenshotReader。所以他们有一个单独的产品来完成看似相同的任务,只是因为这个分辨率问题?我错过了什么重要的东西吗? (除了赚更多钱的欲望:))

是的,知道正确的分辨率对 OCR 质量有很大帮助。

当您使用 OCR 图形文件时,它们通常包含具有分辨率的元数据,OCR 程序可以使用它。元数据中的分辨率可能是错误的,然后盲目地使用它会使事情变得更糟。有些文件根本不包含分辨率数据。这就是为什么高端程序不单独依赖元数据的原因 - 他们还尝试通过使用相对大小和其他特征查看可能变成字符的对象来推断正确的分辨率。

您提到的屏幕截图阅读程序可以通过两个关键的事情来改善屏幕截图识别体验。首先,它知道确切的分辨率并可以利用它来改进 OCR,它还知道图像上没有噪声、没有失真和其他类似的伪影,因此可以跳过一些预处理步骤,从而提高速度并提高 OCR 质量。其次它提供了很多可用性改进——你不需要将屏幕截图保存到文件,你可以轻松地在源程序的正上方设置识别区域window,我想还有其他的UI 改进使屏幕图像的 OCR 更容易和更快。