- image
- image
Upscaling anime is a different sport from upscaling photos. Generic ESRGAN variants sharpen photo textures and make clean illustration look crunchy; what anime wants is a model that respects linework and flat color. Imgutils Upscale (CDC) is exactly that - the imgutils pack calls it "high quality anime upscaling," and it earns the "slow but excellent" tag in the same breath. CDC is a CNN upscaler in the ESRGAN lineage, trained for anime and illustration, and it's the node anime folks in this pack reach for when line fidelity matters.
Where it fits
The KB's upscaling doc splits the word "upscale" into three jobs, and this is the "more pixels" job: the detail is already in the source, you just need it bigger without inventing garbage. That's the honest, conservative rung of upscaling - no hallucinated detail, no faces conjured out of a blur. CDC is your quality pick on that rung for anime: crisper lines and cleaner flat regions than the generic RealESRGAN_x4plus_anime_6B that ships everywhere, which is what most people silently default to.
How it works
It's a wrapper around upscale_with_cdc from imgutils. The model runs on tiles, which is the key knob:
tile_size(INT, default 512, 128–1024, step 64) - the size of the processing tiles. Bigger tiles = faster wall-clock and better global consistency, but more VRAM; smaller tiles = lower VRAM but slower, and a slightly higher risk of visible seams at tile boundaries.
Output is a single upscaled image.
Honest take
The one true statement about this node is its name-sake tradeoff: it is slow. If you're upscaling a batch of a hundred images, this will test your patience, and that's the intended honest framing from the README. Two practical moves: keep tile_size at 512 unless you hit OOM (then drop it), and consider feeding it through Imgutils Align first - capping the longest side before CDC keeps the tile count sane on huge sources and cuts runtime dramatically without hurting quality much.
And don't mis-buy it: CDC adds pixels, it doesn't restore or invent. If your source is damaged and you want a model to repair it, you want a restoration pass (the pack's SCUNet/NAFNet restore nodes) or a generative upscaler like SUPIR/SeedVR2-class - the KB's upscaling doc calls out that those invent detail by design, which is sometimes the job and sometimes exactly wrong for clean anime.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/xiaden/comfyui-imgutils.git
cd comfyui-imgutils
pip install -r requirements.txt
Or via ComfyUI Manager (search "imgutils"). Needs ComfyUI >= 0.25.0 and Python >= 3.10; dependency is dghs-imgutils[gpu]. The CDC weights download from HuggingFace Hub on first use and cache in ~/.cache/huggingface/hub/ - expect a real download and a chunk of disk before the first run finishes.
Troubleshooting
Out of memory at 512? Drop tile_size to 256 or 128 - that's exactly what the knob is for. Seams on large images? Usually a too-small tile; raise it if VRAM allows. First run hangs on a blank screen for a while? Model download. And if the upscale looks worse than the source - blurrier, not sharper - you've probably fed it an already-upscaled or heavily compressed image; CDC (like all "more pixels" models) can't fix a mushy source, it just enlarges it.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Input image to upscale. | |
| tile_size | INT | 512128–1024 | Processing tile size. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |