Revive an old photo: drop one in and it comes back 4× larger and clean. Flip on Colorize and a faded black-and-white shot comes back in colour too. Both models run entirely in your browser tab. No upload, no account, no resolution cap.
The models run on your machine. Your photo never leaves this tab.
Upscale runs Real-ESRGAN
(the compact realesr-general-x4v3 model, ~5 MB) through
ONNX Runtime Web,
with a WebGPU fast path and a WebAssembly fallback. The photo is processed in overlapping
128 px tiles so even a large image fits in memory; each tile is upscaled 4× and the
seams are feathered away. It is a real restoration model trained on real-world degradation,
so it rebuilds plausible texture instead of just resampling.
Colorize runs the Zhang et al. colorization network: it sees only the brightness of your photo and predicts the two colour channels, which are laid back over the original at full resolution, so every detail stays sharp and only the colour is invented. When both are on, the photo is colorized first, then upscaled. Each model downloads once and is cached; the colorizer only loads the first time you switch Colorize on. The colours are a plausible guess, not a record of the real ones.
Nothing is uploaded; the whole thing happens in this tab. Best on small, compressed, or lightly blurry photos (old thumbnails, screenshots, scans). On severe blur it can only do so much. A writeup has the details.