10行プログラム:画像をモノクロにする

10行以内のプログラム
スポンサーリンク

以前、10行でQRコードを生成するプログラムを紹介しました。

実は、その際インストールしたPythonのライブラリPillowを使うと簡単にデジカメ写真などをモノクロに出来ます。(もちろんモノクロ以外の画像加工も得意だと思いますが…キリがないので今回はモノクロのみでいきます)

今回は、題して『10行で画像をモノクロにする』です。

スポンサーリンク

準備

Python3のインストール

Python3をインストールしましょう。(インストールされていれば飛ばしてください)

Pillowライブラリのインストール

画像処理で有名なライブラリPillowをインストールします。

例)Windowsのコマンドプロンプト上で実行

pip install pillow

画像の準備

以下で紹介するPythonスクリプトと同じフォルダに画像を配置してください。
スマホで撮影した画像でもなんでもいいです!

準備は以上です。

10行スクリプト

以下のファイルを作成し保存します。

スクリプト4行目の画像ファイル名を各自で用意した画像ファイルに置き換えてスクリプトを保存してください。

ファイル名:saveMono.py

# -*- coding: utf-8 -*-
import os.path
from PIL import Image
inputFile = "small_flower.jpg"# 画像ファイル読み込み
img = Image.open(inputFile)  # 画像ファイルを開く
imgMono = img.convert("L")# モノクロに変換
outFile, ext = os.path.splitext(inputFile)  # 入力ファイル名をファイル名+拡張子部分に分割
outFile = outFile + "_mono.jpg"# 出力ファイル名に「_mono」をつける
imgMono.save(outFile)  # 画像ファイルとして保存
print(outFile + "を出力しました")  # メッセージ出力

実行方法

以下のコマンドで実行します。

python saveMono.py

実行後、元画像ファイル名_mono.jpgとしてモノクロ画像に変換された画像が保存されます。

実際の変換例

いかがでしたか?
Pillowにはもっと面白い機能があります。
ぜひ挑戦してみてください。

参考:
 Pythonの画像処理ライブラリPillow(PIL)の使い方
 Python でグレースケール(grayscale)化 – Qiita

コメント