TBG ETUR Upscaler and Tile Generator CE
Upscaler and Tile Generator CE
- image
- Segment_Mask
- TBG_Pipe
- Upscaled Image
Every TBG ETUR workflow starts here. The Upscaler and Tile Generator CE is the free, no-Patreon entry point: you feed it an image, it upscales it, splits it into overlapping tiles, optionally writes a per-tile prompt for every tile using a vision-language model, and bundles the whole thing into the TBG_Pipe that the Refiner consumes. It's the "CE" (Community Edition) node, and it's the one the README says is "free and standalone, suitable for any type of workflow." If you want to kick the tires on this pack before committing to a membership, this is where you do it.
The pack itself is by TBG (Tobias Laarmann, TBG______ on Reddit), a tiled upscaling suite that's still in beta and updated almost daily. The CE tiler is genuinely useful on its own, but its real job is feeding the Refiner.
How it works
Conceptually it's a Tiled Diffusion pipeline: upscale the image, cut it into tiles with overlap, refine each tile with a diffusion pass, stitch back. What TBG adds is structure. The node packages upscaled image, tiles, masks, and prompts into a typed TBG_Pipe object, so downstream nodes - the Refiner and the Tile Overrides node - all agree on what's in the pipeline. That's why the graph reads as a straight line: Tiler → (optional per-tile edits) → Refiner → image out.
Tiles are composited with "Soft Merge," a feathered blending strategy the README calls quick and solid, best at low denoise, but limited in how high you can push the upscale factor. The Feather Mask (16) is the gradient that smooths tile borders in that final composite; Fusion Reference Margin (0) is extra reference border kept around each tile and cropped off at stitch time.
Inputs that matter
Only image is required, but a few others earn their keep:
- tile_size (1024) - bigger tiles mean fewer seams and more VRAM per tile. 1024 is a sane default for SDXL-era models; drop it on a small card.
- upscale_model - defaults to "NONE," which means the node just rescales. Pick a real model from your
upscale_modelsfolder (4x-UltraSharp, Remacri, RealESRGAN_x4plus - the README lists the usual suspects) for a proper ESRGAN-style pass first. On a clean source, honestly, the KB's advice stands: a 4x ESRGAN model is still the right cheap tool. - upscale_by (2.0) - the target scale. 2x is the sweet spot; going straight to 4x on a noisy source will give you mush.
- Optimize_Upscale_Factor_For_Tile_Use - keeps the tile grid you asked for but lowers the effective scale so only the needed overlap is used. Saves time and VRAM; worth leaving on.
- VLM_Model and VLM_Prompt - off by default. When enabled, a VLM (Qwen, Florence, etc.) writes a description per tile, which is how the Refiner gets tile-specific prompts without you typing 40 of them. Note the tooltip: some of these (Apple's model) are research-only-license and are not shipped with the node - you install them yourself.
Outputs: TBG_Pipe (into the Refiner) and Upscaled Image (the upscaled-but-not-yet-refined result, handy for eyeballing the upscale before paying for the diffusion pass).
Install
Same as the whole pack:
cd ComfyUI/custom_nodes
git clone https://github.com/Ltamann/ComfyUI-TBG-ETUR
cd ComfyUI-TBG-ETUR && pip install -r requirements.txt
or just install "TBG Enhanced Upscaler" from ComfyUI Manager and restart. Note the requirements file is heavy (opencv-contrib, kornia, transformers/diffusers for PiD, timm, triton), and the pack needs a current ComfyUI with the v3 API. For the upscaler models, grab 4x-UltraSharp or RealESRGAN_x4plus into ComfyUI/models/upscale_models/.
Common issues
- "NONE" upscaler surprises you - if the output looks like a plain bilinear rescale, that's because
upscale_modelwas left as NONE andupscale_bydid the work. That's expected, but people do get caught. - VLM nodes not appearing or erroring - you need the VLM weights yourself, and some backends (GGUF/llama-cpp) aren't auto-installed by the pack; you must install a compatible wheel manually.
- Tiny input images - the Tiler's own changelog mentions it handles images smaller than the tile size now, but if you feed it a 256px thumbnail expecting a 4K upscale, adjust expectations: there's no detail to recover. The KB's rule for soft or small sources applies - downscale to a sharp base, then let the model rebuild.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| tile_size | INT | 1024320–8192 | — |
| upscale_model | COMBO | NONE | 11 options: NONE, FAST/_area, FAST/_bicubic, FAST/_bilinear, FAST/_bislerp, FAST/_lanczos, +5 |
| upscale_by | FLOAT | 2.000.05–8 | — |
| Optimize_Upscale_Factor_For_Tile_Use | BOOLEAN | false | Keeps the tile grid from the requested upscale factor, then lowers the effective scale to the largest size that uses only the required tile overlap. |
| VLM_Model | COMBO | NONE | Check the license for all models. Apple’s model is for research use only and the files are not included in this custom node. It must be installed separately by the user. |
| VLM_Prompt | STRING | Provide a highly detailed description of the image, emphasizing materials and textures. Enhance every visual detail, including accurate colors, lighting, and stylistic elements. Also describe the artistic or photographic style, such as film type, camera style, era, or overall aesthetic. | — |
| VLM_seed | INT | 00–18446744073709550000 | — |
| Fusion Reference Margin | INT | 00–256 | Reference border content kept around each Soft Merge tile and cropped out when stitching the image back together. |
| Feather Mask | INT | 160–128 | Feather mask is a gradient used only in final image compositing to smoothly blend tiles together using Soft Merge. |
| Segment_Maskopt | MASK | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| TBG_Pipe | TBG_Pipe | — |
| Upscaled Image | IMAGE | — |