web-dev-qa-db-fra.com

TensorFlow - Afficher l'image du MNIST DataSet

J'essaie d'apprendre TensorFlow et j'ai implémenté l'exemple MNIST à partir du lien suivant: http://openmachin.es/blog/tensorflow-mnist Je veux pouvoir voir réellement la formation/tester les images. J'essaie donc d'ajouter du code qui montrera la première image du train du premier lot:

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

Maintenant, parce que les données sont de type float32 (avec des valeurs dans la plage [0,1]), j'ai essayé de les convertir en uint16 puis de les encoder en png afin d'afficher l'image. J'ai essayé d'utiliser tf.image.convert_image_dtype and tf.image.encode_png, mais sans succès. Pouvez-vous m'aider à comprendre comment convertir les données brutes en image et afficher l'image?

16
JonyK

Après avoir lu le tutoriel, vous pouvez tout faire en nombre sans avoir besoin de TF:

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")

Vous pouvez également utiliser PIL ou tout autre outil de visualisation dans lequel vous vous trouvez.

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

cela marche.

9
user7848353

En plus des codes du didacticiel MNIST pour les débutants ML, vous pouvez visualiser l'image dans le jeu de données 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()

entrez la description de l'image ici

2
Xihao Li

Passez un tableau numpy représentant une image MNIST à la fonction ci-dessous et il affichera une figure en utilisant matplotlib.

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