Nodes/ComfyUI Impact Pack/ImpactControlNetClearSEGS
ComfyUI Node Runs on cloud

ImpactControlNetClearSEGS

Strip a previously-attached ControlNet back off a SEGS

By ltdrdata·Created 3 years ago·Updated 4 months ago· 3,242
ImpactControlNetClearSEGS
  • segs
  • SEGS

ControlNetApply (SEGS) attaches a ControlNet to every region in a SEGS so the detailer applies control guidance during refinement. ImpactControlNetClearSEGS undoes exactly that - per the README, it's simply "Clear applied ControlNet in SEGS." Feed it a SEGS that's been through a ControlNet-apply step and you get the same detections back with that attachment removed.

Why you'd want to strip it back off

The natural case is a multi-pass detailing workflow where you want ControlNet guidance on one pass but not the next, reusing the same SEGS. Say you steer a first detail pass with a depth or tile ControlNet to keep it faithful to the source, then want a second pass on the same regions to sample more freely without that constraint carrying over. Rather than re-detecting from scratch to get a clean SEGS, this node clears the attachment and lets you continue with the same detections.

It's a small node, deliberately. Impact Pack's SEGS pipeline is built around this kind of composable step - detect once, then apply, filter, dilate, or (here) un-apply behaviors onto the same bundle of detections without ever going back to the source image. ImpactControlNetClearSEGS is the "undo" half of that pattern for the ControlNet-on-SEGS feature specifically.

The input and output

  • segs (SEGS, required) - the detections to clear. Only input.

Output is a single SEGS - same regions, same masks and crops, with any attached ControlNet removed.

How to install it

Ships with the Impact Pack. ComfyUI Manager: search ComfyUI Impact Pack, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack comfyui-impact-pack
cd comfyui-impact-pack
pip install -r requirements.txt

then restart. No models - this only edits what's attached to the SEGS metadata, not the pixels or the underlying detections.

Common issues & troubleshooting

Nothing seems to change. If the SEGS never had a ControlNet attached to begin with (no ControlNetApply (SEGS) step upstream), this node has nothing to clear and just passes the SEGS through as-is - that's expected, not a failure.

Detailer still seems to be following the old ControlNet after clearing. Double-check this node genuinely sits between the apply step and the detailer in your graph, not off to the side. If the detailer is still reading from the pre-clear SEGS output by mistake - an easy wiring slip when a graph has multiple branches - the clear never actually reaches it.

Do you need this at all? Only if you're reusing one SEGS across multiple detail passes with different ControlNet requirements. If each pass in your workflow re-detects or builds its own fresh SEGS, there's nothing stale to clear and you can skip this node entirely.

You're not sure whether the deprecated or current apply node was used upstream. Doesn't matter for this node - it clears whatever's attached regardless of whether it came from the legacy ControlNetApply (SEGS) - DEPRECATED or the current Advanced version. The clear step is generic to the SEGS's ControlNet attachment, not tied to which apply node put it there.

CategoryImpactPack/Util

Inputs (1)

NameTypeDefaultDescription
segsSEGS

Outputs (1)

NameTypeDescription
SEGSSEGS