π«οΈ SEGS Mask Blur
Feather your tile masks so the seams disappear
- segs
- bundle
- segs
Hard-edged mask edges are the enemy of tiled upscaling: each tile gets regenerated with a crisp boundary, you composite them back, and every seam shows as a line. ArchAi3D_SEGS_Mask_Blur is the small utility that fixes that - it applies a Gaussian blur to the masks inside a SEGS structure so tile boundaries feather into each other instead of announcing themselves. The pack's own header comment nails the use case: "Use before DetailerForEach or Smart Tile Detailer for seamless blending."
SEGS is the segmented-region format from Impact Pack (ltdrdata's detect-crop-refine node pack) - the same machinery behind FaceDetailer. Each SEG carries a cropped mask, and this node blurs those masks. The segs output plugs straight back into a detailer, so it slots into the middle of an existing tiling workflow without changing anything else.
The inputs that matter
- segs - the SEGS to blur. Required.
- mask_blur - the Gaussian radius, 0β64, default 8. 0 is razor sharp, 8 is soft, 32 is very soft. This is the knob you'll actually tune; start at 8 and increase until seams vanish.
- bundle - optional
SMART_TILE_BUNDLEinput. Connect it and the node takesmask_blurfrom the bundle instead, then clamps it to the bundle'stile_paddingso the blur never exceeds the padding and creates artifacts of its own. That clamp is a genuinely thoughtful detail.
Output: a single segs - the same SEGS with blurred masks, ready for the next node.
How it works
Under the hood it's PIL.ImageFilter.GaussianBlur applied to each segment's mask, with the bundle-aware clamp on top. The SEG namedtuple is defined locally for Impact Pack compatibility, so it works whether the SEGS came from Impact Pack proper or from the ArchAi3d pack's own Smart Tile system. It borrows the approach from Ultimate SD Upscale's mask_blur, which is a solid pedigree for "how do we keep tile seams invisible."
Installing it
Part of ComfyUI-ArchAi3d-Qwen (author: Amir Ferdos / ArchAi3d):
# ComfyUI Manager: search "ArchAi3d Qwen"
cd ComfyUI/custom_nodes
git clone https://github.com/amir84ferdos/ComfyUI-ArchAi3d-Qwen.git
cd ComfyUI-ArchAi3d-Qwen
pip install -r requirements.txt
Restart. No extra models or heavy deps for this node - it's just numpy/PIL.
Common issues
- Blur too big = halos. Crank
mask_blurto 32 and you trade seams for soft fringes where the regenerated tile bleeds over its boundary. The bundle clamp exists precisely to stop this; when not using a bundle, keep the blur modest relative to your tile padding. - Blur too small = seams. If you can still see tile lines, your blur is under the tile overlap. Raise it in steps of 4.
- It needs SEGS upstream. If your workflow doesn't have a SEGS producer (Impact Pack's Make Tile SEGS, or the pack's Smart Tile SEGS), this node has nothing to chew on.
A boring node that quietly prevents the most common tiled-upscale failure. It's the kind of thing you install a pack for and never think about again - which is the point.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| segs | SEGS | SEGS to apply mask blur to | |
| mask_blur | INT | 80β64 | Gaussian blur radius for mask edges (0=sharp, 8=soft, 32=very soft) |
| bundleopt | SMART_TILE_BUNDLE | If connected, uses mask_blur from bundle |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| segs | SEGS | β |