12.01.2015 Views

Download - Academy Publisher

Download - Academy Publisher

Download - Academy Publisher

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

( n + 1)<br />

f ( ξ )<br />

Rn( x) = f ( x) − Ln( x) = ω<br />

n+<br />

1( x)<br />

( n + 1)!<br />

where ξ∈ [a, b], and<br />

n 1 0 1<br />

(2)<br />

ω +<br />

( x) = ( x− x )( x− x )...( x− x ) (3)<br />

In fact, the n+1 order derivative of image function f(x)<br />

is unavailable and it has to be replaced. It is well known<br />

that adjacent pixels always have similar property and<br />

errors are closely related to each other. Based on this<br />

observation, we propose an error estimation which will<br />

be discussed in section Ⅲ.<br />

III. THE PROPOSED INTERPOLATION ALGORITHM<br />

For a typical image expansion, for example the<br />

magnification factor is 2x2, an image of NxM pixels is<br />

expanded to high resolution 2Nx2M. We can get arbitrary<br />

high resolution image by changing polynomial coefficient<br />

in (1). Two steps are processed to implement 1-D and 2-D<br />

pixels interpolation respectively. As shown in figure 2, the<br />

denotes pixels of original low resolution image, Օ and<br />

⊗ are unknown pixels which are called 1-D and 2-D<br />

signal respectively.<br />

Figure 2. Distribution of 1-D and 2-D pixels<br />

A. 1-D pixels interpolation<br />

First, the interpolation of the Օ position in figure. 2<br />

can be considered as 1-D interpolation of the pixel<br />

between x k and x k+1 , which is denoted as x, as shown in<br />

figure 1. Because the magnification factor is 2x2, the<br />

interpolation problem is converted to figure out the value<br />

of x k+1/2 . According to the values of x k and x k+1 , the<br />

interpolation method is as follows. If y k =y k+1 , we directly<br />

let y k+1/2 =y k , without considering error compensation.<br />

Otherwise we use parabola interpolation introduced in<br />

previous section and an error is compensation which will<br />

be discussed shortly.<br />

For 1-D interpolation, using (1), L 2 (x k+1/2 ) can be<br />

obtained<br />

L ( x ) = y * a+ y * b+ y * c (4)<br />

2 k+ 1/2 k− 1 k k+<br />

1<br />

According to the weight term in (1), we can determine<br />

the coefficients a=-(1/8), b=3/4, c=3/8. These coefficients<br />

take the influence of each adjacent pixel into<br />

consideration. Using equation (2), the interpolation error<br />

can be expressed as<br />

3<br />

f ( ξ )<br />

error _ xk+ 1/2<br />

= ω<br />

3( xk+<br />

1/2)<br />

(5)<br />

6<br />

n<br />

From (3) and (5), we have:<br />

3<br />

f ( ξ ) 3<br />

error _ xk<br />

+ 1/2<br />

= ( − ) (6)<br />

6 8<br />

As said in section II, we must find another way to get<br />

error_x k+1/2 since f (3) ( ξ) cannot be found.<br />

Using (1), the estimated error of x k can be expressed<br />

as :<br />

error _ forward = f ( xk) − L2<br />

( xk)<br />

= f ( xk) − yk−2* d + yk− 1* e+ yk+<br />

1*<br />

f (7)<br />

where d=-(1/3), e=1, f=1/3. From (2) we can also get<br />

another error expression<br />

3<br />

f (1) ξ<br />

error _ forward ω<br />

3( xk<br />

)<br />

6<br />

= (8)<br />

When ξ∈ [x k-2 , x k+2 ], we can assume that f 3 (ξ) varies<br />

little. Then:<br />

f<br />

3 ( ξ )<br />

error _ forw ard = ( − 2) (9)<br />

6<br />

So far, an obvious relation between error_x k+1/2 and<br />

error_forward is available from (6) and (9):<br />

error _ xk<br />

+ 1/2<br />

= (3/16)* error _ forward (10)<br />

The same method can be applied to get the error of<br />

y k+1 . In addition we have the following equation:<br />

error _ xk<br />

+ 1/2<br />

= (3/16)* error _ back (11)<br />

We have two error evaluations which are adaptively<br />

selected. The reason is the following. If y k+1 -yk≥y k -y k-1 , it<br />

indicates that the varying rate tends to get bigger, y k+1/2 is<br />

more likely to approach to y k . So the error of y k is adopted,<br />

and vice versa.<br />

The pseudo code is listed as follow to interpret this<br />

scheme clearly:<br />

If (y k+1 -y k ≥y k -y k-1 )<br />

error_x k+1/2 =(3/16)*error_forward;<br />

else<br />

error_x k+1/2 =(3/16)*error_back;<br />

end<br />

With the above equations, we can predict each 1-D<br />

pixel at horizontal and vertical directions<br />

L ( x ) = y * a+ y * b+ y * c+ error _ x (12)<br />

2 k+ 1/2 k− 1 k k+ 1 k+<br />

1/2<br />

B. 2-D pixels interpolation<br />

In the last subsection, 1-D pixels interpolation was<br />

discussed. In this subsection we will introduce the method<br />

for interpolating the ⊗ shown in figure 2, called 2-D<br />

pixels. We find that the pixels along the direction of local<br />

edge normally have similar values. Therefore, a precise<br />

prediction can be done if we predict the pixels using its<br />

neighboring pixels that are in the same direction of the<br />

edge.<br />

268

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!