今回も画像生成AIに関する話題で、タイトルの通り
を丁寧にご紹介するという内容になっています。
画像生成AIを使ってイラストを生成する際、ポーズや構図を決めるときは
という方法が主流です。この方法ではかなりザックリしたポーズ・構図を指定することはできるものの、単語で指定することもあって思い通りのポーズを完全再現したイラストを生成するのは困難でした。
ところが、つい先日その問題を解決する「ControlNet」と呼ばれる新技術が公開されて大変話題になりました。しかも速攻でStable Diffusion web UI用の無料の拡張機能も開発されて、誰でも簡単に使えるようになったとのことだったのでさっそく試してみることにしました。
ここではこのControlNetの使い方について解説していきますね。
ControlNetを使ったポーズ指定の例
まずはじめに、私が実際にControlNetを使ってポーズを指定した美少女イラストをご覧頂こうと思います。
ControlNetでは下のような元画像を用意して呪文を唱えると…

画像提供:ぱくたそ 様
https://www.pakutaso.com/
下のようにほぼ同じポーズのイラストが生成されます。
ControlNetのすごいところはポーズや構図がかなり厳密に再現される点です。つまり欲しいポーズのイラストが決め打ちで出てくるので、今までのように何度もガチャを引く必要はありません。
ポーズ指定以外の活用例
ちなみに上記では一番分かりやすいポーズ指定を例に挙げていますが、ControlNetを使えば他にも
といったこともできるのでとても汎用性が高い技術となっています。
Stable Diffusion web UIへのインストール方法
次にControlNetはStable Diffusion web UIに拡張機能をインストールすれば簡単に使うことができるので、その方法をご説明します。
拡張機能のインストール
まずは拡張機能をインストールします。やり方は簡単で「拡張機能」タブ→「URLからインポート」と進み、下のURLを入力して「インストール」ボタンを押すだけです。
あとはweb UIを再読み込みすれば、txt2img・img2img画面の左下にControlNetの設定欄が出現します。
必要なControlNetモデルのダウンロード
次にControlNetを使うには専用のモデルファイルが必要なので、下記ページから使うものを選んでダウンロードします。

執筆時点ではモデルが全部で8種類あり、それぞれ使用するアルゴリズムが異なります。超ざっくり説明すると下記のとおりなので好きなものを選んでください。
- canny:単純な輪郭検出アルゴリズムを使うモデル
- depth:画像の深度情報を元に画像生成を行うモデル
- hed:色変更やスタイル設定に適したモデル
- mlsd:直線的な輪郭の検出アルゴリズムを使うモデル
- normal:法線マップ(ノーマルマップ)を使用するモデル
- openpose:ポーズ検出を使って画像生成を行うモデル
- scribble:落書きを元に画像生成を行うモデル
- seg:セマンティックセグメンテーションを使って画像生成を行うモデル
詳しい説明は下記ページ(外部リンク、英語)にあります。
モデルを8つもダウンロードするのがダルい、とか英語の説明を読むのが面倒くさい…という方には、シンプルで分かりやすいcannyモデルが一番おすすめです。ダウンロードできたらモデルファイルを下記フォルダに移動させてください。
これでインストール作業は完了です。
ControlNetの使い方
さて前置きが長くなってしまいましたがControlNetの使い方について説明していきます。ただし先ほど選択したモデルによって多少使い方が違うようなので、ここでは先ほどおすすめしたcannyモデルの場合についてご説明します。
主な手順は次のとおりです。
- 必要な設定を行う
- 入力画像を指定する
- いつも通り呪文を入力して生成ボタンを押す
手順1:必要な設定を行う
まずは必要な設定を行います。ControlNetの設定欄を展開し、次の画像のように設定を行ってください。
- Enableにチェックを入れる
- Preprocessorを選択する(ここでは例としてcannyを選択)
- Preprocessorに対応したモデルを選択する
手順2:入力画像を指定する
お次はポーズの元となる画像を指定します。指定方法は「ここに画像をドロップ」と書かれた部分に任意の画像をドラッグ&ドロップするだけです。ここでは次の画像をお借りして入力画像としました。

画像提供:ぱくたそ 様
https://www.pakutaso.com/
手順3:呪文を入力して生成ボタンを押す
あとは通常通り呪文を入力して生成ボタンを押せばOKです。下のようなプロンプトを入力すると…
次のようなイラストが生成されました。
キャラクターが元画像と同じポーズをとっているのが分かります。
おわりに
以上、ControlNetの使い方を一通りご説明しました。これがあればポーズ指定で何度も試行錯誤をしなくても済み、とても便利なのでぜひ皆さんも試してみてください。
この記事が何かしらお役に立てば幸いです。