In this paper we propose a novel image interpolation algorithm which
preserves edges and keeps a natural texture of interpolated images. The
algorithm is based on an idea that only pixels that belong to the same side
of an edge should be used in interpolation of pixels that belong to an edge.
Beside similarity-based separation of known interpolation pixels a
gravity-like interpolation coefficient set is also introduced in order to
support different number of interpolation pixels and their location in two
dimensional plane. The algorithm also applies arbitrary scaling factors,
thus offering a broader scope of applications. Use of a local set of
interpolating points makes the proposed algorithm suitable for applications
on resource-limited platforms. The edge performance is demonstrated for
structured geometric forms, while a general interpolated image quality is
evaluated using objective measures and subjective comparisons. A comparison
with some relevant interpolation algorithms shows the desirable tradeoff
between image quality (sharpness and texture) and requested computing power
(run-time).