【发布时间】:2014-01-14 09:56:15
【问题描述】:
我一直在尝试编写一个图像处理脚本 /OCR,它允许我从下图中的框中提取字母(使用 tesseract)。
经过大量处理,我能够让图片看起来像这样
为了去除噪点,我将图像反转,然后进行泛洪填充和高斯模糊以去除噪点。这就是我接下来要做的。
在运行它通过一些阈值和侵蚀以消除噪声(侵蚀是扭曲文本的步骤)之后,我能够在通过 tesseract 运行它之前让图像看起来像这样
这虽然是一个非常好的渲染,但可以通过 tesseract 获得相当准确的结果。虽然它有时会失败,因为它将哈希 (#) 读取为 H 或 W。这引出了我的问题!
有没有办法使用 opencv、skimage、PIL(最好是 opencv)我可以锐化这个图像,以增加我正确读取图像的 tesseract 的机会?或者有没有一种方法可以让我从第三张图像到最终图像,而不必使用最终扭曲图像中文本的腐蚀。
任何帮助将不胜感激!
【问题讨论】:
-
你能分享一下你已经做了哪些预处理吗?
-
我添加了一些导致我所指的失真的关键步骤:)
-
我已经在this answer上一步一步地演示了如何实现这一点。
-
感谢 Karl,这看起来非常有用,尽管我在 C++ 方面几乎是文盲(我使用了 python):)