web-dev-qa-db-ja.com

TensorFlow-MNIST DataSetからの画像を表示

TensorFlowを学習しようとしていますが、次のリンクからMNISTの例を実装しています: http://openmachin.es/blog/tensorflow-mnist トレーニング/テスト画像を実際に表示できるようにしたい。だから私は最初のバッチの最初の列車の写真を表示するコードを追加しようとしています:

x_i = batch_xs[0]
image = tf.reshape(x_i,[28,28])

データはfloat32型(値は[0,1]の範囲)であるため、画像を表示するためにuint16に変換してからpngにエンコードしようとしました。 tf.image.convert_image_dtype and tf.image.encode_pngを使用してみましたが、成功しませんでした。生のデータを画像に変換して画像を表示する方法を理解してもらえますか?

16
JonyK

チュートリアルを読んだ後は、TFを必要とせずにすべてをnumpyで実行できます。

import matplotlib.pyplot as plt
first_array=batch_xs[0]
#Not sure you even have to do that if you just want to visualize it
#first_array=255*first_array
#first_array=first_array.astype("uint8")
plt.imshow(first_array)
#Actually displaying the plot if you are not in interactive mode
plt.show()
#Saving plot
plt.savefig("fig.png")

PILまたは使用している視覚化ツールを使用することもできます。

10
jean
X = X.reshape([28, 28]);
plt.gray()
plt.imshow(X)

これは動作します。

9
user7848353

ML初心者向けチュートリアルMNISTのコードに加えて、mnistデータセットの画像を視覚化できます。

import matplotlib.pyplot as plt
batch = mnist.train.next_batch(1)
plotData = batch[0]
plotData = plotData.reshape(28, 28)
plt.gray() # use this line if you don't want to see it in color
plt.imshow(plotData)
plt.show()

ここに画像の説明を入力

2
Xihao Li

MNISTイメージを表すnumpy配列を以下の関数に渡すと、matplotlibを使用して図が表示されます。

def displayMNIST(imageAsArray):
    imageAsArray = imageAsArray.reshape(28, 28);
    plt.imshow(imageAsArray, cmap='gray')
    plt.show()
0
Anna Vopureta