- tags_from_picture: WD14 tagger (the source's model and thresholds) on a picture the user handed; run_status now carries what nodes showed as words (texts: a tagger's tags), with a summary and next step for a run that made words but no pictures. - Optional nodes: a block node marked optional goes when its pack is missing, and a link "match|decode" takes the first one there. The four upscales end in KJNodes' ColorMatch (mkl, the source's) when it is installed; the panel says "better with" it otherwise. - LanPaint's next step keeps the prompt about the whole picture; Follow a pose says OpenPose misreads anime (use control_depth), as the source's author did. - The directory has a size cap: past it, block names alone, so collected ways never make begin_task long; shorter headings and few-word lines. Live-tested on the isolated 8199 ComfyUI: LanPaint (area changed 14.6, outside 0.0, 82 s), tiled 2x (167 s), depth ControlNet (follows the layout), OpenPose (misreads an anime picture), background removal (8 s), tags (166 s with the model download), upscale with ColorMatch (73 s). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
78 lines
1.9 KiB
JSON
78 lines
1.9 KiB
JSON
{
|
|
"job": "follow",
|
|
"rank": 2,
|
|
"short": "its layout",
|
|
"title": {
|
|
"zh": "照着构图画",
|
|
"en": "Follow a layout"
|
|
},
|
|
"about": {
|
|
"zh": "你递给 AI 一张图,AMB 读出远近和形状(深度图),让新图保持这个构图。",
|
|
"en": "From a picture you hand the AI, Anomalous reads its depth and keeps that layout and those shapes."
|
|
},
|
|
"source": {
|
|
"zh": "参考工作流的「底图控制网」组(作者默认用深度)",
|
|
"en": "The reference workflow's ControlNet group (depth, its default)"
|
|
},
|
|
"packs": {
|
|
"DepthAnythingV2Preprocessor": "comfyui_controlnet_aux"
|
|
},
|
|
"takes": "reference",
|
|
"control": "depth",
|
|
"nodes": {
|
|
"reference": {
|
|
"class_type": "LoadImage",
|
|
"inputs": {
|
|
"image": "$image"
|
|
}
|
|
},
|
|
"depth": {
|
|
"class_type": "DepthAnythingV2Preprocessor",
|
|
"inputs": {
|
|
"image": [
|
|
"reference",
|
|
0
|
|
],
|
|
"ckpt_name": "depth_anything_v2_vitl.pth",
|
|
"resolution": 1024
|
|
}
|
|
},
|
|
"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": [
|
|
"depth",
|
|
0
|
|
],
|
|
"vae": [
|
|
"$decode.vae",
|
|
"*"
|
|
],
|
|
"strength": 0.7,
|
|
"start_percent": 0.0,
|
|
"end_percent": 0.7
|
|
},
|
|
"wire_to": "$sampler"
|
|
}
|
|
},
|
|
"after": "run_workflow: the picture now keeps that layout (strength 0.7, for the first 70% of the steps; lower either to let the model change more). The prompt still says what is drawn."
|
|
}
|