Files
DemonGatanjieu-Anomalous_Mo…/api/blocks/control_pose.json
T
DemonGatanjieuandClaude Opus 5.5 0ea99a10f1 Ways by use: the AI names a use, Anomalous picks the block
The 18 blocks are grouped into 7 uses (a block's "job": repaint,
new_background, upscale, refine, follow, detail, process); a block that is
not its use's default has a "want" word (best, 2x, pose, ...).
add_nodes(use=…, want=…) has reference_blocks.pick choose the first by rank
this ComfyUI can run (packs and models present, not turned off), the block
taking a second picture when one is given; block= by name still works.
begin_task's directory is a line a use with its wants, the rest by what it
needs ("LanPaint: repaint best"), so it no longer grows with the blocks and
the word budget tiers are gone. Tried live: use=new_background with two
pictures built place_in_scene.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 00:09:49 +08:00

174 lines
5.1 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"job": "follow",
"want": "pose",
"rank": 1,
"short": "its pose",
"title": {
"zh": "照着姿势画",
"en": "Follow a pose"
},
"about": {
"zh": "你递给 AI 一张图,AMB 读出人物姿势(DWPose),用和你底模对得上的控制网让新图摆出这个姿势。 DWPose 认二次元人物也准,连脸和手指都标;人物挤成一团、画风很浓的图可能认不出,这时用「照着构图画」。 画布上是 Anima 模型时,自动改用 Anima 专用的 LLLite 控制网(需要 ComfyUI-Anima-LLLite)。",
"en": "From a picture you hand the AI, Anomalous reads the pose (DWPose) and steers the picture with a ControlNet that fits your model. DWPose reads anime characters too, face and fingers included; a crowded or very stylised picture may come out empty, then use Follow a layout. On an Anima model it uses an Anima ControlNet-LLLite instead (needs ComfyUI-Anima-LLLite)."
},
"source": {
"zh": "参考工作流的「底图控制网」组",
"en": "The reference workflow's ControlNet group"
},
"packs": {
"DWPreprocessor": "comfyui_controlnet_aux"
},
"takes": "reference",
"control": "pose",
"nodes": {
"reference": {
"class_type": "LoadImage",
"inputs": {
"image": "$image"
}
},
"pose": {
"class_type": "DWPreprocessor",
"inputs": {
"image": [
"reference",
0
],
"detect_hand": "enable",
"detect_body": "enable",
"detect_face": "enable",
"resolution": 1024,
"bbox_detector": "yolox_l.torchscript.pt",
"pose_estimator": "dw-ll_ucoco_384_bs5.torchscript.pt",
"scale_stick_for_xinsr_cn": "disable"
}
},
"controlnet": {
"class_type": "ControlNetLoader",
"inputs": {
"control_net_name": "$controlnet"
}
},
"steer": {
"class_type": "ControlNetApplyAdvanced",
"inputs": {
"positive": [
"$sampler.positive",
"*"
],
"negative": [
"$sampler.negative",
"*"
],
"control_net": [
"controlnet",
0
],
"image": [
"pose",
0
],
"vae": [
"$decode.vae",
"*"
],
"strength": 0.8,
"start_percent": 0.0,
"end_percent": 0.8
},
"wire_to": "$sampler"
},
"look": {
"class_type": "PreviewImage",
"inputs": {
"images": [
"pose",
0
]
}
}
},
"after": "run_workflow: the picture now takes that pose (strength 0.8, for the first 80% of the steps; lower either for a looser pose). The prompt still says who and what: change it if it fights the pose. Its pose skeleton is among the run's previews: if it is empty or wrong (a crowded or very stylised picture), try control_depth.",
"variants": {
"anima": {
"packs": {
"DWPreprocessor": "comfyui_controlnet_aux",
"AnimaLLLiteApply_sdscripts": "ComfyUI-Anima-LLLite"
},
"control": null,
"lllite": "pose",
"nodes": {
"reference": {
"class_type": "LoadImage",
"inputs": {
"image": "$image"
}
},
"pose": {
"class_type": "DWPreprocessor",
"inputs": {
"image": [
"reference",
0
],
"detect_hand": "enable",
"detect_body": "enable",
"detect_face": "enable",
"resolution": 1024,
"bbox_detector": "yolox_l.torchscript.pt",
"pose_estimator": "dw-ll_ucoco_384_bs5.torchscript.pt",
"scale_stick_for_xinsr_cn": "disable"
}
},
"steer": {
"class_type": "AnimaLLLiteApply_sdscripts",
"inputs": {
"model": [
"$sampler.model",
"*"
],
"lllite_name": "$lllite",
"image": [
"pose",
0
],
"strength": 1.0,
"start_percent": 0.0,
"end_percent": 1.0,
"preserve_wrapper": true
},
"wire_to": "$sampler"
},
"look": {
"class_type": "PreviewImage",
"inputs": {
"images": [
"pose",
0
]
}
}
},
"after": "On this Anima model an Anima ControlNet-LLLite steers it, more gently than an SDXL ControlNet: say in the prompt what the picture shows (how many people, what they do), or the prompt wins. Strength 1.0 for all the steps; up to 1.5 holds it closer. run_workflow. Its pose skeleton is among the run's previews: if it is empty or wrong (a crowded or very stylised picture), try control_depth."
}
},
"models": [
"noob_openpose",
"thibauld_openpose_sdxl",
"union_promax_sdxl",
"anima_lllite_pose"
],
"tested": {
"gpu": "RTX 4050 Laptop",
"vram_gb": 6,
"date": "2026-10-27",
"runs": [
{
"model": "SDXL (Illustrious)",
"size": "832×1216",
"seconds": 64
}
]
}
}