感じる方も少なくないでしょう。Diffusionでは、ControlNetという拡張機能を使用することによって、イラストの色のみを変化させたり、ポーズを指定したりすることができます。これによって思い通りの画像を生成できる可能性が高まります。DiffusionのControlNet「Canny」の活用方法を徹底的に解説いたします。Diffusionでは、プロンプトを使用して様々なイラスト生成することができます。プロンプトやネガティブプロンプトのみを入力するだけでは、思い描いたポーズと異なるキャラクターが生成されることがあります。そこで必要となるのが、ControlNetの拡張機能です。これを利用すると、参照画像と同じポーズを持つキャラクターの生成が可能となります。ControlNetは事前訓練されたモデルに新しい制約を与えて画像生成をより自由に制御する技術で、特にimg2imgで難易度が高かったポーズや構図の指定が容易になります。今回ご紹介する「Canny」は、数あるControlNetのモデルの一つになります。DiffusionのControlNetとCannyのモデルをインストールする必要があります。repository」にURLを貼り付けることで導入することができます。ControlNet:https://github.com/lllyasviel/ControlNetCannyのモデルデータは、こちらのURLからインストールして、ControlNetのフォルダに入れましょう。Cannyモデル:https://huggingface.co/lllyasviel/sd-controlnet-cannyControlNetの詳しい導入方法は、こちらの記事で詳しく解説しています。Diffusionで画像生成を行う際に、思った通りの画像が出力されないことはないでしょうか。DiffusionでCannyを使って画像を生成するCannyの使い方Cannyでは、参照画像の輪郭を抽出して、それを基に新しいイラストを生成することができます。はじめに、Cannyの使い方をご紹介します。UIの画面でControlNetタブを開きます。2”ここに画像をドロップまたはクリックしてアップロード”から、参照画像をアップロードします。3モデルとプロセッサーを選択します。今回の記事では、「control_v11p_sd15_canny_fp16」のモデルを使用します。その他輪郭を検出する際の閾値などを設定できますが、デフォルトモデルでも問題ありません。4プロンプトとネガティブプロンプトを入力して画像を生成します。Cannyの活用方法1:画像の色を自由に変えるCannyを使用することで、人物の髪や目などの色を自由に変えることができます。これによって同じ顔の人物で様々なバリエーションの画像を生成することができます。今回はこちらのアニメ風イラスト画像を参照して色を自由に変えていきます。参照画像:Cannyで画像を生成すると、検出した輪郭の画像が同時に生成されます。v1.6.0{その他の単語}に様々な単語を入れて画像出力した結果がこちらです。指定した箇所の色が正しく反映されています。hairの画像を見ると、髪の毛以外の部分も色が変わってしまうのが難点です。このように、Cannyを使うことで同じ画像で自由に色を変えることができます。Cannyの活用方法2:写真からイラストを生成するCannyの輪郭検出を活用することで、人物の写真からイラストを生成することができます。今回はこちらのフリー写真をイラストに変換します。v1.6.0生成した画像:写真から輪郭を検出してイラストを生成することができました。ポーズや服装はかなり忠実に再現されています。プロンプトで色について詳しく指定することで、さらに元画像の色に従わせることできると思います。今回の設定では、背景の輪郭ははっきりと取れなかったためランダムに生成されています。他のモデルとの比較1画像の色を自由に変える画像の色を変えることができるControlNetの他のモデルとして、次の2つが挙げられます。lineart:線画を作成し、それを元に画像を生成する。reference_only:モデルの指定なし。アップロードした画像を参照する。生成画像の比較:lineartは線画を抽出しているため、元の画像がきちんと再現できています。髪以外の部分の色が変わっていません。reference_onlyでは構図やタッチが少し変わってしまいます。>>reference_onlyといったところでしょうか。写真からイラストを生成する写真からイラストを生成できるControlNetの他のモデルとして、次の2つが挙げられます。depth:深度情報を元に画像を生成する。openpose:人物のポーズを検出し、それを元に棒人間を生成してポーズを制御する。生成画像の比較:depthを使用した場合openposeを使用した場合depthではcannyと同様に、服装やポーズが正しく再現されています。シード値がランダムなため、今回のシード値では元画像と違ってエレガントなタッチの画像が多くなってしまいました。openposeでは、ポーズは良く再現されていますが、細かい部分は参照できないため、写真とは大きく異なる画像となってしまいました。写真からイラストを生成する用途であれば、cannyやdepthが有効になります。openposeはポーズの指定で大きく活躍します。openpose活用方法はこちらの記事で詳しく解説しています。プロンプトを元に様々な画像を生成することができますが、ポーズのプロンプトを組み込んでも必ずその通り生成されるわけではなく、複雑なポーズであれば尚更確率の低い作業になってきます。DiffusionのControlNetのCannyモデルの活用方法を詳しく紹介しました。Cannyでは、画像の色を自由に変えることができるほか、写真から輪郭を抽出してイラストを生成することができます。Diffusionの活用範囲を広げてみてはいかがでしょうか。Diffusionに関する記事も豊富に扱っていますので、興味のある方は是非チェックしてみてください。Diffusionの画像生成スピードや画像サイズは、グラフィックボード(GPU)の性能によって大きく変わります。このため、より効率的かつ快適な画像生成を望むユーザーにとって、最適なグラフィックボードの選択が重要となります。推論処理やLoRAなどの追加学習処理といった大量の計算を効率よく行うためには、12GB以上のVRAMを持つグラフィックボードを選ぶことを強くおすすめします。2GBや4GBのVRAMを持つグラフィックボードでは、学習プロセスや高解像度の画像生成に支障が出る可能性が高いです。3060を選ぶと良いでしょう。Diffusionの画像生成機能を最大限に活用することが可能となります。株式会社Bocekにて生成AI専門メディア「PROMPTY」の記事執筆を担当。