見出し画像

ComfyUIで背景画像を削除する方法を色々と試してみた

イラストから人物やモノだけを切り抜いて、作品作りに活用したいなと思ったことはありませんか?

LINEスタンプや絵本の制作に取り掛かっている中で、背景の削除がどうしても必要になってきたので、背景をうまく切り抜けないかを色々試してみた結果、色んな事がわかったので共有したいと思いました!

ComfyUIとはなにかわからない方や画像生成に興味のある方は以下の記事を読んでみてください!


拡張機能のインストール

今回背景の削除に使うためのノードを以下の拡張機能を使って試してみました。

ComfyUIの拡張機能を簡単に導入することができる「Manager」がない方は以下の記事を参考に先に導入してみてください。

pfaeff-comfyui

abg-comfyui

背景を削除するノードをそれぞれ試してみる

①Image Remove Background (Alpha)

生成するイラストの設定は以下のようになります。

mode→foregroundは前景、backgroundは背景を削除する
threshold→色彩の閾値で、特定の閾値より高い色あいの場合は削除の対象になる。
threshold_tolerance→上記の閾値を調整する値のようです。

実際に上記のノードを使って試してみました。

設定は以下のようにして実施しました。

①実写

顔が…

②アニメ系イラスト

悪魔っこみたいに見える(これはこれであり?)

③ドット絵

④モノ

背景を削除対象にしていたので、色彩の暗い黒い箇所が消えていますね。
今度は前景に設定を変更して実施します。
前景の削除になるので、色彩の閾値は高めに設定します。

①実写

スカートの白くて明るい部分がくりぬかれていますね。

②アニメイラスト

左側の光源がある部分やシャツの白い部分などが削除されていますね。

③ドット絵

こちらも明るい部分が削除されていますね。

④モノ

白い部分が削除されていますね。

Image Remove Background (alpha)のまとめ

色彩などを調節して削除したい場合に利用する形になりそうです。
ただ、純粋に背景だけを削除したい場合にはほかの方法を使った方が簡単そうですね!

②Remove Image Background(abg)

特に設定を必要としない背景の削除ノードになります。

①実写

左下の水と左腕と腹部の間に白いもやもやが残っていますね。

②アニメイラスト

髪の毛のところに削除残りがありますね。

③ドット絵

左下と女の子の右側に削除残りがありますね。

④モノ

学生の頃の私のごとく、存在が薄らいでいるかのような削除感ですね。

Remove Image Background(abg)まとめ

削除しきれていない部分が若干ありますが、結構背景を削除してくれますね!

モノだけを残すというは結構難しいのかもしれませんね。

③BackgroundRemover

こちらも特に設定が必要ではないノードです。

①実写

特に変化はなさそうです。

②アニメイラスト

黒い瘴気みたいに背景を削除してくれていますね。

③ドット絵

特に変化はなさそうです。

④モノ

地面が少し削除されていますね。

⑤ドット絵2枚目

公式のところにドット絵が掲載されていたので、もう一度別のイラストで試してみます。

こちらはドット絵のスプライトになりますが、しっかりと背景が削除されていますね。

BackgroundRemoverまとめ

シンプルにドット絵の背景を削除する際に使う機能のようです。

gb studioでゲームをもう一度作ってみたいなと思っていたので、そちらで活用したいなと思います。

④Image Rembg (Remove BackGround)

生成するイラストの設定は以下のようになります。

transparency→背景を透明にするかどうか。falseの時は黒塗りになる。
modelは以下から選択します。適用するイラストに合わせて選択してください。
 u2net→標準的なイラストの事前トレーニング済みモデル
 u2netp→1の軽量バージョン。若干精度が落ちる
 u2net_human_seg→人間を判定する事前トレーニング済みモデル。(実写系じゃないと判定されないっぽい)
 u2net_cloth_seg→衣服を判定するトレーニング済みモデル
 silueta→1と同じでサイズが減量される。
 isnet-general-use→1とは別の新しいトレーニング済みモデル
 isnet-anime→アニメキャラクターを判定するモデル
post_processing→指定すると輪郭が若干くっきりするような気がする…
only_mask→マスクデータを取り出す、背景が黒で、イラストが白で生成される。
alpha_matting→Image Remove Backgroundの設定と同じことを指定できる。
background_color→背景の色を指定できる。noneだと無色

早速生成してみます。

①実写

u2net

u2netp
デスタムーア最終形態みたいなってしまった…

u2net_human_seg

silueta
スカートが若干削除されていますね。

isnet-general-use

isnet-anime
スカートが少し削除されていますが、普通に背景は消えていますね。

②アニメイラスト

u2net
服の白い部分が削除されています。

u2netp
リボンが消えてしまいました。

u2net_human__seg
実写でないと機能しなさそうです。

silueta

isnet-general-use
髪の毛が若干ですが、背景はしっかり削除されていますね。

isnet-anime
若干削除残りがありますが、綺麗に削除されていますね。

③ドット絵

u2net

u2netp
上のイラストよりも、背景が残っていますね。

u2net_human_seg
アニメイラストと同じで、ほとんど背景として判定されています

silueta

isnet-general-use
服が削除されています

isnet-anime

④モノ

u2net
台の手前が消えいていますが、ほとんど完璧ですね

u2netp

u2net_human_seg
人工物なので…

silueta

isnet-general-use
ほとんど完璧に消えいていますね!

isnet-anime

Image Rembg (Remove BackGround)まとめ

背景を削除したいイラストに幅広く対応していて、非常に使いやすいです。
精度も高いので、メインで使って言ってよいのではないかと思いました。

試してみた感想

背景が綺麗さっぱり消えて、キャラクターオンリーになると創作に生かせる場面が増えるのでうれしいですね。

背景の削除は他にも種類があって、もっと色んなことを試してみたいです。

それでは皆様、良き創作ライフを…!

この記事が気に入ったらサポートをしてみませんか?