web-dev-qa-db-fra.com

Afficher une image avec Python

J'ai essayé d'utiliser IPython.display avec le code suivant:

from IPython.display import display, Image
display(Image(filename='MyImage.png'))

J'ai aussi essayé d'utiliser matplotlib avec le code suivant:

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
plt.imshow(mpimg.imread('MyImage.png'))

Dans les deux cas, rien ne s'affiche, pas même un message d'erreur.

31
FiReTiTi

Si vous utilisez matplotlib et souhaitez afficher l'image dans votre cahier interactif, procédez comme suit: 

%pylab inline
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
img=mpimg.imread('your_image.png')
imgplot = plt.imshow(img)
plt.show()
69
Joe Bathelt

Si vous utilisez matplotlib, vous devez afficher l'image à l'aide de plt.show() sauf si vous n'êtes pas en mode interactif . E.g .:

plt.figure()
plt.imshow(sample_image) 
plt.show()  # display it
18
MaxPowers

De manière beaucoup plus simple, vous pouvez faire la même chose en utilisant 

import Image

image = Image.open('image.jpg')
image.show()
9
the_unknown_spirit

L'utilisation d'opencv-python est plus rapide pour plus d'opérations sur l'image:

import cv2
import matplotlib.pyplot as plt

im = cv2.imread('image.jpg')
im_resized = cv2.resize(im, (224, 224), interpolation=cv2.INTER_LINEAR)

plt.imshow(cv2.cvtColor(im_resized, cv2.COLOR_BGR2RGB))
plt.show()
4
Qhan

C'est simple. Utilisez le pseudo-code suivant 

from pylab import imread,subplot,imshow,show

import matplotlib.pyplot as plt

image = imread('...')  // choose image location

plt.imshow(image)

plt.show() // ceci vous montrera l'image sur la console.

2
Ayush Srivastava

Cela a fonctionné pour moi, inspiré par @the_unknown_spirit

from PIL import Image
image = Image.open('test.png')
image.show()
2
Punnerud

Votre première suggestion fonctionne pour moi

from IPython.display import display, Image
display(Image(filename='path/to/image.jpg'))
0
Harry Moreno