簡単に背景を除去して透過できる!Rembgの使い方(WebUI AUTOMATIC1111 拡張機能)

ゲームやTRPGの立ち絵など、背景を透過した状態でキャラクターイラストを使いたいシーンはかなり多いかと思います。また、img2imgの「Inpaintアップロード」でもお役立ち。
外部での背景透過の手段はいくつかありますが、UI拡張機能として登場!
AUTOMATIC1111/stable-diffusion-webui-rembg

「rembg」インストール方法

拡張機能リスト>読込>「rembg」を見つけて、右端にある「install」ボタンを押す。
※下記画面はインストール後のもの

「rembg」の使い方

使う場所は「その他(Extras)」タブです。使い方はとてもシンプル。

まずは背景除去したいイラストを用意

くらつひわ
モデルは自分で線画を描いてAI着彩したカメラおじさん!
背景はAIが素晴らしく仕上げてくれました
うちのブログで可愛い美少女が登場する率は低いのですまない
使用モデル:anything-v4.5-pruned-fp16

「u2net」でさくっと切り抜き

ここに画像をドロップ」へ対象の画像をドロップしたのが下記の図。
Rembg使用画面
画面左下にある「Remove background」から「u2net」選択してみました。
全て試してみましたが、基本的にはこの「u2net」で良さそう。
また、背景透過時は倍率設定はスルーされるようなので気にしなくてOKでした。
オレンジの「生成」ボタン押下、RTX3060では3秒ほどで透過完了!
生成された透過画像は「webui\outputs\extras-images」に入ってます。
結果画面をクリックすると透過されていることがわかる
(わかりやすいように水色の背景色を設定)
くらつひわ
ややフチが残ってるけど、もっとシンプルな背景なら楽そう!
立ち絵用のキャライラストが欲しいなら、最初から
プロンプト「simple background」などを使うと良さそう

Return mask(マスク画像)

なんとマスク画像も生成してくれます。img2imgの「Inpaintアップロード」でも役立ちそうだし、絵を描く側にとってもマスク画像があると重宝するのでラッキーです。

Return mask」に✅を入れて生成すればOK。透過画像が同時生成されるわけではないので、透過画像も欲しい場合は前述の手段で別途、生成しておきましょう。
マスク画像も先ほどと同様に「webui\outputs\extras-images」へ保存されてます。

Alpha matting

✅を入れてみると、オプションが展開されます。
こちらは数値を自分で設定して、より詳細なカスタマイズが出来るようです。
くらつひわ
とりあえず「Alpha matting」自体がわかんない…
教えて、ChatGPT先生!

Alpha matting
画像中の各ピクセルが対象物の一部である確率(アルファ値)を計算する手法です。アルファ値が高いほど、対象物に近いことを意味します。

くらつひわ
ついでにオプションの意味も教えてください

Erode size
対象物の輪郭を滑らかにするために、膨張・収縮処理を行うことがあります。この設定は、膨張・収縮処理における核のサイズを指定するものです。核のサイズが大きいほど、膨張・収縮の度合いが大きくなります。

Foreground threshold
アルファ値がこの値以上のピクセルは、対象物として扱います。

Background threshold
アルファ値がこの値以下のピクセルは、背景として扱います。

(わかりやすいように水色の背景色を設定)
とりあえずデフォルト数値で実行。先ほどよりフチが軽減されてる?と思ったけど
実は、頬のあたりやコート(←側)のリムライト(反射光)も透過されてしまってる。
くらつひわ
その画像に合った数値を模索できれば強そう!
SAI2やクリスタでいくらでも微調整できる。何より、
UI内で完結できるのが強い。

エラーが出て処理されない場合

いざ使ってみたら「RuntimeError~[ONNXRuntimeError]~」というエラーが出た…そんな場合、こちらの記事の後半がとても詳しいので参考にして乗り越えてください。私もお世話になりました!(webUIアプデ後にエラーが出るようになって困っていた)

同系統ツールとの比較テスト

Rembg」は「remove.bg」の技術を使っている?ようなので今回は割愛。
(違ってたらすまない
)なので、他の2ツールと比較してみました!

「Rembg」が使っていたAPIは「Remove Background API」でした!
大変失礼いたしました…なので「remove.bg」のサンプル用意しました
※2023/04/10 更新

remove.bg

筆者の勘違いにつき、遅まきながら比較テストに参戦。一定サイズの解像度以上は有料会員でなければダウンロード出来ないため、無料でダウンロード出来るサイズにしました。
(わかりやすいように水色の背景色を設定)
くらつひわ
右袖のあたりやコートのリムライトも透過されてしまった!
APIやパソコン/スマホ用アプリ(APIキーの取得が必要)も提供されていて、そちらでは数値調整も出来るようです

Remove background(Clipdrop)

色々と便利な機能を提供してくれている有名なオンラインサービス。
既に普段からお世話になっている人も多そう。APIも提供中。マスク生成は無し。
(わかりやすいように水色の背景色を設定)
くらつひわ
ノー設定で切り抜きの精度が高い!
右袖と左手の合間にある隙間もちゃんと抜いてくれた。
惜しむらくは、やや画質が落ちてしまう…無料版だからかな?
有料版もあるようなのでそちらは恐らく画質維持されるのかも。
(未確認です)

Anime Remove Background

透過画像とマスク画像を同時生成してくれます。個人的に愛用中!
(わかりやすいように水色の背景色を設定)
くらつひわ
こちらも右袖と左手の合間にある隙間を抜いてくれた!
ノー設定で最も精度高めだと個人的に思う…けど、
画像の内容次第というか相性次第かな!

まとめ

UI内で作業が完結できる「Rembg」は嬉しい選択肢のひとつだと思います!
Alpha mattingとの親密度を深めていきたい。

それにしても、毎日のように次から次へと素晴らしい拡張機能が追加されたりアップデートされたり、嬉しい悲鳴をあげつつも追いつかない。
進化の速度がオオタニサンの速球ぐらい速い…イタリア戦、勝利おめでとう!