PIL(Python Imaging Library)は、Pythonで画像を処理するためのライブラリです。今回はPILを使った簡単な画像処理を行うPythonスクリプトを紹介します。
目次
PILとは?
PIL(Python Imaging Library)は、Pythonプログラミング言語で画像処理を行うためのライブラリです。
1990年代後半に開発され、画像の読み込み、保存、変換、編集など、画像処理の基本機能を提供していました。
しかし、PILは公式のサポートが終了しており、現在ではPillowというフォーク(派生プロジェクト)がその機能を引き継いでいます。
Pillowは、PILの機能を拡張し、バグ修正や新機能追加を行っているオープンソースライブラリです。
PillowはPILの後継であり、現代のPython環境に適合しています。Pillowを使うことで、PILの全機能を利用しつつ、より安定した環境で画像処理を行うことができます。
PillowはPythonのパッケージ管理ツール「pip」を使用して簡単にインストールできます。
pip install Pillow
Pillowの基本的な使い方
Pillowを使った画像処理の基本的な操作をいくつか紹介します。
画像の読み込みと表示
まずは画像を読み込み、表示する基本的なコードです。
from PIL import Image
# 画像の読み込み
image = Image.open('example.jpg')
# 画像の表示
image.show()
画像のサイズ変更
画像のサイズを変更する方法は以下の通りです。
from PIL import Image
# 画像の読み込み
image = Image.open('example.jpg')
# サイズを指定してリサイズ
new_image = image.resize((800, 600))
# リサイズした画像の保存
new_image.save('resized_example.jpg')
画像の切り抜き
画像の一部を切り抜く操作も簡単です。
from PIL import Image
# 画像の読み込み
image = Image.open('example.jpg')
# 切り抜き領域を指定(左、上、右、下)
cropped_image = image.crop((100, 100, 400, 400))
# 切り抜いた画像の保存
cropped_image.save('cropped_example.jpg')
画像へのフィルタ適用
画像にフィルタを適用することも可能です。以下はブラー(ぼかし)フィルタの適用例です。
from PIL import Image, ImageFilter
# 画像の読み込み
image = Image.open('example.jpg')
# ぼかしフィルタの適用
blurred_image = image.filter(ImageFilter.BLUR)
# ぼかした画像の保存
blurred_image.save('blurred_example.jpg')
まとめ
PIL(Python Imaging Library)は、Pythonで画像処理を行うための古典的なライブラリでしたが、現在ではPillowがその役割を引き継いでいます。
Pillowは、PILの機能をほぼ完全にサポートし、さらに機能強化やバグ修正も行われています。画像処理を行う際には、ぜひPillowを使ってみてください。