元の写真を切り貼りするなどして合成し、新しく作成した画像を通称「コラージュ画像」といい、略して「コラ画像」と呼びます。
AI画像を作成するためのツールであるStable Diffusion(ステーブルディフュージョン)では、このコラ画像を簡単に作成することができる機能が存在しています。
そのため、今回はStable Diffusionを用いてコラ画像を作る方法を紹介したいと思います。
Stable Diffusionとは
まずは、コラ画像の作り方について解説する前に、そもそもStable Diffusionとはどういったものなのかについて、解説していきたいと思います。
Stable Diffusionとは、ユーザーが自由に入力した英語のテキストを元に、自動で画像を生成してくれる画像生成AIです。
2022年8月に公開されたサービスで、誰でも無料で使用することができます。
開発した企業はイギリスに拠点を置く「Stability AI」という企業です。
Stable Diffusionは、ユーザーが入力したプロンプトとネガティブプロンプトというテキストを元に画像を生成してくれるため、テキストを詳細に入力するほど、ユーザーがイメージした画像に近いイラストを作成してくれます。
そして、生成した画像の一部に変更を加えて新しい画像を生成することも可能です。
また、使用するモデルや画像の内容によっては商用利用できないこともありますが、基本的には作成した画像の商用利用が認められています。
無料で利用できる点と基本的に商用利用が可能な点は他の画像生成AIとは異なる部分でもあるため、Stable Diffusionの魅力であるといえます。
うまく画像生成ができると以下のような画像を作ることができます。
※「Stable Diffusion」についてさらに詳しく知りたい方は、以下の記事を参考にしてください。
【Google Colab】Stable Diffusionの立ち上げ方
Stable Diffusionを立ち上げる方法はいくつかありますが、今回はGoogle Colabを使ってStable Diffusionを立ち上げる方法を解説したいと思います。
Google ColabでStable Diffusionを立ち上げる方法には以下の2種類の方法があります。
- GoogleドライブからStable Diffusionを立ち上げる
仮想マシンを利用してStable Diffusionを立ち上げる
まずは、1. GoogleドライブからStable Diffusionを立ち上げる方法について解説していきます。
GoogleドライブからStable Diffuisonを立ち上げる場合は、「fast-stable- diffusion」を用います。
Googleドライブから立ち上げるときの手順は以下のとおりです。
- Google Colabのファイルをクリックし、その中からノートブックを開くをクリックする
- Githubというタブに「https://github.com/TheLastBen/fast-stable-diffusion.git」を入力する
- レポジトリで「TheLastBen/fast-stable-diffusion」を選択する
- fast_stable_diffusion_AUTOMATIC1111.ipynbをクリックする
- 「Connect Google Drive」、「Install/Update AUTOMATIC1111 repo」、「Requirements」、「Model Download/Load」、「Download Lora」、「ControlNet」、「Start Stable-Diffusion」を上から順番に実行する
- 「Rnning on public URL」が表示されたらクリックする
「Models Download/Load」の画面では、Stable Diffusionのバージョン、および適用するモデルを選択することができます。
適用するモデルを選択する際は、ノートブックの左側にあるファイルアイコンからモデルが入っているフォルダを探し、「パスをコピー」をクリックすることで「PATH_to_MODEL:」にテキストをペーストできるようになります。
次に2. 仮想マシンを利用してStable Diffusionを立ち上げる方法についてです。
仮想マシンからStable Diffusionを立ち上げる場合の手順は以下のとおりです。
- Google Colabを開き、メニューバーの「ファイル」から「ノートを新規作成」をクリックする
- メニューバーの「ランタイム」から「ランタイムのタイプを変更」をクリック
- 「ランタイム」を「GPU」に変更する
- 「接続」をクリックする
- 起動したいモデルのコードを入力し、実行する(今回は、「basil_mix」というモデルを使用しております)
- 「Running on public URL」が表示されたらクリックする
また、仮想マシンから立ち上げる際に使った「basil_mix」のコードは以下です。
!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
%cd /content/stable-diffusion-webui
!wget https://huggingface.co/nuigurumi/basil_mix/resolve/main/Basil_mix_fixed.safetensors -O /content/stable-diffusion-webui/models/Stable-diffusion/Basil_mix_fixed.safetensors
!wget https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors -O /content/stable-diffusion-webui/models/VAE/vae-ft-mse-840000-ema-pruned.safetensors
!python launch.py --share --xformers --enable-insecure-extension-access
以上の2つの方法を用いることで、Google ColabからStable Diffusionを立ち上げることができます!
※Stable DiffusionをGoogle Colabで使う方法は、以下の記事を参考にしてください。
Stable Diffusionでコラ画像を作る方法
次は、Stable Diffusionでコラ画像を生成するための具体的な方法についてご紹介していきます。
まずは、上記の方法のうち、どちらかの方法を使ってStable Diffusionを立ち上げていくのですが、コラ画像を作成するには「ControlNet」という拡張機能と「ControlNet」内の機能である「OpenPose」の導入が不可欠です。
そのため、Stable Diffusionを立ち上げる際に、「ControlNet」と「OpenPose」を導入しましょう。
GoogleドライブからStable Diffusionを立ち上げる場合は、「ControlNet」を実行する前に「OpenPose」を選択しましょう。
また、仮想マシンを使ってStable Diffusionを立ち上げる場合は、Stable Diffusionの「Extensions」タブから「Install from URL」をクリックし、「URL for extension’s git repository」にURLを入力して「ControlNet」と「OpenPose」をインストールする必要があります。
「ControlNet」と「OpenPose」のインストールに必要なURLはそれぞれ下記のとおりです。
「ControlNet」
https://github.com/Mikubill/sd-webui-controlnet
「OpenPose」
https://github.com/fkunn1326/openpose-editor.git
インストールが完了したら、Stable Diffusionを再起動しましょう。
そうすることで、仮想マシンから Stable Diffusionを立ち上げる場合でも「ControlNet」と「OpenPose」の使用が可能になります。
「ControlNet」と「OpenPose」の準備が完了し、Stable Diffusionを立ち上げたら、コラ画像の作成に進んでいきます。
①元画像をimg2imgにドラッグ&ドロップする
Stable Diffusionを立ち上げたら、まずは「img2img」タブの「Inpaint」という項目にコラ画像の元として使用する画像をアップロードする必要があります。
元画像のアップロード手順は以下のとおりです。
「img2img」タブを開く
「Inpaint」という項目をクリックする
コラ画像の元として使用する画像をアップロードする。
今回は、以下の画像を元画像として用意しました。
また、今回使用する元画像を生成する際に使ったプロンプトは以下です。
・プロンプト
1woman, smile face, glossy lips, pink short hair, beautiful body, extremely stylish, T-shirt
・ネガティブプロンプト
((NSFW)), worst quality, bad quality, low quality, normal quality, bad anatomy, sketch, bad hands, poorly eyes, bad body, bad lips
もしよろしければ参考にしてみてください。
②変更したい部分を塗りつぶし、呪文(プロンプト)を入力する
画像のアップロードが完了したら、次は変更したい部分の塗りつぶしとプロンプトの入力をしていきます。
「Inpaint」の画面では、元画像を塗りつぶすことができます。
元画像の変更を加えたい部分を塗りつぶし、変更する範囲を指定しましょう。
今回は半袖Tシャツをセーターに変更したいので、首から下の部分を塗りつぶします。
塗りつぶしが完了したら、「img2img」タブ内のプロンプトを入力する欄にプロンプトを入力していきます。
今回は、ネガティブプロンプトについては元画像を生成したときと同じものを用い、プロンプトは「T-shirt」を「sweater」に変更しました。
・プロンプト
1woman, smile face, glossy lips, pink short hair, beautiful body, extremely stylish, sweater
・ネガティブプロンプト
((NSFW)), worst quality, bad quality, low quality, normal quality, bad anatomy, sketch, bad hands, poorly eyes, bad body, bad lips
③元画像をControlNetにもドラッグ&ドロップする
元画像の塗りつぶしとプロンプトの入力が完了したら次は「ControlNet」にも元画像をアップロードしていきます。
アップロードの手順は以下のとおりです。
- 「txt2img」タブを開く
- 「ControlNet」の欄にある◀️をクリックする
- 画像をアップロードする
④Preprocessorに「OpenPose_full」、Modelに「OpenPose」を選択する
画像をアップロードしたら、「ControlNet」の設定を行っていきます。
設定の手順は以下のとおりです。
- 「Enable」にチェックを入れる
- 「Preprocessor」で「openpose_full」を選択する
- 「Model」で「control_v11p_sd15_openpose_fp16」を選択する
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい
Stable Diffusionでコラ画像を生成してみた結果
以上の設定を済ませたら、画像を生成していきます。
すると、以下のコラ画像が生成されました。
服がTシャツからセーターに変更されたコラ画像が生成されているのがおわかりいただけると思います。
このように、 Stable Diffusionでは、いくつかのステップを踏むだけで誰でも簡単にコラ画像を生成することができます。
まとめ
いかがでしたでしょうか?
今回は、Stable Diffusionとは何か、Stable Diffusionの立ち上げ方、そしてStable Diffusionを使ってコラ画像を作成する方法について解説してきました。
今回のポイントをまとめると、以下のようになります。
- Stable Diffusionは、入力したテキストに応じて自動で画像を生成できる画像生成AI
- Stable Diffusionの立ち上げ方は、「Googleドライブ」から立ち上げる方法と「仮想マシン」から立ち上げる方法の2種類がある
- コラ画像を作成する際には、Stable Diffusionに「ControlNet」と「OpenPose」を導入する必要がある
- コラ画像を生成する手順は、「①元画像をimg2imgにドラッグ&ドロップする」、「②変更したい部分を塗りつぶし、呪文(プロンプト)を入力する」、「③元画像をControlNetにもドラッグ&ドロップする」、「④Preprocessorに「OpenPose_full」、Modelに「OpenPose」を選択する」の4つ
Stable Diffusionに「ControlNet」と「OpenPose」の導入をすれば、コラ画像の作成は簡単にできてしまいます。
ぜひ活用してみてください!
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい