ComfyUI Node
🔍 Upscaler Advanced
📐 FiL Upscale Tile Calc — computes optimal tile grid layout for upscaling. Supports auto-profile and manual grid.
🔍 Upscaler Advanced
- image
- upscale_model
- latent
- image
- tiles
- upscale_by
- denoise
- tile_width
- tile_height
- mask_blur
- tile_padding
- overlap
- width
- height
- tile_cols
- tile_rows
- tile_count
- latent_w
- latent_h
- info
- warnings
- latent
- latent_tiles
- layout
◄upscale_factor2.00►
◄tile_size1024►
◄tile_overlap64►
◄auto_overlapfalse►
◄auto_modefalse►
◄auto_profileBalanced►
◄manual_tile_cols0►
◄manual_tile_rows0►
◄non_square_tilesfalse►
◄auto_fix_thin_edgesfalse►
Category🎨 FiL Design/Image
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| upscale_factor | FLOAT | 2.000.1–8 | Upscale multiplier. 2.0 = double the size. |
| tile_size | INT | 102464–2048 | Base tile size in pixels for tiled upscale. |
| tile_overlap | INT | 640–512 | Tile overlap in pixels. Higher = fewer seams, more VRAM. |
| auto_overlap | BOOLEAN | false | Ignore tile_overlap and derive it automatically from the tile size (~12.5%, min 32px) instead — keeps overlap proportional when you change tile_size. No effect when Full Auto is on (it already derives its own overlap). |
| auto_mode | BOOLEAN | false | Full Auto: automatically choose tile settings based on profile. |
| auto_profile | COMBO | Balanced | VRAM/quality profile for auto mode. |
| manual_tile_cols | INT | 00–64 | Force this many tile columns. 0 = compute from tile size. |
| manual_tile_rows | INT | 00–64 | Force this many tile rows. 0 = compute from tile size. |
| non_square_tiles | BOOLEAN | false | Enable non-square tiles with aspect-ratio awareness. |
| auto_fix_thin_edges | BOOLEAN | false | In Manual Tiles mode, shrink tile_size to the next standard size (1536/1024/768 → 512) instead of just warning when the grid would leave a thin edge tile. At 512 (smallest standard) it can't shrink further — the thin edge is then handled downstream by overlap/mask_blur. Does not affect an explicit manual column/row grid. |
| imageopt | IMAGE | Input image to analyze. Optional if latent is connected instead — at least one of image/latent is required; source dimensions come from whichever is connected. | |
| upscale_modelopt | UPSCALE_MODEL | Optional ESRGAN-style model. When connected, the image output is actually upscaled through it (then resized to the tile-aligned target). When left unconnected, image is passed through unchanged and this node is calculator-only. | |
| latentopt | LATENT | Optional latent to resize/tile alongside (or instead of) the image. When connected, the latent output is resized (bislerp) to the tile-aligned target and latent_tiles gets one crop per tile. Can stand in for image entirely — at least one of image/latent is required. |
Outputs (21)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | Actually upscaled when upscale_model is connected, otherwise the input image passed through unchanged. Empty placeholder when no image is connected (latent-only mode). |
| tiles | IMAGE | Batch of the actual cropped tile pieces (edge tiles shifted inward to stay full-size, no black padding). Empty placeholder when no image is connected (latent-only mode). |
| upscale_by | FLOAT | Actual upscale ratio. |
| denoise | FLOAT | Denoise hint. |
| tile_width | INT | Tile width. |
| tile_height | INT | Tile height. |
| mask_blur | INT | Mask blur radius. |
| tile_padding | INT | Tile padding. |
| overlap | FLOAT | Effective tile overlap in pixels (after clamping/auto-profile) — the average of the per-axis overlap, which can be a fractional pixel when axes differ (non_square_tiles). |
| width | INT | Output width. |
| height | INT | Output height. |
| tile_cols | INT | Tile columns. |
| tile_rows | INT | Tile rows. |
| tile_count | INT | Total tile count. |
| latent_w | INT | Latent width. |
| latent_h | INT | Latent height. |
| info | STRING | Info string. |
| warnings | STRING | Warnings string. |
| latent | LATENT | Input latent resized to the tile-aligned target (bislerp). Empty placeholder when no latent is connected. |
| latent_tiles | LATENT | Batch of latent crops, one per image tile (same grid/order as `tiles`). Empty placeholder when no latent is connected. |
| layout | FIL_TILE_LAYOUT | Tile-grid layout (exact per-tile positions) — wire into FiL Tile Assembly to recombine processed tiles. Always the real computed grid, independent of image/latent connection. |