matplotlib:ValueError:无效的PNG标头

时间:2016-09-07 21:56:41

标签: matplotlib

import matplotlib.pyplot as plt

我试图在同一文件夹中的许多其他png照片中读取png照片。有些照片使用以下行读取没有错误,有些返回" ValueError:无效的PNG标题"。可能是什么原因?它们看起来像普通照片给我。

plt.imread(filename)

2 个答案:

答案 0 :(得分:4)

由于@MichM已经声明图像的标题已经改变,并且它不是有效的png图像。 阅读图像

plt.imread(filename, 0)

如果您在https://matplotlib.org/api/_as_gen/matplotlib.pyplot.imread.html?highlight=imread#matplotlib.pyplot.imread

阅读了Matplotlib imread的文档

- >如果提供了format,将尝试读取该类型的文件,否则将从文件名中推断出格式。如果无法推断出任何内容,则尝试使用PNG。 < -

答案 1 :(得分:0)

事实证明,在我获得这些文件之前,必须手动将jpg文件更改为png扩展名。这些文件在操作系统的图片查看器中正确打开,因此看起来与同一批次中的实际png文件无法区分,但它们不能被python脚本作为png文件处理 - 因为它们不是。他们没有alpha通道。