前回、画像生成AI「Stable Diffusion WEB UI」の基本機能を色々試してみました。
今回は画像から画像を生成する「img2img」や「ControlNet」、その他便利機能を使ってみます。
img2img
「img2img」はその名の通り画像から画像を生成する機能
↑図の左側は私がペイントで適当に描いた絵。右側はこの絵をベースにAIが生成した画像。
山と雲の絵だと認識して、構図はそのままで様々な画像を作ってくれます。オリジナルの画像にどれだけ忠実に生成するか調整可能で作風なども変更できます。
▼オリジナル画像に忠実に
▼オリジナルの画像をあまり考慮せず自由に生成
inpaint
inpaintは画像の一部を変更・修復・消去する機能。
▼修正したい箇所を塗りつぶし、「1羽の鳥」と入力し生成。
先程生成した画像に、違和感なく鳥が追加されました。
img2txt
画像からテキストの生成も可能です。
▼画像をアップロードし、CLIPで解析
「a woman in a green and white dress posing for a picture with her hand on her head and a hand on her head(緑と白のドレスを着て頭に手をあててポーズをとる女性)」と出てきます。
別のモデル「DeepBooru」で解析するとプロンプト形式で画像情報が生成されました。
- 1girl, bag, brown_eyes, brown_hair, hair_ornament, hand_on_own_head, handbag, indoors, lips, looking_at_viewer, mole, open_clothes, realistic, short_hair, shoulder_bag, skirt, solo, standing
この出力されたプロンプトを一部変更して(服の色を変える等)画像を再生成する事も可能です。
ControlNet
ControlNetは生成画像のポーズ指定など幅広い用途に使える技術です。
cannyでは元画像から線画を抽出し新しい画像を生成します。
▼元画像
▼canny生成画像
↑はランダムで色の着色を行っていますが、服の色を指定してAIに着色してもらうことも出来ます。
Prompt S/R
Prompt S/Rはプロンプトの特定のワードを置換して、一度に複数の画像を生成する機能です。
生成する表情を変更したり、追加学習データ(LoRA)の重みを変更した組合せ画像を一度に生成します。
SadTalker
SadTalkerは1枚の画像と音声を合成して口パク動画を生成する機能。デフォルトのままでは使えないので、Stable Diffusion WebUIの拡張機能として追加します。
▼前回生成した画像と音声をアップロード
▼生成された動画
3秒の動画生成に5分ほどかかりました。「D-ID」と異なり無料で商用利用可能です。
まとめ
「Stable Diffusion WEB UI」で使える便利機能を色々試してみました。テキストから画像を生成するだけではなく、画像をINPUTし様々な事が出来ます。
- 元画像に類似した画像を生成
- 元画像と全く同じ構図で色違いを生成
- 元画像の一部を修正・消去・追加
- 画像からテキスト生成
等など。
テキスト生成とこれら機能を組み合わせると必要な画像を簡単に生成できそうです。
ちなみに、2019年にディープラーニングで生成した人の顔画像は下図。
当時は解像度64×64の画像を生成(学習+生成)するのに「Google Colab」のGPU環境で10分かかっていました。わずか4年で生成AIは恐ろしいほど進化しています。