Nodes/imgutils/Imgutils Restore (SCUNet)
ComfyUI Node

Imgutils Restore (SCUNet)

Denoise anime art with a real restorer

By xiaden·Created 2 months ago·Updated 2 months ago· 0
Imgutils Restore (SCUNet)
  • image
  • image
modeGAN
tile_size128

Grain, JPEG blockiness, scan noise, that faint "everything has a texture" fuzz on old sources - diffusion models won't fix it by re-rolling the seed, because the noise is in the pixels, not the prompt. Imgutils Restore (SCUNet) is a proper restoration network for exactly that job: it runs a trained denoiser over the image and hands back a cleaner version at the same resolution. It's part of the xiaden/comfyui-imgutils pack wrapping the deepghs/imgutils library.

SCUNet is a CNN for blind image restoration - "blind" meaning it doesn't need to be told what kind of noise it's removing; it figures out the degradation from the image itself. This node exposes two trained variants via the mode dropdown:

  • GAN (default) - trained adversarially. Perceptually sharper and more detailed, better at restoring texture, at the cost of occasionally inventing detail or plastic-looking output. This is the default and usually the right first pick for art.
  • PSNR - trained purely for pixel fidelity (higher PSNR = closer to ground truth). Cleaner, more conservative, slightly softer; better when you want the safest possible output - say, a source you can't afford to have embellished.

The other input is tile_size (default 128, range 64–512, step 64) - processing happens in tiles to bound VRAM. The tooltip says it plainly: larger = more VRAM. If you see tile seams, raise it; if you're on a tight GPU, keep it small. The single output is the restored image, same dimensions as the input - this node does not upscale.

Where it fits

Use it before an upscale pass: a clean input gives an upscaler much less artifact to amplify, and SCUNet is the right tool when the problem is noise rather than blur. Blur is NAFNet's job - that node is also in this pack, and the two are a natural stack (denoise, then deblur if needed, then upscale). One honest limit: a heavy, model-trained GAN mode can "clean" away fine detail you wanted - flat anime color survives fine, but delicate screentone or hatching can get smoothed into mush. If you see that, flip to PSNR mode rather than lowering tile size; that's the knob that trades detail for safety.

Install & gotchas

cd ComfyUI/custom_nodes/
git clone https://github.com/xiaden/comfyui-imgutils.git
cd comfyui-imgutils
pip install -r requirements.txt

Restart ComfyUI. Requires ComfyUI 0.25.0+ - the pack is written against the newer V3 node API, so older installs won't register it. SCUNet's weights download from HuggingFace Hub on first run into ~/.cache/huggingface/hub/; the first execution is slow and offline runs fail. As with the other image-to-image nodes here, it shows a live preview in the node, so you can A/B GAN vs PSNR before committing the whole workflow.

Categoryimgutils/restore

Inputs (3)

NameTypeDefaultDescription
imageIMAGEInput image to restore/denoise.
modeCOMBOGANSCUNet model variant: GAN or PSNR.
tile_sizeINT12864–512Processing tile size. Larger = more VRAM.

Outputs (1)

NameTypeDescription
imageIMAGE