Posted at

Matplotlibで画像を表示

More than 3 years have passed since last update.


とにかく表示

とにかく表示するだけなら、Image.show()メソッドが使える。

各OSの標準ビューアが開く。

#coding:utf-8

from PIL import Image

#画像の読み込み
im = Image.open("./achan.jpg")

#表示
im.show()


普通のPythonプログラム

普通?のPythonプログラムの中で表示したければ、グラフ同様、Matplotlibを利用することができる。

キャプションとかが入れられるので便利といえば便利。

#coding:utf-8

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np

#画像の読み込み
im = Image.open("./achan.jpg")

#画像をarrayに変換
im_list = np.asarray(im)
#貼り付け
plt.imshow(im_list)
#表示
plt.show()

どうやらピクセル数が座標にマップされるようです。


Jupyter

Jupyter(IPython)のnotebookの中で表示したい場合は、プログラム初頭で、%matplotlib inlineとする。

すると、インライン表示される(しなければ、別ウインドウが開く)。


notebook起動時にinlineオプションをつける方法もある。コードを変えたくない場合はそちらのほうがいいかも。


#coding:utf-8

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np

#Jupyterでインライン表示するための宣言
%matplotlib inline #追加

#画像の読み込み
im = Image.open("./achan.jpg")

#画像をarrayに変換
im_list = np.asarray(im)
#貼り付け
plt.imshow(im_list)
#表示
plt.show()