如何让 Tesseract OCR 识别电表上的大数字?

如何让 Tesseract OCR 识别电表上的大数字?

我想使用 RPi 上的 OCR 程序来识别电表照片中的数字。这些数字很大,对我来说非常明显,但 Tesseract 似乎根本无法识别它们 - 它最多只能检测到一些随机的错误数字。

我尝试过裁剪数字并单独进行 OCR,但没用。我尝试过其他几个 OCR 程序,效果也不太好。

请问您能否就如何让 Tesseract 正确识别下图中的 2 个大数字提供任何建议?请注意,原始图片约为2.5MB - 此副本较小,以适合本网站。

电能表图片大全

答案1

非常小的数字在强光源下更容易读取。一些硬件设备(例如闪存驱动器和电源适配器)的塑料外壳上印有非常小的文字,在柔和的灯光下很难读取,但在强光源下很容易读取。

如果这不起作用,您可以在 GIMP 图像编辑器中打开要扫描的图像,并在进行 OCR 之前增强亮度和对比度。GIMP 图像编辑器在默认的 Ubuntu 存储库中可用。

  1. 使用位于工具箱左上角的矩形选择工具选择图像中包含要扫描的数字的矩形区域。

  2. 从 GIMP 菜单中选择颜色->亮度-对比度

  3. 移动亮度和对比度滑块以提高数字的可读性。

  4. 确保位于工具箱底部中心的前景色为黑色,这是默认颜色。

  5. 使用油漆桶填充工具将数字的背景填充为黑色,这样浅色数字在黑色背景下会呈现出更高的对比度。

  6. 如有必要,选择图像中另一个包含要扫描的数字的矩形区域,然后重复步骤 2-5。

  7. 编辑完成后,使用以下任一方式导出图像文件->覆盖或者文件->导出为…

答案2

我基本上也在尝试用我的煤气表做同样的事情 ;-)。对我有用的是:

  • 反转(这样你就得到了白底黑字的数字)
  • 缩小数字,使数字高约 30 像素
  • 增加对比度

显然,tesseract 并不期望文本具有很大的字体尺寸。

相关内容