無料の画像編集ソフトGIMPにStable DiffusionやremBGといったAIプラグインを導入してみました。GIMPに導入することで、AIツールと切り抜き、トリミング、拡大縮小、リサイズなどの画像編集機能を連携できるので、そのまま単体で使うよりも自由度高く、非常に便利に使うことができます。
ぜひ、皆さんも本稿の流れを参考に試してみてください。
GIMPとは
GIMPとはGNU Image Manipulation Programの略で、GNU一般公衆ライセンス(GNU General Public License)の元、オープンソースで開発されている無料の画像編集ソフトです。画像の切り抜き、トリミング、拡大縮小、リサイズなど基本的な画像編集ができる非常に便利なフリーソフトです。
Adobe photoshopのような有料の画像編集ソフトと比較すると、機能面や使い勝手で劣る部分がありますが、基本的な機能は網羅しています。ライトユーザであれば、慣れればGIMPで十分だと思います。
GIMPはオープンライセンスで開発されているため、世界中の有志が開発してくれた様々なプラグインを導入することができます。プラグインを導入することで、photoshopライクな操作感にしたり、種類豊富な画像レタッチフィルターを追加したりでき、拡張性も良いです。
画像編集ソフトでAIを使う利点
Chat-GPTを筆頭に世間で話題の生成AIですが、オンラインツールも豊富にあります。そちらを使っても良いのですが、GIMPなど画像編集ソフト上で使うことで、AIツールと、切り抜き、トリミング、拡大縮小、リサイズなどの基本機能を連携できるので、自由度が高くなります。
GIMP AIプラグインでできること
画像生成AIのStable Diffusionを導入できます。
テキストから画像生成、画像から画像生成、部分修正、高画質化(アップスケール)、背景削除などが可能になります。
プラグイン名称 | 主な機能 | 主なローカル環境要件 | クラウドでの利用 |
---|---|---|---|
Stable Boy | Stable Diffusion WebUI(A1111) の機能取り込み。 テキストから画像生成、画像から画像生成、部分修正、高画質化(アップスケール)などが可能。 | (推奨) ・最新モデルのAMDまたはIntel製CPU ・8GB以上のメモリ搭載のNVIDIA製GeForce RTX GPU | Google Colaboratory(Colab)ほか |
GIMP Remove Background Plugin(remBG) | 背景削除が可能。ローカル環境にインストールするか、クラウドAPIを利用できる。 | ・要件無し(CPU、GPUを利用可能。高性能GPUほど速い) | API |
OpenVINO AI Plugins for GIMP | GPU内蔵のインテル製の CPUでAI処理を高速化できるツールキット「OpenVINO」対応プラグイン。Stable Diffusion等の機能をNVIDIA製GeForce RTXシリーズなどの強力なGPU無しにローカル環境で利用できる。処理スピードはNVIDIA製GPUに劣る。 | ・第6世代(skylake)から第13世代(Raptor Lake)のインテル Core プロセッサー | Google Colaboratory(Colab)ほか (NVIDIA製GPUが使えるクラウド環境の場合はOpenVINOを使うメリット無し) |
クラウド環境で利用できたり、CPUベースで動作するように改良されているので、ローカル環境かつ強力なGPUを搭載しているPCが必須だった初期に比べると、生成AIの敷居がかなり低くなってきています。
Stable Diffusionで生成された画像の商用利用の可否については、使用するモデルデータによります。制約なく、安心して画像生成AIを利用したい場合は、Adobe Firefly(制限付き無料)をおすすめします。
事前準備:GIMP~プラグイン導入環境
①GIMP
使いたいプラグインにあったバージョンをインストールします。
プラグイン名称 | GIMPバージョン |
---|---|
Stable Boy | 安定版 |
GIMP Remove Background Plugin(remBG) | 安定版 |
OpenVINO AI Plugins for GIMP | 開発版 |
安定版 -ver. 2.10.38 (2024-05-02)
②Visual Studio、C++ 開発環境
Pythonで開発されたプラグインをビルドするために、C++開発環境を準備します。Visual Studio CodeとC++開発環境オプションをインストールしましょう。
③Python
最新バージョンではOpenVINOやStable Diffusion Web UIが動作しないので、とりあえずver.3.10.11をインストールしておけばOKです。リンク先下部の64bitインストーラを使います。
インストール時は、Add python.exe to PATHにチェックを入れて、pythonのパスを通すのを忘れないようにしましょう。
④Github Desktop
Githubのプラグインをローカル環境にクローンする方法はいくつかありますが、今回は、Github Desktopを使います。Githubアカウントを持っていない方は、アカウント作成しましょう。
1.Stable Boy (Stable Diffusion)
①Stable Diffusion Web UI
筆者はNvidia RTX4070Ti Superを搭載したPCを使用中、ローカル環境でStable Diffusion Web UIをインストールしています。Google Colaboratory(Colab)などクラウド環境へのインストール手順が知りたい方は検索しましょう。
【筆者の環境】以前はRTX3070、RAM32GB環境でしたが、十分動作していました。
OS | Windows 11 Home 64-bit |
CPU | AMD Ryzen 7 5700X3D |
RAM | 64GB |
GPU | PNY RTX 4070 Ti SUPER 16GB OC LED (VRAM:16GB) |
それでは、ローカル環境へのStable Diffusion Web UIのインストール手順を説明します。
Git
Stable Diffusion Web UIのインストール時のバッチ処理内でgitを使うので、Gitをインストールします。リンク先の64bitインストーラを使います。
Stable Diffusion Web UI本体
Github Desktopを使い、Stable Diffusion Web UIをローカル環境にクローンします。クローン先は、任意のフォルダを選択します。
クローン先のフォルダを開きwebui-user.batをダブルクリックすると、インストールが開始します。
インストールが完了すると、コマンドプロンプト画面に[Running on local URL: http://127.0.0.1:7860]が表示され、Stable Diffusion WebUIが自動的に起動します。一旦、WebUIを閉じます。
APIを起動するために、”webui-user.bat”をメモ帳などで編集し、起動オプションを変更します。“–api”を追記しましょう。
追記後、ダブルクリックでStable Diffusion Web UI APIを起動します。ここまでできればStable Diffusion側は準備完了です。
②Stable Boy
Github Desktopを使い、Stable Boyをローカル環境にクローンします。クローン先は、任意のフォルダを選択します。
クローンが完了したらGIMP安定版 -ver. 2.10.36 (2023-11-05)を起動します。
編集→設定→フォルダ→プラグインを選択し、プラグイン用フォルダにStable Boyをクローンしたフォルダを追加します。追加するときは、srcフォルダを指定します。
GIMPを再起動すると、ツールバーにStable Boyが追加されます。
512px x 512px の画像を新規作成します。※新規作成しておかないとStable Boyを利用できません。
Stable Boy → 設定 を選んで、APIのURLを指定します。ローカル環境の場合は、デフォルトのままでOKですので、下記画像になっているか確認してください。
以上でGIMPへのインストール完了です。
Stable Boyの使い方
Stable DiffusionをAPIで連携してGIMP側で利用するだけなので、Stable Diffusionが使える方は特に難しさを感じずに利用できるでしょう。
Image to Image | 画像+プロンプト(説明文)で画像生成 |
Inpainting | 画像とプロンプトで画像の一部だけを修正 |
Text to Image | プロンプトのみから画像生成 |
Upscale | 画像を高解像度化する |
学習モデルの変更などStable Diffusionの設定は、全てwebUI側で行います。
使用例)Text to Image
Stable Diffusion WebUIおよびGIMPを起動します。GIMP側で作りたい画像の解像度の新規画像を作成します。今回は600×800で作成してみます。
使用するモデルは、商用利用可能なDreamshaper V8を使ってみます。
プロンプト投稿サイトのPromptHeroを参考に下記プロンプトを使ってStep数25で作成します。
hologram of hybrid of woman and bird, vogue aesthetic, crazy woman, model watching on viewer, gucci tones, ultra detailed, cinematic, still from the movie, realistic, 35 mm, 1.4 f, 8k, –ar 4:5 –s 500
生成結果はこちらです。2回同じ設定で生成してみました。特に何も変更していないのですが、いい感じです。GIMPで使うメリットとして、この画像から切り抜きしたり、トリミングしたり、画像形式を指定してエクスポートしたりできます。
使用例)Inpainting
Inpaintingは少し使い方が異なります。
Stable BoyのInpaintingを使う前にプロンプトを適用したいエリアを新規レイヤーで黒色で塗りつぶします。レイヤーの名前は”Inpainting Mask”にします。
試しに、先ほどの画像の鳥を不死鳥に変更してみます。プロンプトには”red phoenix”を指定しました。
色指定精度アップのExtension「Cutoff」
”red phoenix”のように色を指定しても、デフォルトのStable Diffusionでは色指定が上手く動作しないことがあります。Stable Diffusionに”Cutoff”という追加のExtensionをインストールしましょう。
Extensionsタブ内のURL for extension’s git repositoryに、https://github.com/hnmr293/sd-webui-cutoff.git を追加してインストールします。
インストール完了後にStable Diffusionを再起動するとtxt2Img、Img2Imgのタブの下の方にCutoffが追加されるので、Enabledにチェックを入れて有効化します。今回は、Img2Img内のInpaintを使うので、Img2Imgタブ側のCutoffにおいて、色指定の単語 red をTarget tokensに入力し、Weightを2 (最大)に指定します。Weightは2までしないと効果がありませんでした。
ここまで設定をした状態でInpaintingを実行すると、先ほど黒くマスクした領域の”鳥”が”赤い不死鳥”になります。
元画像「Text to Image」で生成
「Inpainting Mask」レイヤー、指定範囲を黒塗する
“red phoenix” (Cutoffオン)で生成した結果
Inpaintingの範囲指定は、webUIよりもGIMPの方がブラシサイズを変えたりできるので、自由度が高くおすすめです。
2.GIMP Remove Background Plugin (remBG)
remBGをGIMPにインストールする方法は2つあります。1つはローカルのCPUまたはGPUを使用する方法、もう1つはオンライン経由でAPIを使う方法です。APIを使う場合は、画像をオンラインにアップロードしないといけないため、セキュリティの観点から危険性あります。よって、今回はローカルのCPUまたはGPUにインストールする方法を紹介します。使用するGIMPは安定版 -ver. 2.10.36 (2023-11-05)の方です。
remBG本体
Windows Powershellを使って、remBGをインストールします。インストールコマンドは下記です。
演算タイプ | コマンド |
---|---|
CPU演算 | pip install rembg |
GPU演算 | pip install rembg[gpu] |
GIMP remBGプラグイン
下記リンクからRemoveBG.pyをダウンロードしてください。謎の中国語表記などがあり、使いにくかったので、ネットで拾ったものを少し改良したものを配布します。
RemoveBG.pyをVisual Studio Codeで開き、中段にあるrembg.exeのパスを修正します。“USER”の部分を自分のユーザ名に変更してください。例)”C:¥Users\\nhabits\\AppData\\~”となります。
GIMPを起動し、編集→設定→フォルダ→プラグインを選択、”AppData”が含まれているフォルダを選択した状態で右上のマークを押すと、そのフォルダが表示されます。
先ほど編集したRemoveBG.pyをコピーします。
GIMPを再起動すると、remBGプラグインが有効になっていれば、インストール完了です。
使用例)AI Remove Image Background
先ほど作成した画像の背景を消してみます。画像を開いたら、remBGを起動します。
基本はデフォルトのままでいいと思います。モデル(Model)などを細かく調整すると背景削除の精度が上がるかもしれないので、色々試してみてください。
OKを押すとバックグラウンド処理(コマンドプロンプト)が始まり、AI背景削除が実行されます。新規レイヤーで削除後が追加されていれば成功です。元画像の方の目のマークを押して非表示にすると削除結果が確認できます。
あとは、エクスポートして保存すれば完了です。
3.OpenVINO AI Plugins for GIMP【intel only】
筆者は、AMD製のCPUを使っているため、OpenVINOを使用することはできません。下記リンク先にてTechnically Impossibleさんが詳しく解説されているので、そちらをご参考ください。
まとめ
今回は、無料の画像編集ソフトGIMPに導入できるAIプラグインを紹介しました。インストールが少し面倒な部分もありますが、本稿の流れに従えば、比較的スムーズに導入できると思います(筆者は英語などの外国語の記事を読み漁りながら試行錯誤の末、導入完了できました。)
本稿で紹介したStable DiffusionやremBGは、別記事で紹介した商用利用可能なAdobe Fireflyとは違った、細かな調整ができる面白さがあります。Stable Diffusionは、様々なモデルが用意されているので、皆さんもぜひ試してみてください。
Stable Diffusionのおすすめモデルについては、機会をみて紹介しますので、お楽しみに。