Actually, the image interpolation is a signal recovery problem. To a band-limited signal, ..... Orlando, FL, USA: Academ
IEEE SIGNAL PROCESSING LETTER, VOL. , NO. , 2008
1
Image interpolation by blending kernels Luming Liang
Abstract A new convolution-based image interpolation method is presented, whose kernel function is designed via blending some well-known kernels. The new kernel is a better approximation to Sinc function both in the space domain and the frequency domain. Comparative experiments with several polynomial spline type algorithms indicate that our approach exhibits a significant improvement in image quality. Index Terms Image interpolation, kernel function, blending, convolution.
I. I NTRODUCTION Served as a basic brick of many higher level image operation, the interpolation is widely used in the field of digital image processing [1], [2]. For example, in some basic geometrical manipulations, such as zoom-in, zoom-out ,rotation and even sub-pixel panning to images, interpolations are inevitable [3], [4]. Moreover, the image interpolation has played a very important role in actual imaging applications, including online videos, medical image processing [5], mobile photos, etc. However, digital images cannot be magnified too much without a degeneration of their visual qualities. How to alleviate this degeneration is the key task in designing a new image interpolation algorithm. In literature, there are various methods [6]–[13] of different kinds can achieve this target to some extends. Actually, the image interpolation is a signal recovery problem. To a band-limited signal, if the uniform sampling is done above the Nyquist frequency, this signal can be perfectly reconstructed by choosing the sinc function, i.e. f (x) = sinπxπx , as the kernel function, and this interpolation process is the so-called ideal interpolation. However, using the ideal interpolation kernel function cannot yield high quality high resolution(HR for short) images in practice, since this function in the space domain does not have a compact support. Thus it must be clipped to a certain interval before being used to interpolate the low resolution(LR for short) image. The main problem is that if we clip this sinc function into a window version, its shape in the frequency domain will change dramatically, therefore the interpolation result will be no longer ”ideal”(See Fig. 1). sinc window sinc
1
0.8
0.6
0.4
0.2
0
0
5
10
(a)
15
(b)
(c)
Fig. 1. The interpolation effect by using the window sinc. (a) is the comparison of the ideal kernel in the frequency domain, (c) is the magnified image of (b) when the window sinc is chosen as kernel. Luming Liang is with the Center for Wave Phenomena and the Department of Mathematical and Computer Science, Colorado School of Mines, part of this work was done in Central South University, China. E-mail:
[email protected] Manuscript received ; revised
IEEE SIGNAL PROCESSING LETTER, VOL. , NO. , 2008
2
So, how can we solve this problem? One strategy is to find some functions which have compact support in the space domain and also possess a similar shape in the frequency domain compared to the sinc function. This thinking gives birth to a kind of image interpolation method, i.e. convolution-based methods. Among algorithms of this kinds, the simplest one is the nearest neighbor interpolation [14], [15], which has a quite low time complexity and a relatively easy implementation. However, the HR images produced by this method are full of blocking artifacts. In the purpose of alleviating the blocking effects, the bilinear interpolation [7], [8] is introduced, which uses the linear interpolation model to calculate unknown pixels. Results show that edges become blurred after being magnified. Another traditional method is called the bicubic interpolation [6], which interpolates a signal by a weighted sum of values at control points to a spline function. This method is also used in practice currently. The disadvantage of this method is that the high frequency part of the original image will be filtered due to the over smoothness of the cubic spline kernel. Blending is a technique widely used in the field of computer aided geometric design, which can produce curves and surfaces of new types by weighted averaging known curves or surfaces for some specific uses [16], [17]. With the development of the approximation theory and the computational methods, lots of new kernels are designed, such as o-Moms’ functions [18], Key’s functions [19], adaptive osculatory rational functions [12]. Based on these kernels, we will introduce a new convolution-based image interpolation method, whose kernel is a blending of those known ones. For simplicity, we assume here that the amplification factor k is the same both horizontally and vertically, which means that our algorithm will produce an (k × m) × (k × n) image from an m × n input image. The organization of this paper is as follows. In section 2, we will present our new interpolation kernel and then compare it to some others both in the space domain and the frequency domain. In section 3, some experimental results are given. Section 4 is devoted to conclusions. II. T HE DESIGN OF NEW KERNEL There are some well-known kernels used extensively in image interpolation, we first list them here for clarity. The third-degree oMoms’ function [18]: |x|3 |x| 13 − |x|2 + + , 2 14 21
oM om3 (x) = |x|3 85 29 2 − + |x| + |x| + , 6 42 21 0, Key’s functions [19]: Key(x) =
3 2 (a + 2)|x| − (a + 3)|x| + 1,
3
2
a|x| − 5a|x| + 8a|x| − 4a, 0,
0≤x