ControlNet Preprocess SoftEdge
The Forgiving ControlNet Preprocessor
- image
- image
Not every reference image has crisp, well-defined edges - and Canny will punish you for it with a messy map and a generation that follows the mess. SoftEdge (formerly HED) is the forgiving alternative: it produces gradient edges with varying thickness instead of hard lines, so organic subjects, hair, fur, and soft lighting all survive the extraction without turning into garbage. Runware_controlnet_preprocess_softedge runs that extraction on Runware's cloud - image in, soft edge map out as an IMAGE, no local HED/softedge weights to install.
How it works
Where Canny finds thin, hard edges and lineart produces clean outlines, SoftEdge captures edges as soft gradients - it encodes where boundaries are without insisting on a single pixel width. That makes it the preprocessor of choice for anything organic or softly lit, because the map retains the structure without over-committing to exact edge placement. The KB's controlnet essay sums it up: more forgiving than Canny, doesn't require perfect edge detection, good for organic subjects. The generation inherits the composition while staying free to render edges its own way.
The inputs
- image (required) - the source whose structure you want to keep.
- outputFormat (JPG/PNG/WEBP) and ttl (toggle + value) - delivery details.
Output is image - the soft edge map. A soft, gradient-looking map is correct; don't compare it to Canny's and assume it failed.
Wiring it up
The canonical chain: this node → RunwareBuild_controlNet (guideImage) → an image model's controlNet socket. Because the condition is softer than hard-edge control, it tolerates (and benefits from) a moderate weight - you're steering composition, not locking every pixel. For portraits, animals, and anything with a natural gradient feel, this is the preprocessor that keeps structure without the "traced" look.
Install and setup
Standard for the pack: ComfyUI Manager → "Runware" → install → restart, or clone and pip install -r ComfyUI-Runware/requirements.txt (runware-sdk, pillow, soundfile). API key via Settings → Runware API key, RUNWARE_API_KEY, or runware auth login, funded credits - the ~$20 minimum top-up with a card on file being the standing entry friction.
Troubleshooting
- Output ignores the map - raise
weightin the builder, and confirm the map feeds itsguideImage, not the model node directly. - Map is mush - SoftEdge on a hard-edged, mechanical subject can feel weak; for architecture and clean contours, Canny or lineart genuinely does better. Match the preprocessor to the subject.
- Generation looks traced despite soft edges - weight too high for a gradient condition. Ease off; soft control is meant to be soft.
SoftEdge is the "I have a reference but it's not perfect" preprocessor. If your source image is soft, organic, or just too messy for Canny, it's the difference between a map that helps and a map that fights.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | JPG | File format for the generated image. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |