floatbird / enhance on-device · nothing uploaded

enhance

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.
Drag a photo here, or Upload a photo below.
Pick Upscale, Colorize, or both. Or start with the built-in sample: it’s already done, drag the divider to compare.
original enhanced 4× before after · 4×
Working…
ready

How it works

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.