在 Pytesseract 中保留词间空间

问题描述

我试图让 PyTesseract 保留图像上的字间距。这在扫描诗歌时尤为重要。

 from PIL import Image
 import PyTesseract
 img1 = Image.open(file)
 custom_config = r'-c preserve_interword_spaces=1 --psm 4'
 str4 = PyTesseract.image_to_string(img1,config=custom_config)

我还尝试了所有类型的 psm 配置和其他配置选项。我也在使用 PyTesseract 的最新版本,即 0.3.7。

这个问题已经被问过很多次了。最值得注意的是这里: Preserving Spaces in Tesseract 然而,解决方案并不令人满意。建议查看以下页面https://github.com/tesseract-ocr/tesseract/issues/781 但是在那个页面他们断言问题已经在这里解决https://github.com/tesseract-ocr/tesseract/commit/e62e8f5f802c0d8f3dd67da993327cdafaee9763 但在该页面上,您似乎必须升级tesseract 5.0,而我不知道如何在 Mac 上执行此操作,因为 brew install 只安装 tesseract 4.0

我想如果我可以安装 tesseract 5.0 那么这可能会解决问题。

##################

更新

好的,我在另一个网站上确认我必须升级到 Tesseract 5.0。 brew install 不会在 Mac 上启用该功能。所以我想我必须学习如何直接从我不太擅长的 github 中提取 tesseract 5.0。

解决方法

您可能需要克隆存储库并构建它。

https://github.com/tesseract-ocr/tesseract

https://tesseract-ocr.github.io/tessdoc/Compiling.html#macos

顺便说一句,preserve_interword_spaces 也适用于 Tesseract 4.1.1,如果您可以安装该版本。