pytesseract 结果不同于 tesseract 命令行结果

pytesseract results different from tesseract command line results

我正在尝试在 Ubuntu 上使用 pytesseract 和 tesseract 命令行将扫描的页面转换为文本。结果截然不同(pytesseract 比 tesseract 命令行执行得更好),我无法理解为什么。我查看了参数的默认值并尝试在 tesseract 命令行(如 psm )中更改一些参数值,但我无法获得与 pytesseract 相同的结果。由于 pytesseract 中缺少适当的文档,我无法弄清楚使用的参数默认值。

这是我的 pytesseract 代码 print(pytesseract.image_to_string(Image.open('test.tiff'))

查看pytesseract的源代码,似乎总是将图像转换为.bmp文件。 在 Tesseract 的命令行中使用 .bmp 文件和 6 的 psm 给出与 pytesseract 相同的结果。 此外,tesseract 只能处理未压缩的 bmp 文件。因此,如果使用 ImageMagick 将 .pdf 转换为 .bmp,则以下将起作用

convert -density 300 -quality 100 mypdf.pdf BMP3:mypdf.bmp
tesseract mypdf.bmp -psm 6 mypdf txt