Tulut Foot Detailer
The neglected end of the full-body render, fixed
- image
- model
- clip
- vae
- upscale_model
- IMAGE
- MODEL
- CLIP
- VAE
- UPSCALE_MODEL
Every anime model mangles faces and hands loudly, but feet fail quietly - and nobody has a dedicated fix for them, because almost nobody builds a foot detector. The Tulut Foot Detailer is the pack's quiet flex: a YOLO model trained to find feet, wrapped in the same crop-upscale-redraw-paste loop as its face and hand siblings. If your full-body shots keep ending with a pair of blurred blobs where shoes or feet should be, this is the node that gives that region its own pass.
How it works
Same engine as the rest of the pack. A YOLOv8 detector finds feet at 0.50 confidence, each box gets a 25% context padding crop, your upscale_model upscales it, it's resampled to guide_size (default 512), and a masked KSampler pass (dpmpp_2m_sde / sgm_uniform) re-renders at your denoise before a feathered asymmetric mask blends it back. The one thing that stands out is the detector itself: FootYolov8x_v20.pt is the x (extra-large) variant, the heaviest model in the pack. It's more accurate and slower, and there's no tuning knob for it - the node just uses it.
The inputs that matter
image,model,clip,vae,upscale_model- the render, your checkpoint trio, and a real upscaler (CUGAN or any ESRGAN-family model).prompt/neg_prompt- the redraw prompt. Say what the feet actually are - "black boots", "bare feet", "sneakers" - because the model has no idea what your character's footwear should be. The default empty string gets you a vague repair.denoise- default 0.5, matching the hand node. Feet are usually under what the base render resolved, so a heavyish redraw is the right starting point.guide_size- default 512. Plenty for a foot crop.steps/cfg/seed- sampler settings;character_indexpicks which detection (0 = all, left-to-right);lllite_nameoptional AnimaLLLite.
Outputs: the fixed IMAGE and pass-through MODEL, CLIP, VAE, UPSCALE_MODEL, so you can chain it after a face or person pass without reloading anything.
Install and setup
cd ComfyUI/custom_nodes
git clone https://github.com/Tulut114/tulut_comfyui_Gadget
Restart ComfyUI. Same pack-wide requirements: ultralytics and opencv-python are not in requirements.txt, so install them yourself or the detailers silently fail to register. The model must sit in ComfyUI/models/ultralytics/bbox/ named exactly FootYolov8x_v20.pt - the code looks up that literal filename, so if your file has a different name, rename it.
Troubleshooting
- Unchanged image, no error. The universal Tulut failure mode: missing or misnamed
.ptfile logs a warning and returns the original. Check the console and the bbox folder before blaming the settings. - The node is slow. The x-sized detector is the slowest in the pack, plus a full denoise pass on top of your base render. That's expected, not a bug - it's the price of a model built for small, fiddly targets.
- Feet turn into shoes or vice versa. The redraw is only as good as your prompt. If you want bare feet and the pass keeps drawing boots, say so explicitly and keep denoise from creeping too high.
- Nothing to detect. Feet tucked under a skirt or cropped out of frame produce no detections at all - a detector can only fix what it can see. The pack's Tulut YOLO Preview node will show you whether the box was ever found.
The honest take: this is a niche-of-a-niche node, and you'll know in about five minutes whether you need it. But if full-body anime is your genre, it's fixing the one region every other detailer ignores, and there's basically nothing else like it floating around.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| model | MODEL | — | |
| clip | CLIP | — | |
| vae | VAE | — | |
| upscale_model | UPSCALE_MODEL | — | |
| lllite_name | COMBO | 1 options: none | |
| prompt | STRING | — | |
| neg_prompt | STRING | — | |
| guide_size | INT | 512256–1024 | — |
| steps | INT | 351–100 | — |
| cfg | FLOAT | 4.51–12 | — |
| denoise | FLOAT | 0.500.01–1 | — |
| character_index | INT | 00–10 | — |
| seed | INT | 00–18446744073709550000 | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |
| MODEL | MODEL | — |
| CLIP | CLIP | — |
| VAE | VAE | — |
| UPSCALE_MODEL | UPSCALE_MODEL | — |