Patent ID: 8463074

Claim:
A method for rotating a source image by a first non-zero angle, comprising: defining a template for the source image, the template representing a rotation of the source image about an axis of the source image by a second angle, where the second angle is the negative of the first non-zero angle that the source image is to be rotated; determining overlap between the template and the source image; separating the template into a plurality of strips covering at least the area of overlap between the template and the source image; for each strip: identifying an initial pixel in the source image within the strip and storing the image data of the initial pixel; storing the image data of all remaining pixels within both the strip and the overlap in a database format in which the all remaining pixels is defined by a Y and X offset from the initial pixel, wherein said storing the image data of all remaining pixels within both the strip and the overlap further comprises: determining the initial pixel with coordinates in the source image as Ymin and Xmin; establishing an origin pixel as having Y=Ymin and X=Xmin; obtaining the image data sequentially for the origin pixel and each horizontally adjacent pixel from the origin pixel until the end of the overlap is reached, storing the image data in a database format in which each horizontally adjacent pixel is defined by the offset from Ymin and an offset from Xmin; incrementing the Ymin by one if there are any remaining pixel rows within both the strip and the overlap; and repeating at least the establishing, obtaining, storing and incrementing until all of the pixels within both the strip and the overlap are stored; constructing a desired rotated image from the source image, for each pixel in the rotated destination image, identifying at least one pixel from the source image that corresponds to the source image as rotated per the first angle, the identifying comprising: identifying the strip that corresponds to the target section of the source image; and using the X and Y offset data to locate the image data in the database format.