GPU RESAMPLING
TOOLKIT

Classic resampling filters, powered by your GPU.
Choose the method that fits your image.

Explore the methods

GPUResize 2 works in Premiere Pro and DaVinci Resolve, plus After Effects. Resolve setup: included Fusion macro ↗

01 / CLASSIC FILTERS

Different filters. Different results.

Classic resampling methods familiar from scientific imaging.
From Bilinear and B-Spline to Mitchell, Lanczos and Kaiser.

Bilinear ↔ Lanczos 3256 → 768 px · 1 pass · sharpening off
Meet the filters
FilterWhere it comes from, what it doesPick it for
NearestCopies the single closest source pixel, so no new colors ever appear. Blocks stay blocks, which is exactly what masks, pixel art and index-like data want.Masks, exact values
BilinearThe blend every GPU has done for textures since the 1990s: mix the four nearest pixels, first across, then down. Fast and smooth, but fine detail turns soft.Previews, quick scaling
AreaEach output pixel is a bucket that averages every source pixel underneath it. Nothing tames fine patterns and moiré better on the way down; on the way up it has nothing to average and quietly turns into Bilinear.Downscaling texture
TriangleThe “tent” filter: weights fall off in a straight line from the center. At enlargement it is Bilinear by another name; when shrinking, the tent widens to cover every pixel being merged.Soft downscaling
BellA box filter blurred by itself twice, giving a bell-shaped curve often mistaken for a Gaussian. It smooths more than it sharpens.Gentle, low-noise looks
B-SplineNamed after the flexible strip draftsmen bent around pins to draw ship hulls. Its weights never go negative, so it is the one cubic here that cannot ring; the price is lost fine texture.Zero halos
Catmull-RomEdwin Catmull went on to co-found Pixar, and the spline that bears his name also steers camera paths in animation. As a resize filter it is crisp, with light halos at hard edges.Crisp graphics
MitchellIn 1988 Mitchell and Netravali had viewers rate blur, jaggies and ringing, then picked the cubic that annoyed them least. That compromise is still the safest starting point for photos.Safe default, photos
KaiserJim Kaiser designed his window at Bell Labs in the 1960s; audio engineers resample sound with the same shape. Here it tapers a sinc, trading a little of Lanczos’s bite for calmer edges.Lanczos with less ringing
Lanczos 3Cornelius Lanczos spent a year as Einstein’s assistant; the filter got his name in a 1979 meteorology paper by Claude Duchon. Three lobes of sinc: the “high quality” default in many tools, halos included.Sharp all-rounder
Lanczos 4One more lobe than Lanczos 3, so each output pixel looks at a wider ring of neighbors. Slightly more detail, slightly more ringing, more work per pixel.Fine texture
Lanczos 6Six lobes, not version six. At this width the negative weights that keep detail also make halos plainly visible; treat it as a comparison point, not a default.Detail experiments
EWA LanczosSharp“Elliptical Weighted Average”: instead of filtering rows then columns, it samples a circle or ellipse around each output pixel. Nicolas Robidoux sharpened the Lanczos curve to suit that footprint; diagonals and unequal X/Y scaling are where it shows.Diagonals, uneven scale
FSR 1 EASUAMD’s Edge-Adaptive Spatial Upsampling, open-sourced in 2021 to upscale games in real time. It reads local edge direction and rebuilds contours along it.Clean-edged upscaling
Pixel - Scale2xAndrea Mazzoleni wrote it for AdvanceMAME in 2001; LucasArts had used the same rule, EPX, to port games in 1992. It rounds staircase steps by copying neighbors, never inventing colors.Pixel art at 2x, 3x
Pixel - EagleA late-1990s emulator filter that rounds corners by comparing three neighbors. Letters and single-pixel details can blob together.Retro sprites
Content-AwareChanges where content goes rather than how neighbors blend: an importance map decides which areas may be squeezed. Protect alpha makes transparency boundaries count too.Changing aspect ratio
02 / PIXEL ART

Pixel art has
options, too.

Compare Nearest, Scale2x, Eagle and FSR 1 EASU on the same pixel artwork. Choose a method on each side and drag to explore the edges.

NearestScale2xEagleFSR 1 EASU
64 → 512 px1 pass · sharpening off
03 / DOWNSCALING

Downscaling is part of the toolkit.

Explore how Bilinear and Area handle a reduction.
The right choice depends on the image and the task.

Bilinear ↔ Area · test chart1536 → 256 px · shown at 3× · sharpening off
04 / POST-SHARPEN

The finishing touch. Your amount.

Compare sharpening off, RCAS and Unsharp Mask after the same resize. Choose 50% or 100% on either side. Sharpening changes local contrast; judge the texture and edges together.

GPUResize comparison
05 / MULTIPASS

Stair-step scaling. Both directions.

A whole resize sequence. One Iterations control. Stair-step scaling — also called incremental resizing — breaks an upscale or downsample into smaller steps. Explore up to 16 GPU-accelerated passes without stacking effects or scripting intermediate sizes.

Same target. Different steps.

Upscale · 300.0% overall · ≈ 144.2% per step

256 pxSource · 100%
369 pxPass 1 · 144.1%
533 pxPass 2 · 144.4%
768 pxPass 3 · 144.1%

Downsample · 33.3% overall · ≈ 69.3% per step

768 pxSource · 100%
533 pxPass 1 · 69.4%
369 pxPass 2 · 69.2%
256 pxPass 3 · 69.4%
Actual GPUResize renders · Lanczos 3 · sharpening off. Percentages on each pass are relative to the previous frame: 144.2% means about 44.2% larger. Dimensions are rounded to whole pixels. Each pass resamples the previous result. Tap a frame to inspect its full-size image.

Downsample

Reduce in stages · Bilinear · 1536 → 256 px

Large reductions can turn fine lines and repeating patterns into aliasing or moiré. Try several smaller reductions and watch how those patterns change. This Bilinear example makes the difference visible; also compare a single-pass Area downsample in the filter demo above.

GPUResize comparison

Stairstep upscale

Enlarge in stages · Lanczos 3 · 256 → 768 px

For HD to 4K upscaling or a larger enlargement, stairstep gives you another way to shape the result. Compare edge smoothness, ringing (halos) and fine texture: repeated filtering can soften detail as well as change contours. It does not recover detail missing from the source.

GPUResize comparison

Judge the shot, not the pass count. Check at 100% output size and in motion at your delivery resolution. Extra local contrast can look sharper without adding detail, and some filters can build up halos over repeated passes. Keep the source, filter and working color space consistent when comparing. Then compare single-pass resizing with post-resize sharpening, too. These previews are scaled to fit your screen.

06 / CREATIVE RESIZING

Resizing glitch effects.

Push Content Aware into expressive distortions. Sweep multipass from 1 to 16 and back while the output dimensions stay fixed. Let the image bend, stretch and shift.

Content Aware · Iterations 1 → 16 → 1 · 32s loop · 1s per stepAmount 100% · rigidity 50% · sharpening off

Output: 384 × 512 → 192 × 512, displayed at the original width for comparison. Footage: Ron Lach / Pexels.

07 / OUTPUT MODES

Set the size. Or reshape the frame.

Choose exact dimensions, scale relative to the source, or place each corner independently.

1920 × 1080 → 3840 × 2160

Pixels

Pick a resolution preset or enter the width and height. Choose Stretch, Fit inside or Fit outside to control how the image fits the target frame.

For a specific delivery size.

100% → 200%

Percentage

Scale relative to the source dimensions. Set width and height percentages independently: double both dimensions, reduce them by half, or stretch just one axis.

For the same relative resize across different source sizes.

Four corners. Your shape.

Free Distort

Move the four corners independently to stretch, skew or add perspective. Choose the resampling filter for the transformed image.

For perspective adjustments and creative distortion. Iterations resizes in steps toward the output bounding box, then applies one bilinear warp. Repeated sizes are skipped; the corner mapping stays the same.

1600 by 900 source into a 900 by 900 frame: Stretch outputs 900 by 900, Fit inside 900 by 506, Fit outside 1600 by 900.
1600 × 900 source → 900 × 900 target frame. Stretch changes proportions. Fit inside keeps the whole image within the target frame. Fit outside covers it while preserving proportions. The frame is a size reference: Fit outside does not crop the output.
HOW IT WORKS

From source to output.

Source imageThe frame supplied by your host

CHOOSE YOUR SIZE MODE

Pixels / PercentageSet dimensions or a relative scale
Resize in stepsChoose a filter + IterationsEach step resamples the previous result.
Upscale or downsample.
or
Free DistortPosition the four corners
Resize steps + one warpChoose a filter + IterationsResize toward the output bounding box.
Apply the bilinear warp once, at the end.
Optional post-sharpenOff / RCAS / Unsharp MaskAfter the complete resize, at output resolution
Output image

Iterations requests up to 16 resize stages. Repeated sizes are skipped. In Free Distort, the corner mapping stays the same for every iteration count.

PRACTICAL CONTROLS

Choose the filter.
Build the process.

Choose your output mode. Set dimensions in pixels, scale by percentage, or reshape with Free Distort.

Multipass downscale. Reduce through intermediate sizes.
Stairstep upscale. Enlarge in progressive steps.
Post-sharpen. Finish with optional RCAS or Unsharp Mask.

Choose your settings, compare the results—no single filter suits every image.

Read the manual