Patent ID: 7567294

Claim:
A method comprising: determining a lowest-score interpolation direction among a plurality of interpolation directions; calculating a candidate pixel value by interpolating along said lowest-score interpolation directions; applying a median function to a set of seven pixel values provided as inputs to the median function, said set of seven pixel values consisting of: (a) said candidate pixel value; (b) three pixel values from a line of pixels that is immediately above a first pixel location that is currently being interpolated, said three pixel values consisting of: (i) a first pixel value that corresponds to a second pixel location that is immediately above said first pixel location, (ii) a second pixel value that corresponds to a third pixel location that is immediately to the right of the second pixel location, and (iii) a third pixel value that corresponds to a fourth pixel location that is immediately to the left of the second pixel location; and (c) three pixel values from a line of pixel values that is immediately below said first pixel location, said three pixel values from said line of pixel values that is immediately below said first location consisting of: (i) a fourth pixel value that corresponds to a fifth pixel location that is immediately below said first pixel location, (ii) a fifth pixel value that corresponds to a sixth pixel location that is immediately to the right of the fifth pixel location, and (iii) a sixth pixel value that corresponds to a seventh pixel location that is immediately to the left of the fifth pixel location, said median function to select a median value of said set of seven pixel values as an output; and using said output from the median function as an interpolated pixel value for the first pixel location; wherein said determining includes, for each of said plurality of interpolation directions, calculating a difference between (a) a seventh pixel value in said line of pixels that is immediately above said pixel location that is currently being interpolated; and (b) an eighth pixel value that is along said each interpolation direction from said seventh pixel value, said eighth pixel value being in said line of pixels that is immediately below said pixel location that is currently being interpolated; and wherein said determining further includes, for each of said plurality of interpolation directions, calculating a sum of absolute differences between (a) a first rectangular group of pixel values centered at a locus of said seventh pixel value, and (b) a second rectangular group of pixel values centered at a locus of said eighth pixel value; wherein said plurality of interpolation directions includes nine interpolation directions; and wherein each of said rectangular groups has dimensions of three pixels down by seven pixels across.