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

  统计/机器学习 计算机视觉 数据可视化 Python 数据竞赛    浏览次数:6092        分享
0

我想知道在python里有什么方法可以让numpy array(数值矩阵)转为图片并且显示?

就好比这个数据竞赛里的两个图片

就是根据两个40乘以40的numpy array得到的图片


 

剪叔   2017-12-29 14:57



   2个回答 
7


# ipython@python3环境
import pandas as pd
import numpy as np

with open('~/train.csv') as f:
    data = pd.read_csv(f)

X = data.drop(['y','id'], axis=1)
X = np.array(X)

#  每一行代表一张图片,选取第一行。
pic1 = X[1]
# 图片分辨率是40*40
pic1 = pic1.reshape((40, 40))

# 绘图
%matplotlib inline
from matplotlib import pyplot as plt
# 传入cmap='gray'指定图片为黑白
plt.imshow(pic1, cmap='gray')

另外补充一下,如果是彩色图片,在reshape的时候需要设置成三维,分别代表每个像素点RGB三种配色的取值:


pic1.reshape((height, width, 3))


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

s3040608090   2017-12-29 15:43

您的回答非常具体!谢谢! - 剪叔   2017-12-29 23:48
2


import matplotlib.pyplot as plt
plt.imshow(my_figure, cmap=plt.cm.binary)
plt.show()


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

数据痴汉   2018-03-23 01:19



  相关主题

怎么把torch.tensor转成numpy ndarray?   2回答

numpy.histogram怎么生成直方图?   1回答

调用np.average()时报错TypeError: No loop matching   1回答

怎么对2维的numpy array取整?   2回答

用np.round的时候报错AttributeError: no attribute 'rint'   1回答

'numpy.ndarray' object has no attribute 'head'   1回答

numpy array里怎么用fillna填充nan的值?   1回答

numpy.full这个函数有什么用?   1回答

numpy里的无穷大np.inf到底是多大呢?   2回答

numpy生成二维随机均匀分布?   1回答

如何在numpy array尾部增加一行   2回答

numpy array怎么保存成文件?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!