在CentOS上安装了Tesseract之后,我遇到了以下错误:
Tesseract Open Source OCR Engine v3.05.00dev with Leptonica
Error in pixReadMemJpeg: function not present
Error in pixReadMem: jpeg: no pix returned
Error during processing.
在CentOS上安装了Tesseract之后,我遇到了以下错误:
Tesseract Open Source OCR Engine v3.05.00dev with Leptonica
Error in pixReadMemJpeg: function not present
Error in pixReadMem: jpeg: no pix returned
Error during processing.
我解决了这个问题。原因是在编译Leptonica之前,没有安装libjpeg、libtiff和libpng。 Step 1: 安装libjpeg、libtiff和libpng。 Step 2: 重新编译和安装Leptonica。 更多链接
首先,tesseract的默认图像格式是.tif或.tiff。在新版本中,您需要安装以下格式包(libgif libjpeg libpng libtiff zlib)。Leptonica使用这些包来读取图像,而tesseract使用leptonica来分析图像。
libgif libjpeg libpng libtiff zlib
最后按照@BigBen的回答重新编译和安装leptonica即可。
如果 Leptonica 的可选依赖项不存在,它会抱怨。您可以通过重新编译带有宏NO_CONSOLE_IO
的Leptonica来消除这些错误。有关更多信息,请参见Leptonica源代码文件environ.h
。
给未来的读者:
我使用 os.listdir()
枚举目录中的文件,但是我没有考虑到一个情况,即 os.listdir()
的结果中有一个目录与我筛选的命名模式匹配。
添加以下附加条件对我有用:
for item in os.listdir():
if "name" in item and os.path.isfile(item):
# do stuff
os.path.isfile(item)
。