Upscale to Original Size
Put the pixels back — the boring node that completes drift-free editing
- image
- reference
- resized
Every workflow has a boring node that makes the clever ones work. Upscale to Original Size is that node here. It does one thing: takes the Qwen output and resizes it back to the resolution of your original source image. That's it. And it matters because of what's upstream.
When you use the pack's drift-free approach, Pre-Crop to Qwen shrinks your source down to a size Qwen's internal resize can't distort - a crop at or below the 1024×1024 area mark. Qwen then generates at that smaller size, and you're left with a perfectly drift-free but cropped-down result. This node is the return half of that journey: feed it the Qwen output and the original source, and it resizes the output back to the source's full width and height, restoring the frame you cropped away.
How it works
It takes the reference image, reads its dimensions, and runs the Qwen output through ComfyUI's standard common_upscale to match - lanczos by default, with nearest-exact, bilinear, area, and bislerp available if you want something else. If the sizes already match, it short-circuits and passes the image through untouched. Output is a single resized IMAGE you can save or feed onward.
The one input beyond the two images is upscale_method, and honestly, lanczos is the right call for this job. It's a single geometric restore, not a quality pass - there's no detail being invented here, just pixels being put back on the coordinate system they came from.
The honest limits
This is a dumb resize, and that's a feature. It matches geometry; it does not resurrect detail Qwen never generated. If your drift-free crop was substantially smaller than the original, you'll get a slightly soft upscale - that's the cost of the crop-based approach, and it's why the pack's other route (AKAZE corrective alignment) exists for people who can't afford to lose the frame at all. Pick your trade-off, don't fight it.
No OpenCV, no model downloads, no dependencies beyond what ComfyUI ships. It's the lightest node in the pack, which is exactly what a utility like this should be.
Installing it
Same shared install as the rest of the pack. ComfyUI Manager → search comfyui_qwen_edit_pixel_perfect → install, restart. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/oron1208/comfyui_qwen_edit_pixel_perfect
Restart ComfyUI. Because the pack registers via the newer comfy_api.latest / io.Schema API, a stale ComfyUI won't show any of its nodes - update ComfyUI if they're missing, and the bundled "Preventive (Drift-Free)" workflow will load clean.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Qwen output (drift-free, possibly smaller). | |
| reference | IMAGE | Original source whose size to match. | |
| upscale_method | COMBO | lanczos | 5 options: lanczos, nearest-exact, bilinear, area, bislerp |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| resized | IMAGE | — |