見出し画像

Stable Diffusion - ControlNet入門(3)各プリプロセッサを理解する

割引あり

この記事では、ControlNet のプリプロセッサの機能を解説します。



主なプリプロセッサ

Canny

アップロードした画像の輪郭(canny)を抽出し、それをもとに画像を生成します。

フリー写真サイト「Pexels」からダウンロードした写真 - Canny で抽出した線 - bluepencilで出力したイラスト


bluepencilで出力したイラスト - Canny で抽出した線 - bluepencilで出力したイラスト

Depth

画像の深度を抽出します。手前にあるものと奥にあるものの区別がしっかりつきます。

写真 - Depthで抽出した深度 - bluepencilで出力したイラスト

OpenPose

画像の人物がとるポーズを3D座標として抽出します。身体だけでなく、顔の向きや表情も抽出します。

写真 - OpenPoseで抽出した座標 - bluepencilで出力したイラスト

また、抽出された3D座標を編集することも可能です。

左腕の位置を低くすると、それに従って画像が生成されます。

Openpose-face で生成した3D座標 - bluepencilで出力したイラスト

Openpose には、openpose-full、openpose-hand、openpose-face、無印(openpose)などいくつか種類があります。hand は5本の指の座標の抽出、face は表情の抽出、full は全てを行います。

写真
openpose - openpose-face - openpose-hand - openpose-full

もっとも性能の高い full は処理が重くなります。表情が必要ない場合は hand や無印、手が映らないなら face や無印を使用するなど、用途に合わせて使い分けましょう。

Scribble / Sketch 

画像から輪郭線を抽出しますが、Cannyよりも大まかに抽出します。「Scribble」は落書きや走り書きという意味です。自分で描いたスケッチを使うこともできます。

写真 - Scribbleで抽出したスケッチ - bluepencilで出力したイラスト

Recolor

画像の陰影を抽出し、陰影はそのままに画像の色を変更します。

bluepencil で生成した画像 - Recolorで抽出した陰影 - bluepencilで出力したイラスト

LineArt

画像からより繊細に輪郭線を抽出します。

MLSD

画像から輪郭線を抽出しますが、Cannyなどとは異なり、簡易的な直線のみ抽出します。建造物などの描写に便利です。

SoftEdge

画像からやわらかいタッチで輪郭線を抽出します。

NomalMap

画像の法線マップを推定し抽出します。法線マップとは、奥行きや凹凸など面の向きをRGBに変換したもののことです。細かい奥行きを作ることができるため、3DCGのテクスチャマップなどに使用されます。

Segmentation

画像に含まれているものをそのオブジェクトごとに認識し、分割して、それをもとに画像を生成します。構図やもとからある要素をそのままに画像を生成したい時に使います。

Shuffle

元の画像の雰囲気を保ちつつ少し違う画像に変えます。キャラクターの差分を生成したい時や、少しランダム性が欲しいときに便利です。

Tile

主に画像のアップスケールに使用します。元の画像をタイルのように分割してそれぞれアップスケールすることで、高精度なアップスケールができます。

Inpaint

前の章で行ったインペイントと同じです。画像の任意の場所を塗りつぶして生成すると、その塗りつぶした箇所のみ新たに生成されます。

たくさんの機能で構成される ControlNet ですが、ひとつひとつのプリプロセッサは画像処理のテクニックによって構成されています。
それぞれの名前と機能は難しそうな専門用語に見えますが、歴史ある画像処理のテクニックであり、それぞれ異なる技術なので丁寧に試して、使える技術を覚えておいて損はありません!


謝辞:写真は全てフリー写真サイト「Pexels」からダウンロードしたものを使っています。
https://www.pexels.com/ja-jp/


ControlNet入門(1)

「ControlNetが難しい!」そう思ったあなたにオススメ
img2img 入門シリーズはこちらから。

※本ブログは発売予定の新刊書籍に収録される予定です。期間限定で先行公開中しています。
メンバー向けには先行してメンバーシップ版をお届けします
Stable Diffusionをお手軽に、しかもめっちゃ丁寧に学べてしまう情報をシリーズでお送りします。
メンバーは価値あるソースコードの入手や質問、依頼ができますので、お気軽にご参加いただければ幸いです!

この下にGoogle Colabで動作する「AUTOMATIC1111/Stable Diffusion WebUI」へのリンクを紹介しています。
メンバーシップ向けサポート掲示板はこちら!応援よろしくお願いします!

ここから先は

80字
この記事のみ ¥ 0〜

この記事が気に入ったらサポートをしてみませんか?