Nodes/☁️BizyAir Nodes/☁️BizyAir DWPose Estimator
ComfyUI Node

☁️BizyAir DWPose Estimator

The pose preprocessor that actually gets hands right

By siliconflow·Created 2 years ago·Updated 11 months ago· 855
☁️BizyAir DWPose Estimator
  • image
  • IMAGE
detect_handenable
detect_bodyenable
detect_faceenable
resolution512
bbox_detectoryolox_l.onnx
pose_estimatordw-ll_ucoco_384_bs5.torchscript.pt

If you're conditioning a generation on someone's pose, DWPose is the detector you want over plain OpenPose - it's specifically the improved version with better hand detection, and hands are exactly where OpenPose-family detectors used to fall apart. This node takes a photo and hands back a pose skeleton image: body joints, face landmarks, and hand keypoints drawn out, ready to feed into a pose-capable ControlNet.

How it works

It runs two stages under the hood, which is why there are two model choices below: a person detector finds the humans in the frame first, then the pose estimator locates keypoints within each detected region. DWPose is one of the standard variants in the OpenPose family the wider ecosystem still relies on - every current ControlNet union, from SDXL through Z-Image and Flux 2, ships pose conditioning built on this same detect-then-estimate pattern.

The inputs and outputs that matter

  • image - required, the source photo.
  • detect_hand / detect_body / detect_face (each enable/disable, all default enable) - turn off whichever you don't need. If you only care about body pose, disabling hand and face detection speeds things up without changing the part of the output you actually use.
  • resolution (default 512, 64-1024) - the internal detection resolution. Bump it up on high-detail source images if small joints (fingers especially) are getting missed at the default.
  • bbox_detector (default yolox_l.onnx) - which model finds the people first. Choices trade accuracy for speed: the yolox_l variants (torchscript or onnx) are the larger, more accurate option; the yolo_nas_l/m/s_fp16 variants scale down from there for speed.
  • pose_estimator (default dw-ll_ucoco_384_bs5.torchscript.pt) - which DWPose weight actually estimates the keypoints. The three options differ in export format (torchscript vs onnx) and batching (_bs5), not in the underlying pose model.

Output: a single IMAGE - the rendered pose skeleton, not a mask or keypoint data structure. This is a preprocessor only; you still need a separate ControlNet loader and apply node, loaded with a pose-capable model, to actually condition your generation on it.

How to install it

ComfyUI Manager: search BizyAir, install, restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/siliconflow/BizyAir

then restart. BizyAir wants an account and API key set up on first use per the README.

Common issues & troubleshooting

Missing or mangled hands in the output skeleton. This is exactly the failure DWPose was built to fix relative to plain OpenPose, but it isn't perfect - try raising resolution first, since low-res hands are the most common cause of dropped keypoints.

Pose detected but generation ignores it. Check what you're actually loading downstream - the preprocessor output alone does nothing without a pose-capable ControlNet applied at reasonable strength; on a 2026-era union checkpoint, pose is usually one mode among several rather than a separate file, so confirm the model you loaded actually lists pose support.

Detection is slow. Turn off detect_hand/detect_face if you don't need them, and consider the smaller yolo_nas bbox detector variants if the person-detection stage is the bottleneck.

Category☁️BizyAir/☁️BizyAir/ControlNet Preprocessors/Faces and Poses Estimators

Inputs (7)

NameTypeDefaultDescription
imageIMAGE
detect_handoptCOMBOenable2 options: enable, disable
detect_bodyoptCOMBOenable2 options: enable, disable
detect_faceoptCOMBOenable2 options: enable, disable
resolutionoptINT51264–1024
bbox_detectoroptCOMBOyolox_l.onnx5 options: yolox_l.torchscript.pt, yolox_l.onnx, yolo_nas_l_fp16.onnx, yolo_nas_m_fp16.onnx, yolo_nas_s_fp16.onnx
pose_estimatoroptCOMBOdw-ll_ucoco_384_bs5.torchscript.pt3 options: dw-ll_ucoco_384_bs5.torchscript.pt, dw-ll_ucoco_384.onnx, dw-ll_ucoco.onnx

Outputs (1)

NameTypeDescription
IMAGEIMAGE