在处理我为项目下载的一些代码并学习Python
时,代码中的一些文件是保存为.npy
数据文件的图像。
我对Python
和numpy
相对较新,我在发布之前浏览过的很多资源都是将数据保存为.npy
。有没有办法可以查看使用此扩展程序存储的图像,以及以该格式保存我自己的文件?
答案 0 :(得分:12)
.npy
是numpy数组的文件扩展名 - 您可以使用numpy.load
阅读它们:
import numpy as np
img_array = np.load('filename.npy')
查看它们的最简单方法之一是使用matplotlib的imshow
函数:
from matplotlib import pyplot as plt
plt.imshow(img_array, cmap='gray')
plt.show()
您也可以使用PIL or pillow:
from PIL import Image
im = Image.fromarray(img_array)
# this might fail if `img_array` contains a data type that is not supported by PIL,
# in which case you could try casting it to a different dtype e.g.:
# im = Image.fromarray(img_array.astype(np.uint8))
im.show()
这些函数不是Python标准库的一部分,因此如果您还没有安装matplotlib和/或PIL / pillow,则可能需要安装它们。我还假设文件是2D [rows, cols]
(黑色和白色)或3D [rows, cols, rgb(a)]
(颜色)像素值数组。如果情况并非如此,那么您将不得不告诉我们有关数组格式的更多信息,例如img_array.shape
和img_array.dtype
是什么。
答案 1 :(得分:-1)
另一种解决方案是使用hdf5。