画像を切り抜きたい!
PBRemToolsの使い方を教えて!
「PBRemTools」の拡張機能を使用することで
人物のみ切り抜きをしたり
呪文(プロンプト)で切り抜きたい場所を指定することが出来ます。
この記事では、「PBRemTools」の使い方について解説しますので
参考にして画像を切り抜いてみてください!
PBRemToolsの導入方法について
「PBRemTools」を導入していきますが
ローカルの方とGoogle Colabで入れ方について分けて解説するので
それぞれの環境に合った方法を読んでください。
ローカルの場合
ローカル環境の方は「Extensions」→「Available」→「Load from:」ボタンを押してください。
検索内で「pbremtools」とゆっくり入力してください。
「PBRemTools」が表示されるので、右側にある「Install」ボタンをクリックしてください。
「Installed」をクリックしてから「PBRemTools」がインストールされているか確認してください。
「Settings」をクリックしてから「Reload UI」ボタンを押してStable Diffusion Web UIを再起動してください。
3つのモデルをダウンロードする
「PBRemTools」を使用するには、「ViT-H SAM model」「ViT-L SAM model」「ViT-B SAM model」の3つのモデルをダウンロードしてフォルダ内に入れる必要があります。
以下のGitHubのサイトにアクセスしてください。
下にスクロールすると、3つのモデルファイルがあるのでダウンロードしてください。
「stable-diffusion-webui/extensions/PBRemTools/models」の中に3つのモデルを入れてください。
これで導入完了です。
Google Colabの場合
Google Colabを使用している方は、以下のコードをコピペで追加してください。
#PBRemTools
!git clone https://github.com/mattyamonaca/PBRemTools /content/stable-diffusion-webui/extensions/PBRemTools
#PBRemToolsのmodelディレクトリの作成
%mkdir -p /content/stable-diffusion-webui/extensions/PBRemTools/models/
#sam_vit_h_4b8939
!wget https://dl.fbaipublicfiles.com/segment_anything/sam_vit_h_4b8939.pth -O /content/stable-diffusion-webui/extensions/PBRemTools/models/sam_vit_h_4b8939.pth
#sam_vit_l_0b3195
!wget https://dl.fbaipublicfiles.com/segment_anything/sam_vit_l_0b3195.pth -O /content/stable-diffusion-webui/extensions/PBRemTools/models/sam_vit_l_0b3195.pth
#sam_vit_b_01ec64
!wget https://dl.fbaipublicfiles.com/segment_anything/sam_vit_b_01ec64.pth -O /content/stable-diffusion-webui/extensions/PBRemTools/models/sam_vit_b_01ec64.pth
以下の画像のように、一番下にあるStable Diffusion Web UIを起動するコードである「!python launch.py〜」の上に配置するといいでしょう。
PBRemToolsの使い方
ここでは、「PBRemTools」を使って人物のみを切り抜きする方法と
部位のみを呪文(プロンプト)で指定して切り抜きする方法について解説します。
人物のみを切り抜きする方法
「PBRemTools」のタブをクリックしてから、切り抜きたい画像をアップロードしてください。
下にスクロールして「Submit」ボタンを押してください。
右側に人物のみを切り抜いた画像と、マスクした画像の2枚を生成することが出来ます。
左側の画像は背景が透過されています。
部位を切り抜く方法
この例では、帽子以外の部分を全て切り抜く方法について解説します。
「Segment Anything & CLIP」内で「enabled」にチェックを入れてください。
「Model」の項目では導入した以下の3つのモデルが表示されます。
・「sam_vit_h_4b8939.pth」
・「sam_vit_l_0b3195.pth」
・「sam_vit_b_01ec64.pth」
これらはそれぞれ画像生成結果が変わる可能性があるので全て試してみてください。
この例では「sam_vit_l_0b3195.pth」を選択します。
「segmentation prompt」項目内で、「hat」の呪文を入れて帽子のみ切り抜きするように指定します。
「Post Processing」で「cascadePSP」を選択してから「enabled」にチェックを入れてください。
これで設定は完了したので「Submit」ボタンを押して画像生成します。
以下の画像のように、帽子のみを切り抜いた画像とマスクした画像の2枚を生成することが出来ます。
「segmentation prompt」内で「t-shirt」と入力してTシャツのみを切り抜こうとしたのですが、切り抜けない場合もあります。(設定によっては切り抜けるかもしれません…)
まとめ
「PBRemTools」の使い方について解説しました。
・人物のみを切り抜きすることが出来る
・部位のみを呪文で指定して切り抜くことも出来る
画像を切り抜きたい方は、ぜひ「PBRemTools」の拡張機能を利用してみてください!
こちらの記事では、背景を透過させる方法について解説しているので良ければ読んでみてください。