AnyLine Lineart
The high-detail line extractor for MistoLine
- image
- image
AnyLine is the heavyweight of the line extractors in this pack - a TEED-based detector (from TheMistoAI) that pulls out remarkably detailed, clean line art that captures both bold structure and fine detail in one pass. It's the preprocessor built to pair with the MistoLine ControlNet, and when you want the most faithful line-based structure control you can get, this is the one to reach for. Notice its default resolution is 1280, not 512 like the rest of the pack - that's a deliberate signal that AnyLine is meant to run high-res and capture detail the lighter extractors miss.
Why it's different
Most line preprocessors specialize: Canny for hard edges, Anime Lineart for drawn content, realistic lineart for photos. AnyLine tries to be the general-purpose best-in-class extractor across content types, and it largely succeeds - it produces dense, coherent linework with fewer of the gaps and noise you get from single-method detectors. It can also merge its own TEED-based lines with a second lineart method, giving you a composite map that combines detail sources. That's the merge_with_lineart control, and it's the node's signature feature.
The inputs that matter
merge_with_lineart(defaultlineart_standard) - which secondary lineart to blend AnyLine's TEED output with. Options arelineart_standard,lineart_realistic,lineart_anime, andmanga_line. Pick the one matching your subject:lineart_realisticfor photos,lineart_animeormanga_linefor drawn content,lineart_standardas the neutral default.resolution(default 1280) - the high default is intentional. AnyLine shines at high resolution; dropping it to 512 throws away the detail that's the whole reason to use this node. Keep it high if your hardware allows.lineart_lower_bound/lineart_upper_bound(0 and 1) - clamp the intensity range of the extracted lines, useful for pushing faint lines up or trimming weak ones.object_min_size(default 36) andobject_connectivity(default 1) - a cleanup filter.object_min_sizedrops line clusters smaller than N pixels, which is how you kill speckle and orphan dots; raise it to declutter a busy map.
The output is a single image (IMAGE) feeding a ControlNet Apply node with a lineart ControlNet - MistoLine (mistoLine_fp16 / mistoLine_rank256) is the intended partner, though it also works with the standard anime/lineart models. The node makes the hint; the ControlNet is separate.
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. AnyLine downloads its TEED weights from HuggingFace on first run.
Where people get burned
First, don't lower the resolution out of habit. People drag this node in, see 1280, "fix" it to 512 to match their other preprocessors, and then wonder why AnyLine looks no better than plain lineart - you just threw away its advantage. Keep it high. Second, that high resolution plus a dense output means AnyLine is heavier and slower than the lighter extractors; if your VRAM or patience is tight, it's overkill for simple structure work where Standard Lineart would do. Third, the usual pairing rule: it's built for MistoLine, so for the best result load a MistoLine ControlNet, and match merge_with_lineart to your content type. And, as always, the extracted lines do nothing until a lineart ControlNet consumes them. When you actually need maximum line fidelity, though - detailed products, intricate scenes, faithful redraws - AnyLine is the one to beat.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| merge_with_lineartopt | COMBO | lineart_standard | 4 options: lineart_standard, lineart_realisitic, lineart_anime, manga_line |
| resolutionopt | INT | 128064–16384 | — |
| lineart_lower_boundopt | FLOAT | 0.000–1 | — |
| lineart_upper_boundopt | FLOAT | 1.000–1 | — |
| object_min_sizeopt | INT | 361–16384 | — |
| object_connectivityopt | INT | 11–16384 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |