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

Wat*_*ant 6 python tiff matplotlib python-imaging-library

我想读一个基本上以下代码的tif文件:

import matplotlib.pyplot as plt
filename = 'test.tif'
plt.imread(filename)
Run Code Online (Sandbox Code Playgroud)

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

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
Run Code Online (Sandbox Code Playgroud)

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

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

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

这可能是在python中使用pil读取tif图像时值错误的重复.由于那里缺乏具体信息,我提出了一个新问题.对不起,如果这是错误的方式 - 我的第一篇文章在这里......

备注:我看到我的tif文件在这里上传为png.有办法改变吗?