Tesseract图像问题

5

在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.
4个回答

9

我解决了这个问题。原因是在编译Leptonica之前,没有安装libjpeg、libtiff和libpng。 Step 1: 安装libjpeg、libtiff和libpng。 Step 2: 重新编译和安装Leptonica。 更多链接


1
请问您能提供具体的步骤吗?从哪里获取,终端中要运行什么命令。这些是否可以使用npm进行全局安装? - M.Ionut

2

首先,tesseract的默认图像格式是.tif或.tiff。在新版本中,您需要安装以下格式包(libgif libjpeg libpng libtiff zlib)。Leptonica使用这些包来读取图像,而tesseract使用leptonica来分析图像。

libgif libjpeg libpng libtiff zlib

最后按照@BigBen的回答重新编译和安装leptonica即可。


1

如果 Leptonica 的可选依赖项不存在,它会抱怨。您可以通过重新编译带有宏NO_CONSOLE_IO的Leptonica来消除这些错误。有关更多信息,请参见Leptonica源代码文件environ.h


0

给未来的读者:

我使用 os.listdir() 枚举目录中的文件,但是我没有考虑到一个情况,即 os.listdir() 的结果中有一个目录与我筛选的命名模式匹配。

添加以下附加条件对我有用:

for item in os.listdir():
    if "name" in item and os.path.isfile(item):
         # do stuff

重要的是添加一个条件来检查它是否为文件,os.path.isfile(item)
理想情况下,您应该检查它是否为图像文件,因为这里的错误是正在处理的文件不是图像文件

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接