1. ComfyUIのマスクのノード|作成・拡張・ぼかし・合成

ComfyUI

ComfyUIのマスクのノード|作成・拡張・ぼかし・合成

編集部 読了 約18分

  • マスクをノードで作るには、どのノードを使うの?
  • 作ったマスクを広げたり、ぼかしたりしたい
  • 2つのマスクを合成するやり方を知りたい

ComfyUI(コンフィユーアイ)で画像の一部を直すときは、直す範囲をマスクで決めます。

しかし、描いたマスクが直したい物より少し小さかったり、縁がくっきりしすぎて直した所の境目が目立ったりすることがあります。

この記事で解説するのは、マスクを組み込みのノードで作る方法と、広げる・ぼかす・反転する・合成する方法です。

値を変えたときにマスクがどう変わるかも、作例で分かります。

画面:ComfyUI v0.37.0 ポータブル版(Windows・2026年9月)

マスクのノードを使う前に

白・黒・灰色のあるマスク。左は端から薄くしたマスク、右はそれを白黒に分けたマスク
左は、端から灰色で薄くなるマスク。右は、それを白と黒だけに分けたマスク

マスクは、画像のどこを直すかを、白から黒までの濃さだけで表した画像です。白(1)の所が直す所、黒(0)の所が残す所です。

白と黒の間の灰色の所もあり、ぼかしたマスクの縁などにできます。

マスクのノードは、マスクを作ったり、受け取ったマスクを作り直したりする組み込みのノード(ComfyUI に初めから入っているノード)です。始める前に知っておくことは、次の3つです。

  • ノードは、キャンバス(ノードを並べる真ん中の広い所)の何も無い所をダブルクリックして開く「ノード検索」に、名前を打って置く
  • マスクの形は、マスクを白黒で見せるノード「MaskPreview」で見る。日本語の表示でも、名前は英語のまま
  • 画面の右上の実行するを押すと、つないだノードが動き、MaskPreview にマスクが出る
ComfyUIの画面の全体。左の列、真ん中のキャンバス、右上の「実行する」
ComfyUI の画面。左の列・真ん中のキャンバス・右上の実行する

この記事の例のソファのマスクは、居間の画像(768×512)を「画像を読み込む」に読み込み、マスクエディタで描いて作りました。

ノードの名前は日本語の表示のもので、画面が英語なら、左の列の一番下の歯車で設定を開き、Language を日本語にします。

マスクを作るノード

左が色で塗り分けた画像、右が青い所から作ったマスク
窓の青い所から作ったマスク。下の端の左から中ほどが欠けているのは、青の上にソファの緑を重ねて塗ったため

マスクは、手で描くほかに、画像やノードの欄の値から作れます。マスクを作るノードの使い方は、次の2つです。

  • 画像の色からマスクを作る
  • チャンネル・無地・切り出しで作る

画像の色からマスクを作る

「画像色をマスクに変換」(ImageColorToMask)は、画像の中の決めた色の所だけを、白いマスクにするノードです。

壁を灰色、床を橙、窓を青、ソファを緑で塗り分けた画像から、窓の青い所だけをマスクにします。

色で塗り分けた画像を読み込む

キャンバスの何も無い所をダブルクリックし、ノード検索で「画像を読み込む」を選びます。置いたノードのアップロードするファイルを選択を押して、色で塗り分けた画像を選んでください。

ノードの中に、塗り分けた画像が出ました。

「画像色をマスクに変換」をつなぐ

ノード検索で画像色をマスクに変換を置きます。「画像を読み込む」の画像の出力の点から、置いたノードの画像の入力の点までドラッグしてつなぎます。

2つのノードが、線でつながりました。

「色」に色の値を打つ

色の欄を押して、マスクにしたい色の値を打ちます。色の値の求め方は、赤・緑・青(どれも 0〜255)を使った 赤×65536+緑×256+青 の式です。

赤・緑・青の値は、塗るときに使った画像のソフトの色の画面で控えておきます。例の窓の青は赤 60・緑 110・青 200 なので、60×65536+110×256+200 の 3960520 と打ちます。

MaskPreviewにつないで実行する

「画像色をマスクに変換」のマスクの出力から線を引き出し、何も無い所で離して MaskPreview を選びます。右上の実行するを押してください。

画像を読み込む・画像色をマスクに変換・MaskPreview をつないだところ。「色」の欄を赤い枠で囲んでいる
赤い枠が色の欄。MaskPreview に、窓の所だけが白く出た

窓の青い所だけが、白いマスクになりました。

このノードがマスクにするのは、打った色とぴったり同じ色の所だけです。写真のように、同じ物でも色が少しずつ違う画像には向きません。

チャンネル・無地・切り出しで作る

画像の色のほかに、画像のチャンネル(赤・緑・青・透明さのどれか1つの濃さ)や、欄の値からもマスクを作れます。作るノードは、次の表の3つです。

ノード(画面の名前)英語の名前入力と欄(初めの値)作るマスク
画像をマスクに変換ImageToMask画像・チャンネル(red・green・blue・alpha。初めは red)選んだチャンネルの濃さを、そのままマスクにする。alpha は、背景を透明にした PNG の、物の所をマスクにするときに使う
ソリッドマスクSolidMask値(0〜1・初めは 1.00)・幅・高さ(初めは 512)全体が同じ値のマスク
マスクをトリミングCropMaskマスク・x・y(初めは 0)・幅・高さ(初めは 512)マスクの左上から x・y ずらした所から、幅×高さの四角を切り出す

表の「ソリッドマスク」は、値を 1.00 にすると全体が白いマスクを作るノードです。

マスクを広げる・ぼかす

元のマスクと、拡大を -20・20・60 にしたマスクの並び
ソファのマスクを、「マスクを拡大」の拡大を -20・20・60 にして作り直した

ここからは、マスクエディタで描いたソファのマスクを整えます。マスクが直したい物より小さいときは広げ、縁をくっきりさせたくないときは、白から黒へ少しずつ変わるようにぼかします。

マスクを広げる・ぼかすノードの使い方は、次の3つです。

  • マスクを拡大で広げる・縮める
  • 画像ぼかしで縁をぼかす
  • フェザー マスクで端から薄くする

マスクを拡大で広げる・縮める

「マスクを拡大」(GrowMask)は、マスクの白い所を、決めたピクセルの数だけ広げるノードです。ソファのマスクを 20 ピクセル広げます。

部屋の画像を読み込む

ノード検索で画像を読み込むを置き、アップロードするファイルを選択で手元の部屋の画像を選びます。

ノードの中に、部屋の画像が出ました。

ソファにマスクを描いて保存する

「画像を読み込む」の上で右クリックし、Open in MaskEditor | Image Canvasを押して開いた画面でソファをなぞり、保存を押します。

「画像を読み込む」のマスクの出力から、ソファのマスクが出るようになりました。

「マスクを拡大」をつなぐ

ノード検索でマスクを拡大を置き、「画像を読み込む」のマスクの出力を、置いたノードのマスクの入力へドラッグします。

「マスクを拡大」に、ソファのマスクが入るようになりました。

「拡大」に広げる幅を打つ

拡大の欄を押して、20 と打ちます。

画像を読み込む・マスクを拡大・MaskPreview をつないだところ。「拡大」の欄を赤い枠で囲んでいる
赤い枠が拡大の欄。その下のテーパードコーナーが true のままだと、広げたマスクの角は斜めに切れる

欄が 20 になり、マスクを 20 ピクセル広げる設定になります。

広げたマスクを確かめる

「マスクを拡大」のマスクの出力から MaskPreview を置き、実行するを押します。

MaskPreview に、ひと回り大きくなったソファのマスクが出ました。マイナスの値を打つと、マスクは縮みます。

画像ぼかしで縁をぼかす

マスクを扱うノードの中には、マスクの縁をぼかすノードがありません。マスクを一度画像にして、画像をぼかすノードにかけてから、マスクに戻します。

「マスクを画像に変換」をつなぐ

ノード検索でマスクを画像に変換(MaskToImage)を置き、「画像を読み込む」のマスクの出力をつなぎます。広げたマスクをぼかすときは、「マスクを拡大」の出力をつなぎます。

マスクが、白黒の画像として出るようになりました。

「画像ぼかし」をつなぐ

ノード検索で画像ぼかし(ImageBlur)を置き、「マスクを画像に変換」の出力をつなぎます。ブラーレイディウス(ぼかす範囲の半径)を 20、シグマ(ぼけ方の強さ)を 10 にします。

マスクを画像に変換・画像ぼかし・画像をマスクに変換を順につないだところ。画像ぼかしのノードを赤い枠で囲んでいる
赤い枠が「画像ぼかし」。ぼかす強さはこのノードで決める

白黒の画像を、ぼかす設定になりました。

「画像をマスクに変換」で戻す

ノード検索で画像をマスクに変換を置き、「画像ぼかし」の出力をつなぎます。チャンネルは red のままにしてください。

ぼかした画像が、マスクに戻るようになりました。白黒の画像は赤・緑・青が同じ濃さなので、red のままでかまいません。

実行して確かめる

「画像をマスクに変換」のマスクの出力から MaskPreview を置き、実行するを押します。

マスクの縁が、なだらかにぼけました。

元のマスクと、画像ぼかしでぼかしたマスク
ブラーレイディウス 20・シグマ 10 でぼかしたマスク

ブラーレイディウスは 1〜31、シグマは 0.1〜10 の間で決めます。シグマが大きいほど広くぼけ、ブラーレイディウスは、ぼかしが届く範囲の上限です。

フェザー マスクで端から薄くする

「フェザー マスク」(FeatherMask)は、画像の左・上・右・下の端から、決めた幅だけマスクを薄くするノードです。端に近いほど黒に近づき、マスクの形の縁は、このノードではぼけません。

全体が白いマスクを作る

ノード検索でソリッドマスクを置き、値を 1.00、幅を 768、高さを 512 にします。

全体が白い、768×512 のマスクができました。

「フェザー マスク」をつなぐ

ノード検索でフェザー マスクを置き、ソリッドマスクの出力を、置いたノードのマスクの入力につなぎます。

左・上・右・下の4つの欄が、どれも 0 で出ています。

薄くする幅を打って実行する

左を 200、下を 120 にし、出力から MaskPreview を置いて実行するを押します。

ソリッドマスク・フェザー マスク・MaskPreview をつないだところ。「左」と「下」の欄を赤い枠で囲んでいる
MaskPreview で、左の端と下の端が黒から白へ少しずつ変わっている

左の端と下の端が、黒から白へ少しずつ変わるマスクになりました。

マスクの反転としきい値

元のマスクと、反転したマスク
反転すると、ソファの外側がマスクになる

マスクの白と黒を入れ替えるノードと、灰色を白か黒に分けるノードは、マスクの出力を1本つなぐだけで使えます。2つのノードの使い方は、次の2つです。

  • マスクを反転する
  • しきい値マスクで灰色を白黒に分ける

マスクを反転する

「マスクを反転」(InvertMask)は、マスクの白と黒を入れ替えるノードで、設定の欄はありません。物を残して、周りの背景だけを作り直したいときに使います。

「マスクを反転」をつなぐ

ノード検索でマスクを反転を置き、ソファのマスクの出力をつなぎます。

ソファのマスクが、「マスクを反転」に入るようになりました。

実行して確かめる

「マスクを反転」の出力から MaskPreview を置き、実行するを押します。

白と黒が入れ替わり、ソファの外側がマスクになりました。

しきい値マスクで灰色を白黒に分ける

「しきい値マスク」(ThresholdMask)は、マスクの灰色を白か黒のどちらかに分けるノードです。値より大きい所を白、それ以外を黒にします。

「しきい値マスク」をつなぐ

ノード検索でしきい値マスクを置き、「フェザー マスク」のマスクの出力を、置いたノードのマスクの入力へドラッグします。

フェザーをかけたマスクが、「しきい値マスク」に入りました。

「値」を決めて実行する

値の欄を 0〜1 の間で決めます(初めは 0.5)。出力から MaskPreview を置いて、実行するを押してください。

0.5 で分けると、端から薄くした所が白と黒にくっきり分かれました。

左が、左 200・下 120 でフェザーをかけたマスク。右が、それをしきい値 0.5 で白黒にしたマスク
右では、灰色だった所が白か黒のどちらかになった

灰色の所を残したくないマスクを、白と黒だけにそろえたいときに使います。

2つのマスクを合成する

multiply・add・subtract で重ねたマスク
ソファのマスクに、窓のマスクを 60 ピクセル下にずらして重ねた。左から multiply・add・subtract

「マスク合成」(MaskComposite)は、2つのマスクを重ねて、1つのマスクにするノードです。例として、ソファのマスクに、窓の青い所から作ったマスクを重ねます。

マスクを合成するときに知っておくことは、次の2つです。

  • マスク合成でつなぐ
  • 6つの操作ごとの重なり方

マスク合成でつなぐ

「マスク合成」には、重ねる先の目的地と、重ねるソースの2つの入力があります。

2つのマスクを用意する

ソファのマスクを描いた「画像を読み込む」と、窓のマスクを作った「画像色をマスクに変換」(とその前の「画像を読み込む」)を、同じキャンバスに置きます。無ければ、もう一度置きます。

重ねる2つのマスクが、そろいました。

「マスク合成」を置いてつなぐ

ノード検索でマスク合成を置きます。ソファのマスクを目的地へ、窓のマスクをソースへつないでください。

2つのマスクが、「マスク合成」に入りました。

重ねる位置と「操作」を決めて実行する

xとyで、目的地のどこにソースを重ねるかを、左上からのピクセルで決めます。重なり方を見る例としてyを 60 にし、操作で subtract を選んで実行するを押します。

2つのマスクをマスク合成につないだところ。「操作」の欄(subtract)を赤い枠で囲んでいる
subtract では、ソファのマスクから窓の所が引かれた

窓のマスクが 60 ピクセル下にずれて重なり、ソファのマスクから窓と重なった所が引かれました。

6つの操作ごとの重なり方

操作は6つあり、どれを選ぶかで重なり方が変わります。6つの操作の重なり方は、次の表のとおりです。

操作重なり方
multiply2つを掛け合わせる。両方が白い所だけが残る
add2つを足す。どちらかが白い所が白くなる
subtract目的地からソースを引く。ソースの白い所が目的地から消える
and両方が白い所だけを白にする
orどちらかが白い所を白にする
xor片方だけが白い所を白にする。両方が白い所は黒になる

and・or・xor は、灰色を先に白か黒に丸めてから重ねます。

白と黒だけのマスクなら、multiply と and、add と or は同じ形になります。ぼかしたマスクの灰色の縁を残したいときに選ぶのは、multiply・add・subtract です。

and・or・xor で重ねたマスク
左から and・or・xor。xor では、ソファと窓が重なった所が黒く抜けた

マスクの範囲で画像を切り抜く

画像を読み込む・画像をマスクに合わせて切り抜き・画像プレビューをつないだところ。画像をマスクに合わせて切り抜きのノードを赤い枠で囲んでいる
ソファのマスクを描いた「画像を読み込む」から、マスクの所を 512×512 に切り抜いた

「画像をマスクに合わせて切り抜き」(ImageCropToMask)は、マスクの白い所を囲む四角で画像を切り抜き、決めた大きさの画像にするノードです。マスクの外は、背景の色で塗られます。

欄と初めの値を、次の表にまとめました。

欄初めの値働き
幅・高さ1024・1024(64〜4096・8きざみ)出す画像の大きさ(ピクセル)
pad_factor1.00(1.00〜2.00)マスクを囲む四角の周りに足す余白の倍率
grow_mask0(-32〜32)切り抜く前に、マスクを広げる・縮めるピクセルの数
背景#000000(黒)マスクの外を塗る色

ソファのマスクで、居間の画像からソファを切り抜く手順は、次の3つです。

「画像をマスクに合わせて切り抜き」をつなぐ

ノード検索で画像をマスクに合わせて切り抜きを置きます。「画像を読み込む」の画像を画像へ、マスクをマスクへドラッグしてください。

置いたノードの画像とマスクの2つに、線がつながりました。

出す大きさを決める

幅と高さの欄を、どちらも 512 にします。

512×512 の画像を出す設定になりました。

画像プレビューにつないで実行する

出力から線を引き出し、ノード検索で画像プレビューを選んでから、右上の実行するを押します。

画像プレビューに、ソファの所を切り抜いた 512×512 の画像が出ました。

元の画像元の画像
切り抜いた画像切り抜いた画像
マスクの外は、背景の色(黒)で塗られた

これで、マスクの範囲だけを1枚の画像にできました。

マスクのノードでうまくいかないとき

拡大を 60 にしたマスク。角が斜めに切れた所を赤い枠で囲んでいる
「マスクを拡大」の拡大を 60 にしたマスク。角が斜めに切れている

マスクのノードでうまくいかないときの症状は、次の2つです。

  • 色から作ったマスクが欠ける
  • 広げたマスクの角が斜めになる

色から作ったマスクが欠ける

「画像色をマスクに変換」は、打った色とぴったり同じ色の所だけをマスクにするので、ほかの色を塗り重ねた所は欠けてしまいます。作例では、窓の青の上にソファの緑を塗り重ねた所が、窓のマスクから欠けました。

マスクにしたい所は、ほかの色と重ねずに1つの色で塗っておきます。

広げたマスクの角が斜めになる

原因は、「マスクを拡大」のテーパードコーナーが、初めは true になっていることです。true のときは、広げたマスクの角が斜めに切れた形になります。

角を斜めに切らずに広げたいときは、テーパードコーナーを押して false にします。

マスクのノードで、作ったマスクを広げてぼかしてみよう

元のマスクと、画像ぼかしでぼかしたマスク
ブラーレイディウス 20・シグマ 10 でぼかしたマスク

マスクのノードは、マスクを作ったり、受け取ったマスクを作り直したりするノードです。この記事の要点は、次の5つです。

  • 画像の色からは「画像色をマスクに変換」、チャンネル・無地・切り出しからは「画像をマスクに変換」「ソリッドマスク」「マスクをトリミング」でマスクを作る
  • 広げるのは「マスクを拡大」、縁をぼかすのは「マスクを画像に変換」→「画像ぼかし」→「画像をマスクに変換」、端から薄くするのは「フェザー マスク」
  • 白と黒を入れ替えるのは「マスクを反転」、灰色を白黒に分けるのは「しきい値マスク」
  • 2つのマスクは「マスク合成」の6つの操作で重ねる
  • マスクの範囲で画像を切り抜くのは「画像をマスクに合わせて切り抜き」

まずはソファのマスクを「マスクを拡大」で広げ、画像ぼかしで縁をぼかしてみてください。

あわせて読みたい

会員登録(無料)

記事やテーマのお気に入り・学習履歴・フォローが使えます。

この記事について

PERSC編集部が、建築の制作に関わる知識を実務目線で整理しています。内容は公開・更新日時点の情報にもとづきます。誤りや古い情報にお気づきの場合はお問い合わせよりご連絡ください。

あわせて読みたい