Nodes/comfyui-mixlab-nodes/Feathered Mask ♾️Mixlab
ComfyUI Node Runs on cloud

Feathered Mask ♾️Mixlab

Soften a mask's hard edge before you composite

By MixLabPro·Created 3 years ago·Updated 2 months ago· 1,859
Feathered Mask ♾️Mixlab
  • mask
  • MASK
start_offset1
feathering_weight0.1

A hard-edged mask is the thing that gives away a composite - the sharp cutout line that screams "this was pasted in." The README groups this node with "SmoothMask" under one purpose: "add edges to an image," which really means softening the mask's boundary so the composite blends instead of announcing itself. If you're using CompositeImages_, an inpaint node, or anything else in this pack's Layer group that takes a mask, this is the node you run first.

How it works

Two controls do two separate jobs, applied in sequence. start_offset grows or shrinks the mask boundary first - positive values push it outward, negative values pull it inward, across a -150 to 150 pixel range. Then feathering_weight blurs that boundary into a gradient rather than a hard line, the standard grow-then-blur feathering approach. The default feathering_weight is a fairly light 0.1, so if a composite still shows a visible seam after running this, the fix is usually to push that value higher, not to assume the node isn't working.

The inputs and outputs that matter

  • mask (MASK, required) - the mask you're softening.
  • start_offset (INT, default 1, range -150150, required) - grow (positive) or shrink (negative) the mask boundary before feathering.
  • feathering_weight (FLOAT, default 0.1, range 01, step 0.1, required) - how soft the resulting edge is. Higher means a wider, more gradual fade.

The output is MASK, and it comes out as a list - wire it accordingly, or convert if the next node expects a single mask rather than a list.

How to install it

Ships with the Mixlab pack.

  • ComfyUI Manager: search comfyui-mixlab-nodes, install, restart.
  • Manual: cd ComfyUI/custom_nodes && git clone https://github.com/shadowcz007/comfyui-mixlab-nodes.git, install requirements (install.bat on Windows, or ../../../python_embeded/python.exe -s -m pip install -r requirements.txt), restart.

No model download needed - this is pure mask processing.

Common issues & troubleshooting

Seam is still visible after adding this node. The default feathering_weight of 0.1 is deliberately subtle. Push it up - toward 0.40.6 - for a strongly soft edge before concluding anything's broken.

Mask shrank or grew more than expected. That's start_offset, not feathering_weight - remember the two are separate steps. If the region itself is the wrong size, adjust the offset; if the region's the right size but the edge is too hard or too soft, that's the feathering value.

Downstream node complains about the mask type. The output is a mask list, not a single mask - the same list/batch distinction that trips people up elsewhere in this pack. Check what the next node actually expects before assuming the mask itself is malformed.

Category♾️Mixlab/Mask

Inputs (3)

NameTypeDefaultDescription
maskMASK
start_offsetINT1-150–150
feathering_weightFLOAT0.10–1

Outputs (1)

NameTypeDescription
MASKMASK