1. 程式人生 > >MNIST資料集手寫體資料還原為圖片

MNIST資料集手寫體資料還原為圖片

手寫體識別,資料還原為圖片.

import tensorflow.examples.tutorials.mnist.input_data as input_data  # 匯入下載資料集手寫體
mnist = input_data.read_data_sets('MNIST_data/', one_hot=True)  # 下載資料集

# print(type(mnist.train.images))  # 打印出資料型別 numpy.ndarray
# print(mnist.train.images.shape)  # 打印出資料結構 (55000, 784)
# print(mnist.train.labels.shape)  # 打印出one_hot (55000, 10)

from PIL import Image
import numpy as np

# np.array將資料轉化為陣列 np.reshape將一維陣列reshape成(28*28)  mnist.train.images[1]取出第二張圖片 dtype轉換為int8資料型別
im_data = np.array(np.reshape(mnist.train.images[1], (28, 28)) * 255, dtype=np.int8)  # 取第一張圖片的 陣列
print(im_data)
# 將陣列還原成圖片 Image.fromarray方法 傳入陣列 和 通道
img = Image.fromarray(im_data, 'L')
img.save('1.jpg')
img.show()  # 顯示圖片

# 拿對應的標籤
arr_data = mnist.train.labels[1]
print(arr_data)  # one-hot形式