怎么把3D的numpy array显示为彩色图像并且保存?

  统计/机器学习 计算机视觉 数据可视化 Python I/O    浏览次数:3918        分享
0

怎么把3D的numpy array显示为彩色图像并且保存?

 

bugoutong   2019-11-09 09:47



   3个回答 
4

这里用matplotlib库实现,默认数据是numpy array,RGB通道排列的三维数据

from matplotlib import pyplot as plt
plt.imshow(data) 
# 这里默认是RGB通道排列,即(R,G,B),如果是其他通道表述可以通过data.transpose来调整
plt.savefig("./1.jpg")


SofaSofa数据科学社区DS面试题库 DS面经

Estein   2019-11-09 20:21

3

使用pillow库的Image.fromarray,你的3D的numpy array我理解图片是RGB的

下面我给了代码和示例图片

from PIL import Image
import numpy as np

if __name__ == '__main__':
    org_img = Image.open('vacant.jpg')
    org_pix = np.array(org_img)
    print(org_pix.shape)  # (32, 32, 3)
    img = Image.fromarray(org_pix.astype('uint8')).convert('RGB')
    img.save('111.jpg')


SofaSofa数据科学社区DS面试题库 DS面经

eleve11   2019-11-09 10:04

是的,是RGB的数值。多谢! - bugoutong   2019-11-09 13:31
2

keras里面的一些函数也可以用保存图片

from keras.preprocessing import image
my_img = image.array_to_img(my_array)
my_img.save('output.jpg') 
my_img.show()
SofaSofa数据科学社区DS面试题库 DS面经

okayguy   2019-11-22 09:32



  相关讨论

怎么把本地的png图片读入numpy array里?

能直接把csv格式的数据文件读到numpy array里吗?

numpy array怎么保存成文件?

numpy怎么读取csv格式的数组文件?

Scipy里引用imread报错:ImportError: cannot import name 'imread'

怎么用python读取视频文件?

如何将matplotlib生成的图片存到本地?

plt.imshow显示的黑白图片颜色很奇怪

python中怎么把HEX颜色和RGB颜色相互转换?

numpy.array转换为图片并显示出来

  随便看看

协方差矩阵一定是满秩的吗?

python(matplotlib)中如何把折线图和柱状图画在一起?

在jupyter后台进程没有shutdown的notebook一直会占用内存吗?

Random Forest可以用来做聚类?

推荐系统中的召回(recall)是什么意思?