2026-03-02 02:48:58 -08:00
2026-03-01 15:24:08 -08:00
2026-02-27 12:58:36 -08:00
2026-02-27 12:57:37 -08:00
2026-02-27 12:57:37 -08:00
2026-03-01 15:20:01 -08:00
2026-03-02 02:48:58 -08:00

ComfyUI SeedVR2 Tiler

SeedVR2 Tiler Workflow

A ComfyUI custom node pack for tiling large images through SeedVR2 with overlap blending. Allows SeedVR2 to upscale images of any size by splitting them into tiles, processing each tile, and seamlessly stitching them back together.

Nodes

SeedVR2 Tile Splitter

Splits an image into a batch of overlapping tiles sized for SeedVR2's resolution constraints.

Inputs

  • image — source image
  • tile_size_mp — maximum tile size in megapixels (default 1.0). Lower = less VRAM per pass
  • tile_upscale_mp — target resolution for SeedVR2 to upscale each tile to, in megapixels
  • overlap_fraction — overlap between adjacent tiles as a fraction of tile size (default 0.1)
  • feather_blend — blend width for overlap stitching (0–1)

Outputs

  • tiles — IMAGE batch ready for SeedVR2
  • tile_metadata — internal metadata needed by the Stitcher
  • resolution — INT hint to wire into SeedVR2's resolution input

SeedVR2 Tile Splitter (Longest Edge)

Same as the standard Tile Splitter but lets you specify your desired output size as a maximum longest edge in pixels. The resolution hint is computed automatically from your image's actual tile dimensions so it stays accurate regardless of tile count.

Inputs

  • image — source image
  • tile_size_mp — maximum tile size in megapixels. Lower = less VRAM per pass
  • longest_edge_px — desired pixel length of the longest edge in the final stitched output
  • overlap_percent — overlap between adjacent tiles as a percentage (default 10)
  • feather_blend — blend width for overlap stitching (0–1)

SeedVR2 Tile Splitter (Shortest Edge)

Same as the standard Tile Splitter but lets you specify your desired output size as a minimum shortest edge in pixels.

Inputs

  • image — source image
  • tile_size_mp — maximum tile size in megapixels. Lower = less VRAM per pass
  • shortest_edge_px — desired pixel length of the shortest edge in the final stitched output
  • overlap_percent — overlap between adjacent tiles as a percentage (default 10)
  • feather_blend — blend width for overlap stitching (0–1)

SeedVR2 Tile Splitter (Upscale Factor)

Same as the standard Tile Splitter but lets you specify a simple upscale multiplier instead of megapixels. 2.0 = double the width and height of the final output.

Inputs

  • image — source image
  • tile_size_mp — maximum tile size in megapixels. Lower = less VRAM per pass
  • upscale_factor — upscale multiplier (e.g. 2.0 = 2× output, 1.5 = 1.5× output)
  • overlap_percent — overlap between adjacent tiles as a percentage (default 10)
  • feather_blend — blend width for overlap stitching (0–1)

SeedVR2 Tile Stitcher

Reassembles the upscaled tile batch back into a single image using feathered blending over the overlap regions. The output is resized to preserve the exact aspect ratio of the original image.

Inputs

  • upscaled_tiles — IMAGE batch from SeedVR2
  • tile_metadata — from the Splitter

Outputs

  • image — final stitched image at the correct aspect ratio

Workflow

Load Image → Tile Splitter → tiles ──────────────────→ SeedVR2
                           → tile_metadata ───────────→ Tile Stitcher
                           → resolution ─────────────→ SeedVR2
                                            SeedVR2 → Tile Stitcher → Save Image
Workflow
  • Connect resolution to resolution and set max_resolution to 0. You can set a max resolution to further prevent OOM, but the nodes should help do this regardless

For multi-pass upscaling, run the pipeline multiple times feeding the output back as input. Each pass progressively increases resolution.


Installation

Via ComfyUI Manager

Search for SeedVR2 Tiler in the ComfyUI Manager node list.

Manual

cd ComfyUI/custom_nodes
git clone https://github.com/BacoHubo/ComfyUI_SeedVR2_Tiler

No additional dependencies — uses only PyTorch and standard ComfyUI libraries.


Requirements

  • ComfyUI
  • SeedVR2 custom node installed separately
  • PyTorch (included with ComfyUI)

Notes

  • tile_size_mp of 0.5–1.0 works well for most 8GB VRAM GPUs
  • For poor quality source images, setting tile_upscale_mp close to tile_size_mp causes SeedVR2 to behave more as a restorer than an upscaler, often producing better results
  • Multi-pass upscaling works well — each pass feeds back into the Splitter as the new source image

Support

If you find this useful, consider buying me a coffee!

ko-fi


Development

This node pack was developed with the assistance of Claude (Anthropic). The architecture, design decisions, and testing were directed by the author; the code was written collaboratively with AI. Shared here in the spirit of transparency.


Acknowledgements

Inspired by tiling approaches in the ComfyUI community, including Moonwhaler and the Steudio upscaling workflow. SeedVR2 itself is by TencentARC — this node pack just makes it easier to use on larger images.

S
Description
No description provided
Readme MIT
3.6 MiB
Languages
Python 100%