matplotlib PIL读取tif - ValueError:tile无法扩展到图像外

时间:2017-09-08 15:05:36

标签: python matplotlib python-imaging-library tiff

我想阅读tif file基本上是以下代码:

import matplotlib.pyplot as plt
filename = 'test.tif'
plt.imread(filename)

这会导致以下错误消息(只是最后一行):

File ".../miniconda2/lib/python2.7/site-packages/PIL/Image.py", line 692, in tobytes
self.load()
File ".../miniconda2/lib/python2.7/site-packages/PIL/TiffImagePlugin.py", line 1013, in load
return super(TiffImageFile, self).load()
File ".../miniconda2/lib/python2.7/site-packages/PIL/ImageFile.py", line 204, in load
decoder.setimage(self.im, extents)
ValueError: tile cannot extend outside image

当我使用imagemagick的显示打开tif图像并保存而不进行更改时,一切正常。 不过,我认为这可能是我的python环境/版本的问题,因为我的同事使用相同的代码和相同的文件没有这个问题。

我尝试了很多文件,所有文件都以相同的方式结束。我知道,对于这个小例子,我可以做一个解决方法或使用例如gdal(工作正常)。但由于这些行只是较大代码的一部分,并且应该立即用于新文件,我希望有一个真正的解决方案。

我正在使用openSUSE 11.4,conda 4.3.23,Python 2.7.13,matplotlib 2.0.2。

这可能是Value Error in reading tif image with pil in python?的副本。由于那里缺乏具体信息,我提出了一个新问题。对不起,如果这是错误的方式 - 我的第一篇帖子......

备注:我看到我的tif文件在此处上传为png。有没有办法改变它?

0 个答案:

没有答案