AI Image Enhancer (Upscaler)

Upscale images 2x or 4x with a Swin2SR super-resolution model that runs in your browser. No uploads.

  • Runs in your browser
  • Free, no sign-up

Drop an image here or click to choose

JPEG, PNG, WebP ยท up to 20.0 MB

Processed in your browser. Files are not uploaded.

Swin2SR classical 2x. Best for clean images and graphics. Longest side up to 1,024 px.

Model download

About 51.9 MB on first use, then cached by your browser.

Runs entirely in your browser: your image is never uploaded. The AI library (Transformers.js) and the Swin2SR model (Apache 2.0 licence) are downloaded from the jsDelivr and Hugging Face CDNs on first use and cached by your browser. Large images take longer, especially on older devices without WebGPU.

What does AI Image Enhancer do?

Upscale JPG, PNG and WebP images 2x or 4x with AI super-resolution running in your browser. Compare before and after, then download a PNG. No uploads.

Price
Free
Account
Not required
Processing
Entirely in your browser; your data and files are not uploaded
Works on
Any modern browser on desktop, tablet or phone
Category
Image Tools

How to use the AI Image Enhancer (Upscaler)

  1. Drop a JPG, PNG or WebP image onto the drop zone.
  2. Choose 2x, 4x, or 4x with JPEG artefact cleanup. The 2x model accepts images up to 1,024 pixels on the longest side and the 4x models up to 512 (half that on devices without WebGPU).
  3. Select Enhance. The first time, the model (about 52 MB) downloads and is cached by your browser.
  4. Drag the comparison slider to check the result against the original.
  5. Download the enhanced image as a PNG.

Worked example

A 600 x 400 product photo

At 2x the output is 1,200 x 800 pixels. The image is processed as 24 overlapping tiles of 128 x 128 pixels (6 across and 4 down, overlapping by at least 16 pixels), each upscaled by the model and blended back together so no seams show.

How it works

The tool uses Swin2SR, a transformer model for image super-resolution, through Transformers.js running in your browser (WebGPU when available, otherwise WebAssembly). The image is split into 128 pixel tiles that overlap by 16 pixels. Each tile is upscaled by the model, and overlapping areas are blended with linear weights so tile edges do not show. Transparency is not predicted by the model, so the alpha channel is enlarged with smooth resampling. The result is saved as a lossless PNG.

Assumptions

  • The model predicts detail from patterns it learned during training. It does not know what was really in the scene.

Frequently asked questions

Are my images uploaded?

No. The model runs on your device. Only the AI library and the model weights are downloaded (from jsDelivr and Hugging Face); your image never leaves your browser.

Can it restore a blurry photo or make a face recognisable?

No. Upscaling sharpens edges and adds plausible texture, but it cannot recover information that is not in the original. Do not rely on it for identification or evidence.

Why is there a size limit?

Output pixels grow with the square of the scale, and the model is memory hungry. The limits keep the output at about 2,048 pixels on the longest side so it works on ordinary devices.

Which models and licences are used?

Swin2SR classical 2x and 4x and the compressed-input 4x model by the Swin2SR authors, converted to ONNX for Transformers.js. The original models are released under the Apache 2.0 licence.

Limitations

  • Longest side up to 1,024 pixels for 2x and 512 pixels for 4x with WebGPU, and half that on the CPU. Resize larger images first.
  • Slow without WebGPU: on the CPU each 128 pixel tile can take 10 seconds or more, so a 512 pixel image can take several minutes.
  • The first run downloads a model of about 52 MB. Content blockers that block jsDelivr or Hugging Face stop the tool from working.
  • It can invent texture and artefacts, especially on text, faces and fine patterns. Always compare with the original.