Patent ID: 8497873

Claim:
An image processing apparatus comprising: a processor that generates an output image from an input image having pixels arranged in mutually different first and second directions in a matrix, at least part of the input image being enlarged or reduced in the output image, the at least part of the input image being enlarged or reduced by determining a pixel value of a pixel assumed to exist at a position in the input image before the enlarging or reducing coordinate transformation, and using the pixel value thus determined as a pixel value of the output image, the image processing apparatus further comprising: an image data storage unit configured to hold the pixel values of the pixels in the input image; a correction value storage unit configured to hold, as correction values, for each of at least some of the pixels in the output image being used as representative pixels, a difference between the coordinate of the pixel in the first direction and the coordinate in the first direction before the coordinate transformation in the input image, for use in determining the pixel value of said each of the representative pixels; a reference pixel position calculation unit configured to determine using said processor a position of each pixel in the input image before the coordinate transformation by an interpolation calculation using the correction values for the representative pixels, in order to determine the pixel value of said each pixel in the output image, and output the result as a reference pixel position; a decision unit configured to decide using said processor, for each pixel in the output image, whether or not the correction values used in the interpolation calculation satisfy a predetermined condition; an image data reading unit configured to read from the image data storage unit, for each pixel in the output image, the pixel values of a plurality of pixels including said each pixel and pixels positioned in its vicinity, according to values of their reference pixel positions; an interpolation coefficient determination unit configured to determine using said processor, for said each pixel in the output image, first interpolation coefficients according to a value of its reference pixel position; and an interpolation calculation unit configured to obtain using said processor the pixel value in the output image from the values of said plurality of pixels and the first interpolation coefficients; wherein the interpolation coefficient determination unit includes an interpolation coefficient calculation unit configured to determine using said processor second interpolation coefficients from said value of its reference pixel position and a predetermined function, and an interpolation coefficient switching unit configured to output using said processor the second interpolation coefficients or predetermined third interpolation coefficients as the first interpolation coefficients according to the reference pixel position calculated by the reference pixel position calculation unit and the decision by the decision unit.