web-dev-qa-db-fra.com

Dimension non valide pour les données d'image dans plt.imshow ()

J'utilise un ensemble de données mnist pour former un réseau de capsules en arrière-plan de keras. Après la formation, je souhaite afficher une image à partir d'un ensemble de données mnist. Pour charger des images, mnist.load_data () est utilisé. Les données sont stockées en tant que (x_train, y_train), (x_test, y_test). Maintenant, pour visualiser l'image, mon code est le suivant:

img_path = x_test[1]  
print(img_path.shape)
plt.imshow(img_path)
plt.show()

Le code donne la sortie comme suit:

(28, 28, 1)

et l'erreur sur plt.imshow (img_path) comme suit:

TypeError: Invalid dimensions for image data

Comment afficher l'image au format png. Aidez-moi!

5
Anusha Mehta

Vous pouvez utiliser tf.squeeze pour supprimer les dimensions de la taille 1 de la forme d'un tenseur.

plt.imshow( tf.shape( tf.squeeze(x_train) ) )

Consultez l'exemple TF2.

0
Parth Patel