Patent ID: 7742525
Filing Date: 2010-06-22
Classification: H04N

Abstract:
1. A computer-implemented method of performing motion estimation for an array of image values obtained from a current image, the method comprising: analyzing a plurality of motion estimation searching processes to determine an expected amount of time to complete operations of each motion estimation searching process; determining a sorted order for performing the plurality of motion estimation searching processes, the sorted order comprising a first motion estimation searching process that, based on the analysis, is expected to be the fastest process in the plurality of processes and a last motion estimation searching process that, based on the analysis, is expected to be the slowest process in the plurality of processes; performing the first motion estimation searching process to obtain a first estimate of the motion of an image array between the current image and a reference image, and to obtain a first error estimate for the first motion estimate, wherein performing the first motion estimation searching process comprises identifying a first motion vector by performing a first search algorithm to search for the image array in the reference image; when the first error estimate is larger than a particular threshold, performing a second motion estimation searching process that is the second fastest process in the sorted order to obtain a second estimate of the motion of the image array, and to obtain a second error estimate for the second motion estimate, wherein performing the second motion estimation process comprises identifying a second motion vector by performing a second search algorithm to search for the image array in the reference image, wherein the first and second search algorithms are different; when the second error estimate is larger than the particular threshold, performing a third motion estimation searching process that is the third fastest process in the sorted order to obtain a third estimate of the motion of the image array, and to obtain a third error estimate for the third motion estimate; selecting a motion vector produced by the motion estimation searching process with a smallest error estimate; and encoding said current image using the selected motion vector.