在SageMath Notebook中编译时,Python图像库失败并显示消息“ IOError:解码器jpeg不可用”-PIL

时间:2018-08-08 17:20:00

标签: python-2.7 image-processing jpeg sage

我遇到了PIL的奇怪问题。每当我用python编译以下代码时,一切正常:

from PIL import Image
file=Image.open("si.jpg") 
file2=file.convert("L")
pix = file2.load()
print pix
colsize,rowsize=file2.size
for i in range(rowsize):
    for j in range(colsize): 
        if pix[j,i]>250:
            pix[j,i]=250
file2.save("ci2.pgm")

但是当我在SageMath Notebook中编译以上代码时,它给出了错误 “ IOError:解码器jpeg不可用” 。这是scrrenshot:
enter image description here  我发现了类似的问题here,但这些解决方案对我不起作用。我的操作系统是Ubuntu 16.04(32位)。 图片链接:enter image description here) 我想获得SageMath的解决方案。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

似乎您的Python软件包“枕头”版本 (Python图片库)缺少jpg的解码器。

要安装它,请退出Sage,然后在终端中运行以下命令:

$ sudo apt-get install libjpeg-dev
$ sage --pip install --no-cache-dir -I pillow

然后重新启动Sage并尝试再次运行代码。