Articles Technology Blog News Company
Video resize methods comparison
For this shootout we've gathered 17 different tools for image and video resizing. 10 high resolution video fragments were downsized 4 times and then upsized with different methods and tools. Upsized videos were compared with original hi-res ones and Y-PSNR metric was calculated for each of them. This is the most commonly used objective quality measure which shows how close two images or videos are to each other. It's measured in dB and the higher the value, the closer two images/videos are, i.e. high PSNR values mean the upsized video looks more like the high resolution original.

Below you can see PSNR charts and values for all resize methods and all videos (Flash player required). Select a video to compare visually results of different resizing tools.

Some tools work only with single images, not videos. To include them into this comparison we took a random frame from each of the videos and performed the same procedure of downsizing and upsizing back using these image resizing tools. Since PSNR for particular frame is not the same as average PSNR of whole video, we show two different charts: PSNR for the whole video and PSNR for a single frame.

Software used

Video resizing tools:
  • Bicubic: VirtualDub v1.9.10 internal resize filter, mode "Bicubic (interpolation only)".
  • Lanczos: VirtualDub 1.9.10 internal resize filter, mode "Lanczos3".
  • Lanczos+Sharpen: VirtualDub 1.9.10, sequence of two internal filters: resize filter in mode "Lanczos3" and sharpen filter with setting "64".
  • Boris FX Uprez: Boris Continuum UpRez plugin for Adobe After Effects CS4, using Method "Magic Sharp".
  • Cinema HD v2.09.518 by Engelmann Media GmbH using EDO (Edge Detection)
  • EEDI3: eedi3 v0.9.1 plugin for AviSynth v2.5.88 used with VirtualDub 1.9.10. Settings: eedi3_rpow2(rfactor=4).
  • NNEDI3: nnedi3 0.9.2 plugin for AviSynth. Settings: nnedi3_rpow2(rfactor=4)
  • InstantHD: Magic Bullet Instant HD Advanced 1.0 by Red Giant Software with Adobe After Effects CS3 using default settings and Add Grain = "0.00"
  • Spline36: AviSynth 2.5.88 internal Spline36 resizer
  • vReveal v2.0.5.7748 Premuim by MotionDSP with "Enhance with Super-Resolution" option enabled, on a PC with nVidia card and CUDA enabled, output to Uncompressed AVI.
  • Video Enhancer v1.9.6 using best quality settings in RGB mode. The same resizing engine is used in Super Resolution plugin for VirtualDub.
Image resizing tools:
  • Genuine Fractals 6.0 Professional Edition by onOne Software plugin for Photoshop CS3
  • SmartEdge v1.1 - demo using initial resizing "NEDI".
  • SAR DataDependentLanczos: SAR Image Processor v4.2, Data Dependent Lanczos resize mode with default settings.
  • SAR PseudoLAD: SAR 4.2 with Pseudo LAD resize mode and default settings.
  • SAR RoussosMaragos: SAR 4.2 with Roussos-Maragos resize mode and default settings.
  • SAR Triangulation: SAR 4.2 with Triangulation resize mode and default settings.

Notes and observations

The charts above show clear advantage of Video Enhancer over other resizing tools. This is because Video Enhancer employs Super Resolution technique to restore frames using accumulated information from multiple previous frames. Most of the other method and tools work only with current frame and cannot provide so much details.

vReveal claims to use Super Resolution approach too, but seeing its results we'd rather call it "Super Blur". It probably just blends together multiple frames, leading to smooth edges but quite blurry textures. vReveal gives different results with CUDA and without it (CPU only). Result video obtained on a PC without CUDA support is less blurry, more aliased and has lower PSNR. The speed in this CPU-only mode is lower than of Video Enhancer in maximum quality mode, probably due to a lack of multithreading. In this comparison we show CUDA-enabled variant.

Many tools shift image by 1-3 pixels when upsizing it 4x. Although images shown in this comparison are taken "as is" demonstrating the shifts, PSNR values were calculated with the shifts compensated: videos were shifted by an integer amount of pixels which provided maximum PSNR for each of the methods. For example, InstantHD videos were shifted by 1 pixel and vReveal by 3 pixels. When measured without shifts their PSNR is much lower than shown in the charts here.

Boris FX Uprez seems to have upsized the videos a little more than exactly 4x, making all objects slightly bigger than requested. That lead to low PSNR result although visually the quality is similar to Lanczos resampling.

SmartEdge's quality is amazingly good for a single-image resizing method, but unfortunately it cannot be used for video. Its official page says: "Please note that the algorithm is currently very slow and consumes large amounts of memory, so it's only applicable to small images". Indeed, processing one frame (480x270 to 1920x1080) took approx. 2,5 minutes, while Video Enhancer in the slowest mode does it in 0,2 seconds (700 times faster).

Sample videos

You're welcome to reproduce and check our results. Here are the videos used in this comparison. They are compressed with Lagarith lossless video codec.

Low resolution:
alice.avi    avatar1.avi    avatar3.avi    bjorn.avi    hangover.avi
karate.avi    panasonic4    shrek.avi    smiths.avi    sw.avi

High resolution:
alice.avi    avatar1.avi    avatar3.avi    bjorn.avi    hangover.avi   
karate.avi    panasonic4.avi    shrek.avi    smiths.avi    sw.avi   

Other articles...