Skip to content

Learned super-resolution

Algorithm atlasDeep learning

Use a trained network to infer a higher-resolution image from a lower-resolution input.

Try it on your image ↓

VISUAL WALKTHROUGHDeep learning
REFERENCE INPUTLow-resolution image

The sample drawing makes the data representation visible; it is not an actual model input/output pair.

RESULTPredict higher-resolution samples

Twice the width and height gives four times as many samples. Learned detail depends on the model and may not match the original scene.

STEP 03 / 03

Run the network and assemble the high-resolution output.

Illustrative example. The stages explain the method; they are not a live OpenCV execution.

Try it on an image

YOUR IMAGE · REAL OPENCV

Experiment at pixel level

Open full lab ↗

Upscale with the bundled FSRCNN ×2 model, or upload a compatible TensorFlow .pb model. Architecture and scale must match the model. Input is capped at 256 pixels for this CPU preview.

The engine loads on your first run. Your images stay in this browser.

Input448 × 320
OutputWaiting for a result

Scroll over either image to zoom at the pointer. Use the scrollbars to pan both views over the same relative area. Zoom is relative to the input; pixel coordinates belong to each image. Warps can change scene correspondence.

Pixel inspector RGBA · native values · matched scale · 9 × 9 output pixels
Hover to inspect. Click to pin a pixel.
Input
Select a pixel

Output
Select a pixel

Sample models and licenses

When to use it

Produce model-based upscaled images when a supported model and its expected scale are available.

How it works

  1. 01Load a compatible super-resolution model.
  2. 02Set its architecture name and scale factor.
  3. 03Run the network and assemble the high-resolution output.

low-resolution input → learned reconstruction → larger image

What to tune

setModel must agree with the loaded network and scale. Benchmark small images first on the CPU WASM backend.

Where it breaks down

Generated fine detail is inferred, not a recovered observation. Models can hallucinate texture and use substantial memory.

TypeScript API

Open an entry for its exact overloads, parameter descriptions, result ownership and pinned upstream source.

All of these calls execute on the CPU. Native objects need explicit disposal. See matrices and ownership and build compatibility.