Fooocus Controlnet
The 'user-friendly' ControlNets, renamed and exposed
- pipe
- image
- pipe
- image
Fooocus marketed these as "User-friendly ControlNets" - fancy menu items on its Image Prompt tab that let you trace an image's structure without learning what a ControlNet is. They're ControlNets. This node unpacks two of them, PyraCanny and CPDS, so you can use them inside the pack's pipe. If you've ever wanted "make my sketch into a photo" or "keep this composition, change the content", this is the node.
The two condition types
- PyraCanny - edge control. Canny edge detection at multiple scales (the "Pyra" is for pyramidal), so the model sees clean structural lines to respect. Think: sketches, line art, architectural shapes, anything where edges are the layout.
- CPDS - that's the "Canny-Pyra-Depth-Structure" family's friendlier entry: depth-based structural conditioning. It guides the model to respect the spatial arrangement of the reference - closer stuff stays in front, farther stuff behind - which is what you want when the composition matters more than the edges.
Both come with preprocessing folded in, which is the whole "user-friendly" pitch: you don't need the ControlNet Aux preprocessors pack for these two. skip_cn_preprocess exists if you want to feed a pre-made map yourself.
The knobs
- pipe - the pipeline from the Loader/PreKSampler chain. Required.
- image - the reference image whose structure gets extracted.
- cn_type - PyraCanny or CPDS.
- cn_weight - 0.0–2.0, default 1.0. How hard the structure pushes. The classic ControlNet advice applies: 0.3–0.7 for loose guidance, 0.8–1.2 for strict adherence. This is the dial you'll actually touch.
- cn_stop - default 0.5. When the condition stops applying, as a fraction of the denoising. The community's standing tip: release the condition once composition has formed, or the model leans on it for detail it should invent. 0.5 is a sensible default; raise it if structure keeps drifting.
Outputs: pipe and image - the pipe carries on, and the image output is the (preprocessed or original) reference, handy if you want to preview what the ControlNet sees.
Installing
Pack install, standard: ComfyUI Manager → "Fooocus Nodes", or clone the repo. This one has a real dependency to know about: the ControlNet models themselves need to be present in your ComfyUI models folder, the same SDXL ControlNet files you'd use anywhere. They're not auto-downloaded. If the node errors on load, that's the missing piece.
The honest take
PyraCanny and CPDS are 2023-era SDXL ControlNets, and they're fine at what they do - but this node's real value is how little setup it needs. If you're already fluent with the full ControlNet ecosystem, you'll outgrow it quickly. If you just want "draw a rough shape, get a real image" without learning preprocessor stacks, it's exactly the right amount of node.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| pipe | PIPE_LINE | — | |
| image | IMAGE | — | |
| cn_type | COMBO | PyraCanny | 2 options: PyraCanny, CPDS |
| cn_stop | FLOAT | 0.500–1 | — |
| cn_weight | FLOAT | 1.000–2 | — |
| skip_cn_preprocess | BOOLEAN | false | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| pipe | PIPE_LINE | — |
| image | IMAGE | — |