這邊我使用 matplotlib for python來做為主要的繪圖計算,將原本的數字陣列的圖像資料轉回一般的圖像。
節錄自:https://github.com/Chunshan-Theta/DeepLearning/blob/master/tensorFlow/cnn_Main.py
以下為全碼
from tensorflow.examples.tutorials.mnist import input_data
import matplotlib.pyplot as plt
import numpy as np
def draw_digit(data):
size = 28 plt.figure(figsize=(2.5, 3)) X, Y = np.meshgrid(range(size),range(size))
# convert from vector to 28x28 matrix
Z = data.reshape(size,size)
Z = Z[::-1,:] # flip vertical
plt.xlim(0,27) # 畫布大小
plt.ylim(0,27)
plt.pcolor(X, Y, Z)
plt.gray()
plt.tick_params(labelbottom="off")
plt.tick_params(labelleft="off")
plt.show()
# number 1 to 10 data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)
draw_digit(mnist.test.images[3])
正常來說,應該會顯示下面這樣(不一定是0)

如果你想知道輸入的物件的樣子,可以直接將mnist.test.labels[3]打印出來,若是想要更多相關的文章,可以看chainer 使用範例 教學,會日文的朋友可以看【機械学習】ディープラーニング フレームワークChainerを試しながら解説してみる。
1 thought on “將手寫數字照片庫MNIST_data 的數值還原成圖片”