Comment afficher une Image de PIL dans ipython notebook
C'est mon code
from PIL import Image
pil_im = Image.open('data/empire.jpg')
Je voudrais faire quelques manipulation de l'image, puis de l'afficher sur l'écran.
Je vais avoir des problème avec la montre LIP Image en python portable.
J'ai essayé:
print pil_im
Et juste
pil_im
Mais les deux me donnent juste:
<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=569x800 at 0x10ECA0710>
- voulez-vous montrer l'image d'aperçu, ou vous souhaitez afficher d'image en ligne?
- inline, après la cellule
- Voir aussi Comment puis-je afficher une image à partir d'un fichier dans Jupyter ordinateur Portable.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser IPython est
Module: display
pour charger l'image. Vous pouvez lire plus de le Doc.mis à jour
Que l'OP s exigence est d'utiliser
PIL
, si vous souhaitez afficher une image en ligne, vous pouvez utilisermatplotlib.pyplot.imshow
avecnumpy.asarray
comme cela aussi:Si vous n'avez besoin que d'un aperçu plutôt que de un en ligne, vous pouvez simplement utiliser
show
comme ceci:IPython.core
il n'est pas stable api, nous exposons l'api stable directement dansIPython.display
. J'ai édité le post moi-même.pil_im
core
, heureux que j'ai appris une nouvelle chose 🙂PIL
, comme demandé dans l'OP.core
exposés dansdisplay
. et c'est plus court à taper 🙂PIL.Image
est un module, pas un appelable. Et si vous voulez direIPython.display.Image
, c'est de dire:Cannot embed the 'gif' image format
Ipython.display.Image
et il prend actuellement en charge uniquement png/jpg/jpeg. Donc non, il n'y a pas une ligne de raccourci natif de Ipython autant que je sache.Utilisation IPython affichage de rendre PIL images dans un ordinateur portable.
J'ai trouvé que cela fonctionne
Après ce que je peux le faire:
Mais ce doit être la dernière ligne dans la cellule, sans
print
après ilcas python3
style=\"width:100px; height:100px;\"
entre<img
etsrc
Si vous utilisez le pylab extension, vous pouvez convertir l'image d'un tableau numpy et l'utilisation matplotlib est imshow.
EDIT:
Comme mentionné dans les commentaires, le module pylab est obsolète, il faut donc utiliser la matplotlib magie au lieu et à l'importation de la fonction explicitement:
Sur la base d'autres réponses et ma tente, meilleure expérience serait la première installation, oreiller et scipy, puis à l'aide de départ ci-dessous le code sur votre jupyter portable:
Un nettoyeur de Python3 version standard, numpy, matplotlib et PIL. La fusion de la réponse pour l'ouverture de l'URL.
Vous pouvez ouvrir une image à l'aide de la classe Image provenant de l'ensemble du DIP et de l'afficher avec plt.imshow directement.