はじめに
GIMPは、高機能で無料の画像編集ソフトとして人気ですが、Pythonで自動化できたらもっと便利だと思いませんか?PyGIMPは、そんな願いを叶える夢のプロジェクトです。Pythonの力でGIMPの機能をフル活用し、画像処理を自由自在に操れるようになります!
PyGIMPが切り開く新世界
PyGIMPは、PythonとGIMPの橋渡し的存在です。具体的には、次のようなことができます。
- PythonスクリプトからGIMPの機能を呼び出し: 画像のサイズ変更やフィルター処理など、GIMPでできることは、ほぼPythonから実行可能です。
- コマンドラインからのGIMP操作: 普段使い慣れたコマンドラインからGIMPを操作できるため、作業効率が大幅に向上します。
- 画像処理の自動化: 繰り返し行う作業や複雑な処理を自動化することで、時間と労力を大幅に削減できます。
デモ
百聞は一見に如かず!まずは、実際の動作をご覧ください。
ComfyUIとGIMPを連携させるための下準備⑫
PyGIMPをパッケージとして利用するようなサンプルコードも完成!!
あとはどう設計して接続するかだ!!! https://t.co/wOZqNIEy13 pic.twitter.com/RZobU7OAuk— Maki@Sunwood AI Labs. (@hAru_mAki_ch) July 20, 2024
さっそく始めよう!
環境構築
PyGIMPを使うには、以下の手順で環境を整える必要があります。
- GIMPのインストール : まずはGIMPをインストールしましょう。公式サイトからダウンロードできます。
- Pythonのインストール : 次に、Pythonをインストールします。PyGIMPはPython 3.8以上に対応しています。
- PyGIMPのインストール : 最後に、PyGIMPをインストールします。pipコマンドを使って簡単にインストールできます。
pip install pygimp-labs
PyGIMPの基本的な使い方
それでは、PyGIMPを使って簡単な画像処理を行ってみましょう。
設定ファイルの準備
PyGIMPでは、gimp_script_config.json
という設定ファイルを使います。このファイルに、Pythonスクリプトへの引数を記述します。
{
"arguments": {
"font_size": "78",
"input_image": "asset\\input\\input.png",
"output_path": "asset\\output\\out2.png",
"text": "GIMPを使用して\\nCLIから画像に\\nテキストをオーバーレイする方法"
},
"script_path": "script\\gimp_script_template.py"
}
Pythonスクリプトの作成
次に、gimp_script_template.py
のようなPythonスクリプトを作成します。このスクリプトでは、GIMPの機能を呼び出す処理を記述します。
# -*- coding: utf-8 -*-
from __future__ import print_function, unicode_literals
import sys
from gimpfu import *
import json
# JSONファイルから設定を読み込む
CONFIG_PATH = r"gimp_script_config.json"
with open(CONFIG_PATH, "r") as f:
CONFIG = json.load(f)
# 引数を取得
ARGS = CONFIG["arguments"]
# ... GIMPの機能を呼び出す処理 ...
pdb.gimp_quit(1)
実行
準備ができたら、コマンドラインから以下のコマンドを実行します。
pygimp-labs
PyGIMPは、コマンドライン引数で動作をカスタマイズできます。
| 引数 | 説明 | デフォルト値 | |---|---|---| | --font_size
| テキストのフォントサイズ | 78
| | --input_image
| 入力画像のパス | asset\input\input.png
| | --output_path
| 出力画像のパス | asset\output\out2.png
| | --text
| 画像にオーバーレイするテキスト | "GIMPを使用して\nCLIから画像に\nテキストをオーバーレイする方法"
| | --gimp
| GIMP実行ファイルのパス | "gimp-console-2.10.exe"
| | --log
| ログファイルのパス | "gimp_script.log"
| | --config
| 設定ファイルのパス | "gimp_script_config.json"
|
例えば、フォントサイズを100に変更したい場合は、以下のように実行します。
pygimp-labs --font_size 100
PyGIMPを支える技術
PyGIMPは、いくつかの素晴らしい技術の上に成り立っています。
- GIMP : 高機能でオープンソースの画像編集ソフト。PyGIMPは、GIMPの持つ豊富な機能をPythonから利用できるようにします。
- Python : シンプルで分かりやすい構文が特徴のプログラミング言語。PyGIMPは、Pythonを使ってGIMPを簡単に操作できるようにします。
- JSON : データを記述するためのフォーマット。PyGIMPは、設定ファイルにJSONを使用することで、柔軟な設定を可能にしています。
開発の舞台裏
PyGIMPの開発は、GitHub上のオープンソースプロジェクトとして行われています。
- リポジトリ: https://github.com/Sunwood-ai-labs/PyGIMP
- バグ報告: https://github.com/Sunwood-ai-labs/PyGIMP/issues
開発を加速させるAIの力
PyGIMPの開発には、AI技術も積極的に活用されています。
- Claude.ai : リリースノートやREADME、コミットメッセージの自動生成など、様々な場面で開発を支援しています。
- ChatGPT4 : コードの自動生成やドキュメント作成など、開発効率を向上させています。
これらのAI技術により、開発者はより創造的な作業に集中できるようになり、PyGIMPの進化を加速させています。
まとめ
PyGIMPは、Pythonの力でGIMPの可能性を無限に広げるプロジェクトです。ぜひ、PyGIMPを試して、画像処理の新しい扉を開いてみてください。そして、もしPyGIMPが気に入ったら、GitHubでスターを付けて応援してください!
コメント