Nodes/ComfyUI Impact Pack/BBOX Detector (combined)
ComfyUI Node Runs on cloud

BBOX Detector (combined)

Turn a YOLO detector into one flat mask

By ltdrdata·Created 3 years ago·Updated 4 months ago· 3,248
BBOX Detector (combined)
  • bbox_detector
  • image
  • MASK
threshold0.50
dilation4

BBOX Detector (combined) is the simplest node in the Impact Pack's detector family: image in, one mask out. You hand it a detector, it finds every match - faces, hands, people, whatever your YOLO model is trained for - and it hands you back a single MASK covering all of them. No SEGS, no detailer, no pipe. Just a mask.

That's the whole reason to reach for it. Most of the Impact Pack runs on SEGS, a rich per-detection structure that carries crops and metadata for the detect-crop-refine loop. Sometimes you don't want any of that machinery - you just want a mask of "wherever the faces are" to feed into your own inpaint node, a GrowMask, a compositing step, or a ControlNet. This node is the shortcut that skips SEGS entirely and gives you a plain mask you can wire anywhere a MASK is accepted. The _v2 in the class name is just the current iteration; it's the node you get when you drop "BBOX Detector (combined)" into a graph.

It ships in ltdrdata's ComfyUI Impact Pack - the detect-crop-refine suite behind FaceDetailer, and the ComfyUI counterpart to ADetailer. Same author as ComfyUI Manager, which tells you the pack is load-bearing infrastructure rather than a weekend experiment.

How it works

A YOLO-style detector runs across the image and returns a set of bounding boxes with confidence scores. "Combined" is the operative word: instead of keeping those boxes separate (which is what the SEGS version does), this node merges them all into one flat mask. Two faces in the frame become one mask with two rectangular blobs. You lose the ability to treat each detection individually - that's the trade - in exchange for a mask you can use immediately.

The important thing to understand is that this node doesn't contain a detector. It's a consumer. The bbox_detector input is required and has to come from a provider node - typically UltralyticsDetectorProvider, which loads a YOLO .pt model. Since Impact Pack v8.0 that provider lives in the separately-installed Impact Subpack, so if you haven't installed that, you have nothing to plug in here and the node is dead weight.

The inputs and outputs that matter

Four inputs, one output - refreshingly small:

  • bbox_detector (required) - the detector doing the actual work. Feed it from a provider node (see install below). This is the input people forget exists.
  • image (required) - the picture to scan.
  • threshold (default 0.5) - the confidence cutoff. Lower it (say 0.3) to catch smaller or partially hidden faces at the risk of false positives; raise it to only keep the confident hits.
  • dilation (default 4) - grows the mask outward by that many pixels so it doesn't cut the edge of the object tight. Negative values erode it instead.

The single output is MASK - one combined mask of every detection, ready to route into an inpaint sampler, a mask operation, or anything downstream that takes a mask.

How to install it

Install the pack via ComfyUI Manager (search ComfyUI Impact Pack, install, restart), or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack comfyui-impact-pack
cd comfyui-impact-pack
python -m pip install -r requirements.txt   # ComfyUI's python; python_embeded on portable

then restart. To actually feed this node, also install the Impact Subpack for UltralyticsDetectorProvider and its YOLO detection models - the base pack stopped bundling that provider at v8.0. On Linux you may need the system libs libgl1-mesa-glx and libglib2.0-0 for OpenCV.

Common issues & troubleshooting

There's nothing to connect to bbox_detector. You skipped the Subpack. Install ComfyUI-Impact-Subpack, add an UltralyticsDetectorProvider, load a face/person YOLO model, and wire its output in.

The mask comes back empty. Either threshold is too high, or the detector model doesn't match your subject - a face YOLO won't find hands, and stylized or tiny subjects can slip past detection. Lower the threshold, or swap to a detector trained for what you're masking.

Two subjects blurred into one mask. That's by design - "combined" merges everything. If you need to handle each detection separately (different prompt per face, one detailer pass each), you want the SEGS version, BBOX Detector (SEGS), not this one.

CategoryImpactPack/Detector

Inputs (4)

NameTypeDefaultDescription
bbox_detectorBBOX_DETECTOR
imageIMAGE
thresholdFLOAT0.500–1
dilationINT4-512–512

Outputs (1)

NameTypeDescription
MASKMASK