ComfyUI Node
Person Detailer ControlNet
Per-person face/body detailing with integrated Z-Image ControlNet Union. Automatically loads the ControlNet Union model patch and generates DWPose and/or DepthAnythingV2 maps from each person crop. Select a model patch from models/model_patches/ — the Union model handles depth, pose, canny, and inpainting through one model. When model_patch is 'None', behaves identically to Person Detailer. All features from Person Detailer are available: per-slot LoRA, prompt, Detail Daemon, multi-round latent cycling, Z-Image Turbo auto-conversion.
Person Detailer ControlNet
- images
- person_data
- model
- clip
- vae
- positive_base
- negative
- dd_options
- inpaint_options
- images
- refined
- refined_references
- refined_generic
◄seed0►
◄steps4►
◄denoise0.52►
◄sampler_name▾►
◄scheduler▾►
◄detail_daemon_enabledtrue►
◄detail_amount0.20►
◄dd_smoothtrue►
◄mask_blend_pixels32►
◄mask_expand_pixels0►
◄target_width800►
◄target_height1200►
◄controlnet_enabledtrue►
◄model_patch▾►
◄control_typedepth►
◄control_strength0.30►
◄cn_resolution512►
◄depth_modeldepth_anything_v2_vitl.pth►
◄reference_1_enabledtrue►
◄reference_1_lora▾►
◄reference_1_lora_strength1.00►
◄reference_1_prompt►
◄reference_2_enabledfalse►
◄reference_2_lora▾►
◄reference_2_lora_strength1.00►
◄reference_2_prompt►
◄reference_3_enabledfalse►
◄reference_3_lora▾►
◄reference_3_lora_strength1.00►
◄reference_3_prompt►
◄reference_4_enabledfalse►
◄reference_4_lora▾►
◄reference_4_lora_strength1.00►
◄reference_4_prompt►
◄reference_5_enabledfalse►
◄reference_5_lora▾►
◄reference_5_lora_strength1.00►
◄reference_5_prompt►
◄generic_enabledfalse►
◄generic_catch_unprocessedtrue►
◄generic_lora▾►
◄generic_lora_strength1.00►
◄generic_prompt►
CategoryFVM Tools/Face
Inputs (52)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | Input image batch [B, H, W, C] | |
| person_data | PERSON_DATA | Person data from Person Selector Multi node | |
| model | MODEL | Base model (Z-Image Turbo or other) | |
| clip | CLIP | CLIP model for prompt encoding | |
| vae | VAE | VAE for encode/decode (also used to encode control images for the model patch) | |
| seed | INT | 00–18446744073709550000 | — |
| steps | INT | 41–100 | — |
| denoise | FLOAT | 0.520–1 | — |
| sampler_name | COMBO | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 | |
| scheduler | COMBO | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 | |
| detail_daemon_enabled | BOOLEAN | true | — |
| detail_amount | FLOAT | 0.20-5–5 | — |
| dd_smooth | BOOLEAN | true | — |
| mask_blend_pixels | INT | 320–128 | — |
| mask_expand_pixels | INT | 00–64 | — |
| target_width | INT | 80064–4096 | — |
| target_height | INT | 120064–4096 | — |
| controlnet_enabled | BOOLEAN | true | Enable/disable ControlNet guidance. When off, behaves like Person Detailer. |
| model_patch | COMBO | Z-Image ControlNet Union model patch from models/model_patches/. | |
| control_type | COMBO | depth | Which control signal to generate from each crop: depth — structural depth guidance (DepthAnythingV2) pose — skeletal pose guidance (DWPose) depth+pose — both applied as separate patches |
| control_strength | FLOAT | 0.300–2 | ControlNet Union strength. 0 = disabled. |
| cn_resolution | INT | 51264–2048 | Resolution for DWPose/DepthAnything preprocessors |
| depth_model | COMBO | depth_anything_v2_vitl.pth | DepthAnythingV2 checkpoint (vitl=balanced, vitg=best, vits=fastest) |
| reference_1_enabled | BOOLEAN | true | Enable reference slot 1 for detailing |
| reference_1_lora | COMBO | LoRA to apply when detailing reference 1 | |
| reference_1_lora_strength | FLOAT | 1.000–2 | LoRA strength for reference 1 |
| reference_1_prompt | STRING | Positive prompt for reference 1. If empty, uses base conditioning. | |
| reference_2_enabled | BOOLEAN | false | Enable reference slot 2 for detailing |
| reference_2_lora | COMBO | LoRA to apply when detailing reference 2 | |
| reference_2_lora_strength | FLOAT | 1.000–2 | LoRA strength for reference 2 |
| reference_2_prompt | STRING | Positive prompt for reference 2. If empty, uses base conditioning. | |
| reference_3_enabled | BOOLEAN | false | Enable reference slot 3 for detailing |
| reference_3_lora | COMBO | LoRA to apply when detailing reference 3 | |
| reference_3_lora_strength | FLOAT | 1.000–2 | LoRA strength for reference 3 |
| reference_3_prompt | STRING | Positive prompt for reference 3. If empty, uses base conditioning. | |
| reference_4_enabled | BOOLEAN | false | Enable reference slot 4 for detailing |
| reference_4_lora | COMBO | LoRA to apply when detailing reference 4 | |
| reference_4_lora_strength | FLOAT | 1.000–2 | LoRA strength for reference 4 |
| reference_4_prompt | STRING | Positive prompt for reference 4. If empty, uses base conditioning. | |
| reference_5_enabled | BOOLEAN | false | Enable reference slot 5 for detailing |
| reference_5_lora | COMBO | LoRA to apply when detailing reference 5 | |
| reference_5_lora_strength | FLOAT | 1.000–2 | LoRA strength for reference 5 |
| reference_5_prompt | STRING | Positive prompt for reference 5. If empty, uses base conditioning. | |
| generic_enabled | BOOLEAN | false | Enable detailing for unmatched faces |
| generic_catch_unprocessed | BOOLEAN | true | ON: detail all faces not processed by active slots. OFF: only truly unmatched faces. |
| generic_lora | COMBO | LoRA for unmatched faces | |
| generic_lora_strength | FLOAT | 1.000–2 | LoRA strength for unmatched faces |
| generic_prompt | STRING | Positive prompt for unmatched faces. | |
| positive_baseopt | CONDITIONING | Base positive conditioning | |
| negativeopt | CONDITIONING | Negative conditioning | |
| dd_optionsopt | DD_OPTIONS | Advanced Detail Daemon parameters | |
| inpaint_optionsopt | INPAINT_OPTIONS | Advanced inpaint settings |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| refined | IMAGE | — |
| refined_references | IMAGE | — |
| refined_generic | IMAGE | — |