Patent ID: 7903738

Claim:
An optimal correlation matching method implemented in an optical mouse for determining track behavior, which applies a video stream having a 0-th image, a first image and a second image for locating a motion vector associated with a block of the first image in the second image, wherein the images are captured from a sampling plane by a pixel array, each image has a plurality of blocks in rows and columns and each block has a plurality of pixels in rows and columns, the method comprising the steps: a search window determining step, which determines a location and size of a search window of the second image; a search window dividing step, which divides the search window into two mutually exclusive search subdivisions, one of the two search subdivisions consisting of odd pixels of the search window and the other of the two subdivisions consisting of even pixels of the search window; a subdivision selecting step, which selects one from the two search subdivisions as an operating search window; a first correlation match computing step, which locates a center of the block respectively at each position of the operating search window such that upon each position of the center located, pixels of the block of the first image in accordance with the operating search window are applied to corresponding pixels of the second image for performing match operation to thus produce a first set of measure results; a first motion vector finding step, which selects a respective position that has the smallest value among the first set of measure results and accordingly computes a vector of the respective position and the center of the block of the first image as the motion vector of the block; a displacement estimating step, which estimates an estimated motion vector of the block present between the first and the second images according to a predetermined motion vector of the block present between the 0-th and the first images, thereby obtaining an estimated center of the estimated motion vector; a second correlation match computing step, which applies pixels of the block in accordance with upper left, upper right, lower left and lower right positions of the estimated center of the estimated motion vector to corresponding pixels of the second image for performing match operation, thereby producing a second set of measure results; and a second motion vector finding step, which selects a final position that has the smallest value among all measure results in the first and the second sets and accordingly computes a vector of the final position and the center of the block of the first image as the motion vector of the block.