我遇到了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:
我发现了类似的问题here,但这些解决方案对我不起作用。我的操作系统是Ubuntu 16.04(32位)。
图片链接:)
我想获得SageMath的解决方案。我该如何解决这个问题?
答案 0 :(得分:1)
似乎您的Python软件包“枕头”版本 (Python图片库)缺少jpg的解码器。
要安装它,请退出Sage,然后在终端中运行以下命令:
$ sudo apt-get install libjpeg-dev
$ sage --pip install --no-cache-dir -I pillow
然后重新启动Sage并尝试再次运行代码。