note.nkmk.me

Python, Pillowで画像をネガポジ反転(画素値を逆転)

Date: 2017-12-02 / tags: Python, Pillow, 画像処理

Pythonの画像処理ライブラリPillow(PIL)のImageOpsモジュールに、画像をネガポジ反転(画素値を逆転)する関数invert()が用意されている。

ImageChopsモジュールにも同様の関数がある。

Pillow(PIL)のインストール、基本的な使い方などは以下の記事参照。

スポンサーリンク

コード例

画像を読み込みinvert()を呼ぶだけ。

from PIL import Image, ImageOps

im = Image.open('data/src/lena.jpg')
im_invert = ImageOps.invert(im)
im_invert.save('data/dst/lena_invert.jpg', quality=95)

lena pillow invert lena

透過pngをopen()で読み込むとmodeRGBAとなり正しく処理されないので、convert()RGBに変換する。

most operators only work on L and RGB images.
ImageOps Module — Pillow (PIL Fork) 4.4.0.dev0 documentation

im = Image.open('data/src/horse.png').convert('RGB')
im_invert = ImageOps.invert(im)
im_invert.save('data/dst/horse_invert.png')

horse pillow invert horse

スポンサーリンク
シェア
このエントリーをはてなブックマークに追加

関連カテゴリー

関連記事