
プライバシーの保護が必要か・・・

何をぶつぶつ言っているんだい?

あ、管理人さん。
画像にモザイクをかけたいんだけど、いい方法はないかな?

うん?あるよ。
どこにかけたいかによって少し変わるけど、基本的には同じだから今回はそれを紹介するね
ComfyUIでは、画像生成だけでなく、生成した画像を加工することもできます。
今回はその中から、画像の一部にモザイクをかける方法を紹介します。
「画像の一部分だけを隠したい」「モザイクの範囲を自分で指定したい」といった場合にも使える方法です。
ComfyUIにはモザイク処理を行えるカスタムノードがあり、処理範囲を指定しなければなりません。
今回は自動でかける方法と範囲を手動で指定する方法の2パターン紹介します。
Mosaic Creatorでモザイク処理
モザイク処理を行えるノードはいくつかありますが、今回は「Mosaic Creator」というノードを使用します。
使いやすく、様々な処理に対応していて便利だと思います。
Mosaic Creatorの導入方法
拡張機能の管理から「ComfyUI-Mosaic」と検索しノードパックをインストールしてください。
手動のワークフロー
まず手動のワークフローを紹介します。こちらはノードの構成数が少なく簡単に作れるのが特徴です。
使用するノード
- 画像を読み込む
- Mosaic Creator
- 画像を保存
以上を呼び出してください。

接続は画像を参考にしてください。
Mosaic Creatorの設定
設定項目は以下です
mosaic_type:モザイクの種類
block_size:モザイクの大きさ
intensity:モザイクの強さ(数値を下げると透ける)
preserve_edges:輪郭を保持するか
となります。変更するのはmosaic_typeとblock_sizeかなと思います。いろいろ試してみて下さい。
使用方法
まず、モザイクをかけたい範囲を指定します。つまりマスク処理を行います。
画像を読み込むノードを右クリックして、「open in MaskEditor」をクリックし、マスクエディターを起動してください。

ブラシでマスクをかけます(左クリック)。終わったら保存をクリック。

ブラシの大きさや形状は右のバーから変更可能です。
実行するボタンをクリックすると、指定範囲がモザイク処理されます。

自動のワークフロー
自動化するためには手動で行ったマスク処理を自動化する必要があります。
そのためかけたい範囲を検出するノードとモデルが必要です。
必要なノード
- UltralyticsDetectorProvider
- BBOX Detector (SEGS)
- Mosaic Creator
- マスクされた画像合成
- SEGS to MASK (combined)
- 画像を読み込む
- 画像を保存
すべて呼び出して、以下の画像を参考に接続してください。

UltralyticsDetectorProviderでモデルが選択できない場合は使用したいモデルを導入してください。
主なものは「モデルブラウザ」の「HuggingFace」にあります。

アニメ絵のNSFWなら「ntd11_anime_nsfw_segm_v5-variant1.pt」などでしょうか。お好みのモデルをお使いください。
設定方法
「UltralyticsDetectorProvider」で使用したいモデルを選択します。
「BBOX Detector (SEGS)」の設定は
threshold:閾値、1にすると判定が厳しくなり、検出漏れが増えます。0.5を基準に調整してください
dilation:検出した範囲から何ピクセル広げるか。数値を上げるとモザイク範囲が広がります。
crop_factor:クロップ倍率、デフォルトで
drop_size:検出部位の最小ピクセル数。小さい対象は無視する場合に使用。小さすぎるとノイズで反応することもある。
一番下の入力ボックス:検出部位を入力、画像のように「face」と入力しないと検出されません。
重要なのは「入力ボックス」と「threshold」です、どちらも検出にかかわる設定なので、しっかり確認して設定しましょう。
「Mosaic Creator」の設定は先ほどと同様で、「マスクされた画像合成」の設定は画像の通りとしてください。

まとめ

これでモザイクはばっちりだ!

うん、基本的なモザイクはこれで十分だと思うよ

よ~し、モザイクかけまくるぞ~
ComfyUIでは、カスタムノードを利用することで画像にモザイク処理を加えられます。
今回紹介したComfyUI-Mosaicの「Mosaic Creator」を使えば、画像全体へのモザイクだけでなく、マスクを利用して指定した部分だけにモザイクをかけることもできます。
基本的な流れは、
Load Image → Mosaic Creator → Save Image
とシンプルです。
さらに自動化ワークフローを使えば、マスク処理する手間もなく簡単にモザイク処理することができます。
紹介したワークフローはLoad Imageノードから画像を読み込んでいましたが、画像生成ワークフローの「VAEデコード」から接続すれば、画像生成しながらモザイク処理することができます。
モザイク処理が必要な方はぜひ試してみてください。




コメント