为什么 Tesseract OCR 使用 Otsu 二值化?

Why is Tesseract OCR using Otsu binarization?

为什么 Tesseract OCR 引擎使用 Otsu 二值化等全局阈值技术?局部阈值技术(例如 Sauvola、Niblack 等)在从图像中删除文本方面不是更有效吗?

Tesseract 在 Google 书籍项目中使用,AFAIK 他们 运行 测试最佳二值化,Otsu 最通用。如果 Otsu 不是最适合您的情况,您可以在将图像发送到 tesseract 之前使用其他二值化算法。

基本上,根据输入图像,我们需要 select 使用哪种阈值算法。 Tesseract 使用 Otsu 方法进行阈值处理,因为通常用于提取文本的 Tesseract 输入具有图像同质性。 Otsu 方法对于此类图像非常有效且足够好。

当背景不显示相对于前景(目标)强度的局部变化时,全局阈值方法非常有用且足够好。而当背景和目标的强度差异发生局部变化时,局部阈值化是必要的。

因此,虽然 Tesseract 确实使用 Otsu 方法(全局阈值化)进行二值化,但您可以 pre-process 使用局部阈值化方法来从 Tesseract 获得更好的输出。