Nodes/ComfyUI's ControlNet Auxiliary Preprocessors/Fake Scribble Lines (aka scribble_hed)
ComfyUI Node Runs on cloud

Fake Scribble Lines (aka scribble_hed)

Turn a photo into a rough scribble for control_scribble

By Fannovel16·Created 3 years ago·Updated 4 months ago· 4,134
Fake Scribble Lines (aka scribble_hed)
  • image
  • IMAGE
safeenable
resolution512

"Fake" scribble because there's no human doing the scribbling. This node takes a real photo and reduces it to loose, rough, sketch-like lines - the kind of thing you'd draw if you were doodling the scene by hand - and hands that to a scribble ControlNet. It's the bridge between "I have a reference image" and "I want the loose, creative-freedom feel of scribble conditioning" without actually picking up a pen. Under the hood it's also known as scribble_hed, which tells you exactly how it works.

How it works

It runs HED edge detection, then simplifies and thins the result into scribble-style strokes. HED gives soft, forgiving edges; the extra step turns those into the sparse, rough lines a scribble ControlNet expects. The reason you'd want scribble over a precise edge map is control style: scribble is the most creative-friendly conditioning in the ControlNet toolbox - it sets the broad layout and lets the model fill in the details rather than tracing every contour. Fake Scribble gets you that loose guidance starting from a photo instead of a doodle.

The inputs and output

Two inputs matter:

  • image - your source photo.
  • resolution (default 512) - processing size; match it to your render.

Plus the toggle shared across the softedge-derived nodes:

  • safe (default enable) - safe mode, quantizing edge intensities so the ControlNet doesn't over-interpret faint gradients into stray lines. Leave it on for normal use.

The single output is an IMAGE - the fake-scribble map - which wires into a ControlNet Apply node with a scribble ControlNet (control_v11p_sd15_scribble or control_scribble). Nothing happens until that model is loaded.

Installing it

ComfyUI Manager: search ComfyUI's ControlNet Auxiliary Preprocessors, install, restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/Fannovel16/comfyui_controlnet_aux
pip install -r requirements.txt

Restart ComfyUI. Because it's HED-based, it downloads the ControlNetHED.pth weight from HuggingFace on first run.

Where people get burned

First, know your scribble family - this pack has several, and they're not interchangeable in feel. Fake Scribble (HED-based) tends to give soft, organic strokes. ScribblePreprocessor is the plainer, blockier base version. Scribble_XDoG_Preprocessor is a fast algorithmic filter with a threshold knob. Scribble_PiDiNet_Preprocessor is the PiDiNet-based cousin with cleaner lines. They all target the same scribble ControlNet, so try a couple and keep whichever roughness suits your image. Fake Scribble is a solid default when your source is a photo.

Second, and this is the one worth internalizing: scribble's real superpower is that you can skip the preprocessor entirely and feed the ControlNet your own rough drawing. Fake Scribble is for when you're starting from an existing image; if you've already got a sketch, wire it straight into the scribble ControlNet and you're done.

Third, the universal one: the scribble map is inert until you load a scribble ControlNet and pass it through a ControlNet Apply node. And don't cross the wires - a scribble map into a Canny or lineart model won't behave, because those expect a different kind of line.

CategoryControlNet Preprocessors/Line Extractors

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
safeoptCOMBOenable2 options: enable, disable
resolutionoptINT51264–16384

Outputs (1)

NameTypeDescription
IMAGEIMAGE