背景を削除する Rembg - Stable Diffusion WebUI の拡張機能
画像を読み込み背景を削除して透過してくれる拡張機能です。処理時間は数秒で結構きれいに切り抜いてくれます。
準備
※既存の Stable Diffusion の環境があれば、準備は飛ばして「Rembg 拡張機能のインストール」の手順から実施できます。
Docker コンテナを起動します。
apt で必要なパッケージをインストールします。
git で WebUI をダウンロードします。また、コンテナの中だと root ユーザーになってしまい、WebUI の起動がブロックされるので、それを回避します。
Rembg 拡張機能のインストール
WebUI を起動します。外部の拡張の読み込みを有効にするためのオプションも追加する必要があります。
pip などで環境構築が走るので、場合によっては 10 分程度待つと、以下のように URL が表示されるので、ブラウザでアクセスします。
「Extension」>「Install from URL」を選択し、「URL for extension’s git repository」欄にhttps://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg.git
と入力して「Install」をクリックします。
少し待って Install ボタンの下にInstalled into /stable-diffusion-webui/extensions/rembg. ~
と表示されることを確認し、「Extensions」>「Installed」にあるApply and restart UI
をクリックして WebUI を再起動します。
背景の削除
WebUI の再起動が終わったら、「Extras」タブを開きます。
Source
に画像ファイルをドラッグ&ドロップします。
下へスクロールするとRemove background
があるので、チェックをつけて黒三角矢印をクリックしてメニューを開きます。Remove backgroud
がnone
になっていると思うので、そこを変更します。
そして右上のGenerate
をクリックすると、数秒で背景が削除された画像生成されます。
画像によってはうまく背景を切り取れない場合がありますが、その場合はRemove background
の選択を変更してみると、うまく切り取れる場合もありそうです。
画像を保存すると、透過された PNG ファイルになっているので、他の画像に重ねたりも簡単です。