BMAB Openpose Hand Detailer
The pose-guided hand fixer — if GroundingDINO loaded
- BMAB bind
- image
- annotation
Start with what the README actually shows off, because it's the best description of this node's intent: BMAB "detects and enlarges the upper body of a person and performs Openpose at high resolution to fix incorrectly drawn hands." That's the most sophisticated hand-fix approach in the pack - instead of just cropping and resampling pixels (Simple Hand Detailer) or grounding a crop with GroundingDINO (Subframe Hand Detailer), this one derives an OpenPose skeleton for the hand region and uses that pose as structural guidance for the redraw, which in principle gives the sampler a much stronger anatomical constraint than pixels alone.
The honest catch: this node depends on GroundingDINO loading correctly
Here's the thing worth knowing before you drag this node into a graph: its own info schema, as shipped, exposes exactly one field - a read-only text string whose default value is literally "Cannot Load GroundingDINO. To use this node, install GroundingDINO first." That's not a placeholder we're guessing at; it's the node's actual default widget content. If GroundingDINO isn't available in your environment when BMAB initializes, this node falls back to showing you that message instead of its real controls.
Put plainly: if you open this node and see only that text box, it's telling you the truth - GroundingDINO didn't load, and the node has nothing else to offer you until it does. This lines up with a real complaint from BMAB users: a transformers version mismatch breaks GroundingDINO's own box_threshold argument, which is enough to keep it from initializing for BMAB's nodes even though the README says no separate install is needed as of transformers v4.40.0+.
What you get once it's working
Per the README, this node ships outputs of bind, image, and annotation - the same output shape as BMAB's other hand detailers, so once GroundingDINO is loading correctly you should expect the real widget set (likely resembling Subframe Hand Detailer's steps/cfg/sampler/scheduler/denoise/padding/dilation/width/height, since that's the shared shape across BMAB's detailer family) to replace the fallback text field, and the annotation output to show you the detected OpenPose skeleton overlay rather than a plain crop box.
Installing it
ComfyUI Manager: search comfyui_bmab, install, restart. Or by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/portu-sim/comfyui_bmab.git
cd comfyui_bmab
pip install -r requirements.txt
Then, critically for this specific node, make sure your transformers package is at v4.40.0 or newer - the README states this version added native GroundingDINO support and "no installation required" beyond that. You'll also want comfyui_controlnet_aux (Fannovel16) and ComfyUI_IPAdapter_plus (cubiq) installed the same way, per the README's "total of three custom nodes" requirement for the pack as a whole.
Fixing the "Cannot Load GroundingDINO" state
Check your transformers version first - pip show transformers - and update it if you're below 4.40.0. If you're already current and still seeing the fallback message, the next thing to check is whether some other package in your environment pinned transformers back down as a dependency (a common cause in ComfyUI installs with a lot of custom nodes competing for the same library). Restart ComfyUI after any change; BMAB checks for GroundingDINO at load time, not per-run. If you genuinely can't get GroundingDINO working, BMAB Simple Hand Detailer solves the same underlying problem - mangled hands - without needing it at all.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | Cannot Load GroundingDINO. To use this node, install GroudingDINO first. | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| BMAB bind | BMAB bind | — |
| image | IMAGE | — |
| annotation | IMAGE | — |