IBB Pose — Load GroundingDINO Model
The optional eyes of IBB Pose — load GroundingDINO when 'person' isn't the whole story
- GROUNDING_DINO_MODEL
GroundingDINO is the one loader in IBB Pose you can skip, until the day you can't. This node doesn't do a lick of pose estimation itself - it loads an open-vocabulary object detector, and its entire job inside this pack is to hand the processor a list of bounding boxes for "where are the people?". You wire it in when YOLO isn't the right tool for finding your subject, and honestly, for a lot of pose work it isn't needed at all.
Here's the context that makes it click. The IBBPoseProcessor detects people first, then estimates pose on each detected person. Its default detector path is YOLO: fast, purpose-trained, and great at "person". GroundingDINO is the text-prompted alternative - you describe what to look for in words. That makes it genuinely useful when your subject is a person in a crowd, or something a generic person-detector fumbles. This is the same Grounded-SAM-style trick that powers a whole category of detection workflows, where a text prompt finds a box and a segmenter or - here - a pose model does the rest.
How it works
The implementation is cribbed from the SAM2 node playbook, and it's straightforward. On first use it downloads a config file and a .pth checkpoint from ShilongLiu/GroundingDINO on HuggingFace into ComfyUI/models/grounding-dino/, builds the transformer model, loads the weights, and hands you a GROUNDING_DINO_MODEL. The detection itself runs when the processor calls it with your prompt.
The one input that matters
model_name is a dropdown with exactly two choices:
- GroundingDINO_SwinT_OGC (694MB) - the standard model. This is the one people actually use.
- GroundingDINO_SwinB (938MB) - bigger, a bit more accurate, and a chunkier download. Only worth it if SwinT is clearly missing detections for your input.
You wire the GROUNDING_DINO_MODEL output into the processor's grounding_dino_model input, then set prompt (defaults to "person .") and gd_threshold (default 0.3) there.
Installing it
Same base install as the rest of the pack - ComfyUI Manager, search "IBB_POSE", or:
cd ComfyUI/custom_nodes
git clone https://github.com/IBB666/IBB_POSE
cd IBB_POSE
pip install -r requirements.txt
One extra requirement: this node imports groundingdino at runtime, which is not in requirements.txt (the pack keeps install-time deps minimal and imports backends lazily). If it fails, you need:
pip install groundingdino-py
Troubleshooting
Failed to import 'groundingdino'- you skipped the step above. Installgroundingdino-pyand restart ComfyUI.- Slow first run - it's pulling a ~700MB checkpoint. That's normal.
- Detection is slow or missing things - GroundingDINO is heavier than YOLO. If you only ever prompt "person", save yourself the VRAM and use the YOLO loader instead. Reach for this node when text-driven detection is actually what the workflow needs.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | 2 options: GroundingDINO_SwinT_OGC (694MB), GroundingDINO_SwinB (938MB) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| GROUNDING_DINO_MODEL | GROUNDING_DINO_MODEL | — |