Back to group page

SIGGRAPH Asia 2013

Content-Adaptive Image Downscaling


Johannes Kopf Ariel Shamir Pieter Peers
Microsoft Research The Interdisciplinary Center College of William & Mary


Input

Subsampling

Bicubic

Sharpened

[Nehab2011]

Lanczos

Our result
Previous content-insensitive downscaling methods have to compromise between (a) preserving sharpness while introducing aliasing artifacts (e.g., subsampling), or (b) preventing aliasing at the expense of smoothing out fine details and edges (e.g., Bicubic, Lanczos, etc.). Our new content-adaptive algorithm provides a more balanced result, that is crisp and contains neither noise nor ringing, and mostly avoids aliasing artifacts. ("Merlon" input image © Nintendo Co., Ltd.)


Abstract

This paper introduces a novel content-adaptive image downscaling method. The key idea is to optimize the shape and locations of the downsampling kernels to better align with local image features. Our content-adaptive kernels are formed as a bilateral combination of two Gaussian kernels defined over space and color, respectively. This yields a continuum ranging from smoothing to edge/detail preserving kernels driven by image content. We optimize these kernels to represent the input image well, by finding an output image from which the input can be well reconstructed. This is technically realized as an iterative maximum-likelihood optimization using a constrained variation of the Expectation-Maximization algorithm. In comparison to previous downscaling algorithms, our results remain crisper without suffering from ringing artifacts. Besides natural images, our algorithm is also effective for creating pixel art images from vector graphics inputs, due to its ability to keep linear features sharp and connected.
@article{Kopf2013,
    author  = {Johannes Kopf and Ariel Shamir and Pieter Peers},
    title   = {Content-Adaptive Image Downscaling},
    journal = {ACM Transactions on Graphics (Proceedings of SIGGRAPH Asia 2013)},
    year    = {2013},
    volume  = {32},
    number  = {6},
    pages   = {to appear}
}
		
   
Paper
Click here
Supplementary Material
Click here
Implementation Details
Click here

Back to projects page