Nodes/DJZ-Nodes/Image Interleaved Upscaler V2
ComfyUI Node

Image Interleaved Upscaler V2

The interlace trick, but with a real upscale model behind it

By MushroomFleet·Created 2 years ago·Updated 5 months ago· 78
Image Interleaved Upscaler V2
  • image
  • upscale_model
  • IMAGE
field_ordertop_first
blend_factor0.25
field_strength1.0
tile_size512
tile_overlap32
edge_enhancement0.0

ImageInterleavedUpscaler V1 does the interlace field trick with plain interpolation, which means it adds no real detail. V2 fixes that: it runs an actual upscale model through the same field-based processing. You feed it any ComfyUI-compatible upscale model - 4x-UltraSharp, Remacri, whatever you have in models/upscale_models - and it applies the interlace-and-blend treatment on top of genuinely generated pixels. Same family, entirely different league. This is the one you'd actually reach for.

What you need before it works

The upscale_model input is a required UPSCALE_MODEL socket, so you must wire in a model from a Load Upscale Model node. Point that loader at a .pt/.pth in your upscale_models folder - the 4x ESRGAN family (4x-UltraSharp is the community default, Remacri for cleaner edges) are the safe picks. No model connected, no run; the node isn't hiding a model file somewhere, it uses yours. Everything else mirrors V1: field_order, blend_factor (default 0.25), field_strength (default 1) control the interlace character, and edge_enhancement (default 0) adds Sobel sharpening on top.

How it works

The node upscales with your model through comfy.utils.tiled_scale - proper tiling with an OOM fallback that halves the tile size and retries when you run out of VRAM - then splits the result into even/odd fields, blends them, and recombines. The tiling means large images work on modest GPUs; the automatic tile-shrink-on-OOM is genuinely well done and worth knowing about if you're on 6–8GB.

Optional controls that matter for big jobs:

  • tile_size (128–1024, default 512) - larger tiles are faster but hungrier; the node shrinks them automatically on OOM, so this is more "tune for speed" than "tune to survive."
  • tile_overlap (16–256, default 32) - overlap between tiles; bump it up if you see seams in the tiled output.

Output is a single IMAGE at model scale.

The honest take

This node sits at a genuinely useful intersection. Pure model upscaling is better at raw detail, and plain interlacing is cheaper - V2 combines the model's detail with a scanline character you can dial with field_strength. That combination is valuable for exactly one main job: giving video frames (or SD-origin stills) a textured, broadcast-interlace feel while still adding real resolution. It's also a clean way to get model upscaling with tiling on low VRAM without pulling in a separate tiling suite.

Two cautions. First, the interlace effect only makes sense if you want that look - at blend_factor 0.25 and field_strength 1 it's subtle, but if you're doing a normal clean upscale, a plain Image Upscale + model node is simpler. Second, the model choice does the heavy lifting: pair it with a mediocre upscaler and the interlace won't save you. Model quality first, interlace character second. For the "crisp, slightly broadcast-y upscale" niche, this is one of the best options in the pack.

Categoryimage/upscaling

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
upscale_modelUPSCALE_MODEL
field_orderCOMBOtop_first2 options: top_first, bottom_first
blend_factorFLOAT0.250–1
field_strengthFLOAT1.00–2
tile_sizeoptINT512128–1024
tile_overlapoptINT3216–256
edge_enhancementoptFLOAT0.00–1

Outputs (1)

NameTypeDescription
IMAGEIMAGE