今回はStable Diffusionの拡張機能、Latent Coupleの使い方について解説します。
Latent Coupleを使いこなすことで、画像内の領域を自在に描き別けることが可能ですので、ぜひ挑戦してみてください。
また、当ブログのStable Diffusionに関する記事を以下のページでまとめていますので、あわせてご覧ください。

Stable Diffusionとは
Stable Diffusion(ステーブル・ディフュージョン)は2022年8月に無償公開された描画AIです。ユーザーがテキストでキーワードを指定することで、それに応じた画像が自動生成される仕組みとなっています。
NVIDIAのGPUを搭載していれば、ユーザ自身でStable Diffusionをインストールし、ローカル環境で実行することも可能です。
(出典:wikipedia)
Stable DiffusionのWeb UI AUTOMATIC1111
AUTOMATIC1111はStable Diffusionをブラウザから利用するためのWebアプリケーションです。
AUTOMATIC1111を使用することで、プログラミングを一切必要とせずにStable Diffusionで画像生成を行うことが可能になります。
Web UI AUTOMATIC1111のインストール方法
Web UIであるAUTOMATIC1111を実行する環境は、ローカル環境(自宅のゲーミングPCなど)を使用するか、クラウドコンピューティングサービスを利用する2通りの方法があります。
以下の記事ではそれぞれの環境構築方法について詳し解説していますので、合わせてご覧ください。

Latent Coupleとは
Latent Coupleは、1つの画像内に複数のキャラクターを描画することができる機能です。
画像を複数の領域に分割し、それぞれに個別のプロンプトを使って画像の内容を細かく指示することができます。
Latent Coupleの公式リポジトリは以下となります。

Latent Coupleのインストール
WebUIを起動したら、Settings
タブをクリックします。

Install from URL
タブをクリックします。

URL for extension's git repository
に以下のURLを入力します。
https://github.com/opparco/stable-diffusion-webui-two-shot
入力したらInstall
をクリックします。

以下のメッセージが出たらインストール完了です。
WebUIを再起動してください。


Latent Coupleの使い方
WebUIを再起動したら、Latent Couple
の項目が追加されていますのでクリックします。

Latent Coupleのパラメータ、Divisions
とPositions
を入力します。

Divisions
とPositions
を入力後、Visualize
をクリックすると、画面分割のプレビューが表示さえます。
プレビュー結果が意図した通り表示されない場合は、パラメータを修正してください。

Enabled
のチェックボックスをONにします。
必要に応じてWeights
とend at this step
の値も変更します。

最後にプロンプトとその他のパラメータを入力し、Genrate
をクリックすると画像が生成されます。


Latent Coupleのパラメータ
ここからは、Latent Coupleのパラメータの設定方法について解説します。
パラメータ解説
Enabled
このチェックボックスがオンの場合のみ、Latent Coupleの効果が適用されます。
Divisions、Positions、Weights
Divisions(分割)、Positions(位置)、Weights(重み)を指定します。
これらのパラメータに基づいて画像内の領域が作成されます。
パラメータ | 機能 |
---|---|
Divisions(分割) | (縦の分割数):(横の分割数) |
Positions(位置) | (縦の位置):(横の位置) |
Weights(重み) | 各領域の強度を指定します。 |
end at this step
Latent Coupleの処理は、end at this step
指定されたステップが終了するまで実行されます。
Visualize button and Regionsで確認する
デフォルトのパラメータは以下のように設定されます。
Divisions 1:1,1:2,1:2
Positions 0:0,0:0,0:1
Visualize button and Regions
をクリックすると、以下のようにプレビューが表示されます。

赤字で記載した各アルファベットの用域に対するプロンプトを指定します。
今回は3パターン作成するため、ANDで区切って記述します。
A→黄色、B→オレンジ、C→緑に対応しています。

実行結果
実際にLatent Coupleを使って画像を生成してみます。
プロンプト
今回は例として以下のプロンプトを用意しました。
女性二人を一枚の画像に描画するプロンプトです。
((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls
AND ((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls, Japanese idle (Japanese actress) ,beautiful girl with beautiful details, very cute, beautiful girl with beautiful details, professional photography lighting, extremely detailed eyes and face, eyes with beautiful details, bob cut, Blonde hair, casual clothes
AND ((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls, Japanese idle (Japanese actress) ,beautiful girl with beautiful details, very cute, beautiful girl with beautiful details, professional photography lighting, extremely detailed eyes and face, eyes with beautiful details, long hair, brown hair, casual clothes
ネガティブプロンプト
ネガティブプロンプトは以下の通りです。
Easy Negative (worst quality:2) (low quality:2) (normal quality:2) lowers normal quality ((monochrome)) ((grayscale)),skin spots,acnes,skin blemishes,age spot,ugly face,fat,missing fingers, extra fingers, extra arms,open chest,thick eyebrows, huge breasts, open chest
生成された画像

調整したプロンプト
左の子の髪の色に対するプロンプトがあまり効いていないので、強調するよう((Blonde hair))
と変更しました。
((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls, in town
AND ((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls, Japanese idle (Japanese actress) ,beautiful girl with beautiful details, very cute, beautiful girl with beautiful details, professional photography lighting, extremely detailed eyes and face, eyes with beautiful details, bob cut, ((Blonde hair)), casual clothes
AND ((masterpiece:1.4, best quality)), ((masterpiece, best quality)), (photo realistic:1.4), (ultra highres:1.2), 2girls, Japanese idle (Japanese actress) ,beautiful girl with beautiful details, very cute, beautiful girl with beautiful details, professional photography lighting, extremely detailed eyes and face, eyes with beautiful details, long hair, brown hair, casual clothes
生成された画像
プロンプトを修正し、再度画像生成を実行すると修正した左の子の髪型だけが変更されているので、Latent Coupleが正しく機能していることが確認できました。

プロンプトの作成が難しいと思われている方には、AIでプロンプトを自動生成するのがおすすめです。「StableDiffusionのプロンプト(呪文)を自然言語処理モデルGPT-3(Catchy)で自動生成する方法」で詳細を解説しています。
Stable Diffusionの理想的な環境を構築する
Stable Diffusionを使用する際にGoogle ColaboratoryやWebサービスを利用されている方も多いかと思います。しかし、最近Google Colabの無料での使用範囲が大きく制限されたり、Webサービスでは月額費用がかかったりします。
欲しいイラストを生成するにはかなりの回数をトライする必要があるため、これらの制約に縛られることなく使用できるローカル環境を構築するのがおすすめです。
ローカルのPCに搭載するグラフィックボード
ローカルマシンで実行する上で重要になってくるのがグラフィックボードです。
グラフィックボードの性能によって画像の生成速度や最大生成サイズが決まります。Stable Diffusionで使用するのにおすすめのグラフィックボードを以下の記事で解説していますので、あわせてご覧ください。

Stable Diffusionで生成される画像のクオリティを上げる
動画学習プラットフォームUdemyでは、画像生成AIで高品質なイラストを生成する方法や、AIの内部で使われているアルゴリズムについて学べる講座が用意されています。
Udemyは講座単体で購入できるため安価で(セール時1500円くらいから購入できます)、PCが無くてもスマホでいつでもどこでも手軽に学習できます。
画像生成AIの使い方を学ぶ
Stable DiffusionやMidjourneyなどを使ったAIアート全般について勉強したい方には、以下の講座がおすすめです。

Stable Diffusionに特化して学ぶ
Stable Diffusionに特化し、クラウドコンピューティングサービスPaperspaceでの環境構築方法から、モデルのマージ方法、ControlNetを使った構図のコントロールなど、中級者以上のレベルを目指したい方に最適な講座です。

画像生成AIの仕組みを学ぶ
画像生成AIの仕組みについて学びたい方には、以下の講座がおすすめです。
画像生成AIで使用される変分オートエンコーダやGANのアーキテクチャを理解することで、よりクオリティの高いイラストを生成することができます。

まとめ
今回はLatent Coupleを使って画像を生成する方法について解説しました。
2人以上の人物を描画する場合には必須の拡張機能となりますので、ぜひ活用してみてください。
また、以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。
スキルアップや副業にぜひ活用してみてください。

スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。
講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。

それでは、また次の記事でお会いしましょう。


