Nodes/ComfyUI_DWposeDeluxe/DWposeDeluxe Frame Numbering
ComfyUI Node

DWposeDeluxe Frame Numbering

Stamp frame numbers on a video so you can actually find the good bit

By hobinrude·Created 9 months ago·Updated 8 months ago· 11
DWposeDeluxe Frame Numbering
  • image
  • IMAGE
print_frame_numberstrue
skip_first_frames0
print_every_nth1
number_position
font_size64
font_nameDejaVuSansMono-Bold.ttf
overlay_opacity0.50

Pose debugging runs on frame numbers. You look at a rendered skeleton, decide frame 312 is where the hands glitch, and you need to know it's 312 when you go hunt in the original video. This node overlays the frame index directly onto each image in a sequence, so you can watch the video and note the numbers instead of guessing. It's boring, and it saves you real time.

The author built it specifically as a pose-debugging aid - the pack's changelog mentions "Add a frame number overlay to batch outputs, helpful by pose debugging." But it works on any image sequence, not just pose renders. Put it after the estimator's pose_image output, or anywhere you're inspecting video frames.

The inputs

  • image - the frame sequence to stamp.
  • print_frame_numbers - master on/off switch for the overlay.
  • skip_first_frames - offset for the starting number. Set this when your sequence starts mid-video, so the stamps match the source timeline rather than the slice.
  • print_every_nth - increment step. 2 stamps every other frame, 1 every frame.
  • number_position - top-left, top-right, bottom-left, or bottom-right corner.
  • font_size (default 64) - text size; bump it for long sequences or low-res previews.
  • font_name (default DejaVuSansMono-Bold.ttf) - a .ttf font file. It searches your OS font directories for the name, or you can pass an absolute path to a font file. Monospace keeps the digits from jumping around as the count grows.
  • overlay_opacity (default 0.5) - transparency of the text.

Output is a single image output: the sequence with numbers burned in.

Honest expectations

This is a utility, not a fancy node - there's no background box, no custom color, no text shadow (at least, nothing promised in the schema). You get a number in a corner, and that's about it. For anything prettier you'd burn in your own text later; for the actual job of identifying frames while you debug poses, it's exactly right.

One tip from the field: if you're matching numbers against a video loader that counts from 1 instead of 0, set skip_first_frames to 1 and the stamps align with what you see in the player. And keep print_every_nth at 1 while debugging - skipping frames saves nothing perceptible and just makes the counting harder.

Installing it

Part of the DWposeDeluxe pack:

cd ComfyUI/custom_nodes/
git clone https://github.com/hobinrude/ComfyUI_DWposeDeluxe
cd ComfyUI_DWposeDeluxe
pip install -r requirements.txt

or search DWposeDeluxe in ComfyUI Manager. No models, no inference - it uses PIL to draw text, which the pack already pulls in via its dependencies. If the overlay doesn't appear, the usual culprit is font_name pointing at a font the pack can't find; give it an absolute path to a .ttf and it'll work.

CategoryDWposeDeluxe

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
print_frame_numbersBOOLEANtrue
skip_first_framesINT0
print_every_nthINT1
number_positionCOMBO4 options: top-left, top-right, bottom-left, bottom-right
font_sizeINT641–1024
font_nameSTRINGDejaVuSansMono-Bold.ttf
overlay_opacityFLOAT0.500–1

Outputs (1)

NameTypeDescription
IMAGEIMAGE