Two things share one name
Bicubic and Lanczos resampling enlarge an image by interpolating between existing pixels. Nothing is added, so a 4x enlargement is a 4x softer picture. This is the honest kind: it never lies about content because it never invents any.
AI upscaling is a different operation wearing the same label. A super resolution model has been trained on millions of pairs of low and high resolution images, so it has learned what kinds of detail usually sit below the sampling limit: pore structure in skin, individual hairs, brick edges, the way a fabric weave repeats. Given a small image it synthesizes that detail. The output is genuinely sharp, and the sharpness is a prediction rather than a recovery.
Everything useful and everything dangerous about upscaling follows from that single fact.
What it fixes well, and what it fabricates
| Source problem | Result |
|---|---|
| Sharp but small | Excellent, this is the ideal case |
| Mild compression blocking | Usually cleaned up as a side effect |
| Soft focus | Partially improved, sometimes invented |
| Small faces | Plausible but not the same person |
| Small text and logos | Letter-shaped noise, avoid |
| Motion blur | Not recoverable, blur gets crisper edges |
The pattern: upscaling is reliable on statistical texture and unreliable on anything that has one correct answer. Skin texture has no correct answer, so a guess is fine. Your client's logo has exactly one, so a guess is a defect.
Video upscaling is a harder problem
Running a still upscaler over each frame produces a clip that shimmers. Each frame is upscaled independently, so the invented pore detail, the invented hair strands, and the invented fabric weave all land differently every 24th of a second. Static shots reveal it worst, because the eye has a stable reference to compare against.
Temporally aware video upscaling models constrain each frame against its neighbors, which trades a little per-frame sharpness for a clip that holds still. If you only have a still upscaler, keep the factor low and add a small amount of grain afterward: grain gives the flicker something to hide inside.
Order of operations for generated video: generate, interpolate frames, upscale, then grade. Upscaling before interpolation means the interpolator estimates motion across invented detail, and grading before upscaling means the upscaler bakes your grade into the synthesized texture.
A workflow that avoids the usual regrets
- Generate at the model's native resolution. Asking a model for an unusual size costs quality; asking for its native size and upscaling afterward does not.
- Repair first, enlarge second. Inpaint the extra finger at working resolution. Upscaling it just gives you a larger extra finger.
- Prefer two 2x passes to one 4x pass when the source is soft, with a light denoise between them so the second pass is not amplifying the first pass's guesses.
- Mask what must stay accurate. Faces, product labels, and typography can be held at original resolution and composited back over the upscaled plate.
- Keep the original file. Super resolution output is not a lossless transform, and next month's model will do a better job on the same source.
How to check the result
Compare at 100 percent, not fitted to the window, and put the two versions side by side rather than toggling. Look at three things: an area of skin or fabric for waxiness, a high-contrast edge for halos, and any repeating texture for unnatural regularity. If all three pass, the upscaling did what you wanted. If any of them fail, the fix is a lower factor or a different model, never a second pass on top of the failure.