LayerDiffusionで透過画像を生成する方法を解説します

街中を歩くショートヘアーの日本人女性のAI写真

LayerDiffusionは、透明な背景を持つ画像を作成するための新たな方法です。

この記事では、WebUI Forgeを使用して透過PNG画像を簡単に生成する手順を解説します。

透過画像を作成したい方に向けた具体的なステップをご紹介します。

この記事で理解できること
  • LayerDiffusionの導入方法
  • WebUI Forgeで透過画像を生成する方法
  • LayerDiffusionのトラブルシューティング
目次

LayerDiffusionとは?

黒地に赤字のクエスチョンマークの画像

Stable Diffusionで画像生成すると、被写体+背景の画像が生成されます。
被写体だけの画像を生成したり、背景に被写体を被せるということは出来ませんでした。

で・す・が、LayerDiffusionを使えば、背景が透過している画像、被写体だけの画像が生成可能になります。

LayerDiffusionを使えば、お気に入りの人物画像を別の背景画像に乗せるといった使い方や、別の画像ツールを使うことなく透過PNG画像が生成できます!

LayerDiffusionの導入方法

今回はWebUI Forge用の拡張機能「sd-forge-layerdiffuse」を使用します。

まだStable Diffusion WebUI Forgeをインストールしていない場合は、以下の記事を参考にインストールしてみましょう。

あわせて読みたい
Stable Diffusion WebUI Forgeのインストール方法を紹介! はじめに 今回紹介するStable Diffusion WebUI Forgeは、Stable Diffusion webUI(AUTOMATIC1111)と比べると、大幅な高速化を実現したクライアントツールです。 本記事で...

sd-forge-layerdiffuseは以下手順でインストール可能です。

STEP
「Extensions」タブに移動する

stable diffusion webUIを起動したら、上部に表示されるタブ一覧から「Extensions」をクリックします。

Extensionsをフォーカスしている
Extensionsタブに移動
STEP
「URLからインストール(Install from URL)」タブに移動する

Extensionsタブ内の「URLからインストール(Install from URL)」をクリックします。

urlからインストールクリックを促している
STEP
URLを入力する

「拡張機能のリポジトリのURL(URL for extension’s git repository)」に下記URLをコピペしてください。

https://github.com/layerdiffusion/sd-forge-layerdiffuse.git
STEP
インストール(Install)ボタンをクリックする

下段に表示されている「インストール(Install)」ボタンをクリックします。

インストールボタンのクリックを促している
STEP
「適用してUIを再起動(Apply and restart UI)」をクリックする

拡張機能をインストールした場合は、WebUIをリロードする必要があります。

インストール済タブに表示される「適用してUIを再起動(Apply and restart UI)」ボタンをクリックしましょう。

適用してUIを再起動ボタンのクリックを促している

LayerDiffusionの使い方

それではLayerDiffusionの基本的な使い方を紹介します。

透過画像を生成する

STEP
LayerDiffuseを有効化する

txt2imgの左下に「LayerDiffuse」の項目が表示されています。

設定項目を展開して「Enabled」をチェックします。

LayerDiffuseの設定画面
チェックボックスとスライダーで構成されている

Methodはデフォルトの「Only Generate Transparent Image」のままにします

STEP
画像生成する

後は普段通り画像生成するだけです。

問題無ければ、生成結果に2つの画像が表示されます。

WebUI Forgeの画像生成結果
リンゴの背景が透過された’画像が生成されている
juggernautでのテスト結果
WebUI Forgeの画像生成結果
アニメ女性の背景が透過された’画像が生成されている
Animagineでのテスト結果

現状のLayerDiffuseは制限がかなり多いです。
うまく透過画像が生成できない場合は公式の推奨設定で一度テストしてみましょう。

生成テストでは以下設定を行います。

  • サンプラー:DPM++ 2M SDE Karras
  • 解像度:1024×1024
  • モデル:Juggernaut XL v6

オブジェクト画像に背景を生成しブレンドする

Methodに「From Foreground to Blending」を設定して、オブジェクト(被写体)画像をロードします。

プロンプトには背景に関するプロンプトを追加します。

この状態で画像生成すると、オブジェクト画像にプロンプトで指定した背景がブレンドされます。

WebUI Forgeの画像生成結果
ロードしたアニメ女性に背景がブレンドされている

背景画像にオブジェクトを生成しブレンドする

Methodに「From Background to Blending」を設定して、背景画像をロードします。

プロンプトには背景に乗せたい人物やオブジェクトを追加します。

この状態で画像生成すると、背景画像にプロンプトで指定したオブジェクトがブレンドされます。

WebUI Forgeの画像生成結果
ロードした背景に女性がブレンドされている

背景+被写体の画像から被写体を抜き出す

背景と被写体が描画されている画像から、被写体だけを抜き出すことが可能です。

この場合はMethodに「From Background and Blending to Foreground」を設定して、背景のみ画像と被写体が描画された画像をロードします。

サンプラーは Euler A もしくは UniPCが推奨されています。
ただ、他のサンプラーでもうまく動作する可能性はあります。

WebUI Forgeの画像生成結果
ロードした画像の猫が抜き出されている

背景+被写体の画像から背景を抜き出す

背景と被写体が描画されている画像から、背景だけを抜き出すことも可能です。
先程のパターンとは逆になりますね。

この場合はMethodに「From Foreground and Blending to Background」を設定して、背景のみ画像と被写体が描画された画像をロードします。

エラーで画像生成出来ない場合(トラブルシューティング)

まだ発展途上の「sd-forge-layerdiffuse」はトラブルが頻発します。

僕も最初はトラブルが発生して使えませんでした・・・

そこで、ここからはLayerDiffusionでのトラブルの復帰方法を紹介します。

モデルが自動でダウンロードされない場合

LayerDiffuseを有効にして画像生成を開始すると、通常は自動で必要なモデルがダウンロードされます。

何かの理由でダウンロードされない場合は、手動でモデルをインストールすることで画像生成が可能になります。

手動でモデルをインストールする場合は、Hugging faceからダウンロードします。

ダウンロードしたモデルデータは「WebUI Forgeフォルダ」→「models」→「layer_model」フォルダの中に保存します。

公開されているsafetensorsファイルを全てインストールしておきましょう

画像生成時にエラーが発生して透過画像が生成されない場合

インストールが無事終わり、LayerDiffuseを有効にして画像生成してみると、透過画像が生成できない場合があります。

この場合は、WebUI Forge本体をアップデートすることで、正常に画像生成出来る可能性があります。

WebUI ForgeはAUTOMATIC1111と同じ手順でアップデートすることが可能です。
アップデート方法については以下の記事で解説しています。

あわせて読みたい
Stable Diffusionのアップデート方法を紹介します はじめに Stable Diffusion WebUIに入れた新しい拡張機能が、動かなくて困ったことはありませんか?もしかしたらStable Diffusion WebUIのバージョンが古いことが原因の...

アップデートしても透過画像が生成できない場合には、再度、WebUI Forgeをクリーンインストールしてみましょう。

あわせて読みたい
Stable Diffusion WebUI Forgeのインストール方法を紹介! はじめに 今回紹介するStable Diffusion WebUI Forgeは、Stable Diffusion webUI(AUTOMATIC1111)と比べると、大幅な高速化を実現したクライアントツールです。 本記事で...

僕はアップデートしても使えなかったので、WebUI Forgeを別環境で再インストールしたら解決しました!

まとめ

今回はStable Diffusion WebUI ForgeでLayerDiffusionを使う方法を紹介しました。

いままではPhotoshopなどで背景を削除する必要がありましたが、LayerDiffusionを使えば簡単に透過PNG画像が生成できます。

最後まで記事を読んでいただきありがとうございました!

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

IT技術者でありDTMer
EDMの作曲を始めたところ楽しさに気づき、ロック以上にハマっています。
楽器はギターを弾いており、バンドではギタリストとしても活動しています。

コメント

コメント一覧 (2件)

  • LayerDiffuse を入れても背景透明化ができず困っていた所
    こちらの記事にたどり着きました。

    トラブルシューティングの
    ・手動でモデルをインストール
    ・Stable Diffusionのアップデート方法については以下の記事で解説しています

    をどちらも実行した事で、無事背景透明化ができるようになりました。
    本当にありがとうございました。

コメントする

目次