Adaptive motion estimation
First Claim
1. A non-transitory computer readable medium storing a computer program that when executed by at least one processor performs motion estimation for an image array obtained from a current image in a sequence of video images, the computer program comprising sets of instructions for:
- performing a first motion estimation process that searches for the image array in a reference image in the sequence of images (i) to identify a first motion vector that provides a first estimate of a motion of the image array between the current image and the reference image, and (ii) to obtain a first error estimate for the first estimate of the motion of the image array;
when the first error estimate is greater than a threshold value, performing a second different motion estimation process that searches for the image array in the reference image (i) to identify a second motion vector that provides a second estimate of the motion of the image array between the current image and the reference image, and (ii) to obtain a second error estimate for the second estimate of the motion of the image array;
when the second error estimate is greater than the threshold value, performing a third motion estimation process to obtain a third estimate of the motion of the image array between the current image and the reference image; and
encoding said current image based the motion of the image array.
0 Assignments
0 Petitions
Accused Products
Abstract
Some embodiments of the invention provide a method for adaptively performing motion estimation. In some embodiments, the method initially performs a first motion estimation operation. It then determines whether the estimated error in the result of the first motion estimation is greater than a particular threshold. If not, the method uses the results of the first motion estimation operation. Otherwise, the method selects another motion estimation operation. The method continues in this manner until it performs a motion estimation operation that results in an acceptable estimated error, or until it tries all the motion estimation operations at its disposal. When the method cannot identify a motion estimation operation that produces results with an acceptable estimated error, the method selects the result of the motion estimation operation that produced the best results.
72 Citations
25 Claims
-
1. A non-transitory computer readable medium storing a computer program that when executed by at least one processor performs motion estimation for an image array obtained from a current image in a sequence of video images, the computer program comprising sets of instructions for:
-
performing a first motion estimation process that searches for the image array in a reference image in the sequence of images (i) to identify a first motion vector that provides a first estimate of a motion of the image array between the current image and the reference image, and (ii) to obtain a first error estimate for the first estimate of the motion of the image array; when the first error estimate is greater than a threshold value, performing a second different motion estimation process that searches for the image array in the reference image (i) to identify a second motion vector that provides a second estimate of the motion of the image array between the current image and the reference image, and (ii) to obtain a second error estimate for the second estimate of the motion of the image array; when the second error estimate is greater than the threshold value, performing a third motion estimation process to obtain a third estimate of the motion of the image array between the current image and the reference image; and encoding said current image based the motion of the image array. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer readable medium storing a computer program that when executed by at least one processor performs motion-estimation for an image array obtained from a current image in a sequence of video images, the computer program comprising sets of instructions for:
iteratively; selecting a particular motion-estimation searching process from a list of at least three different motion-estimation searching processes that are sorted from an expected fastest to an expected slowest; performing the particular motion-estimation searching process that searches for the image array in a reference image in the sequence of video images (i) to identify a motion vector that provides an estimate of a motion of the image array and (ii) to identify a motion-estimation error for the estimate of the motion of the image array, the iterative selecting and performing terminated when the identified motion-estimation error meets a same threshold; and encoding said current image based the motion of the image array. - View Dependent Claims (14, 15, 16, 17)
-
18. A method of performing motion estimation for an image array obtained from a current image in a sequence of video images, the method comprising:
-
performing a first motion estimation process that searches for the image array in a reference image in the sequence of images (i) to identify a first motion vector that provides a first estimate of a motion of the image array between the current image and the reference image, and (ii) to obtain a first error estimate for the first estimate of the motion of the image array; when the first error estimate is greater than a threshold value, performing a second different motion estimation process that searches for the image array in the reference image (i) to identify a second motion vector that provides a second estimate of the motion of the image array between the current image and the reference image, and (ii) to obtain a second error estimate for the second estimate of the motion of the image array; when the second error estimate is greater than the threshold value, performing a third motion estimation process to obtain a third estimate of the motion of the image array between the current image and the reference image; and encoding said current image based the motion of the image array. - View Dependent Claims (19, 20)
-
-
21. A method of performing motion-estimation for an image array obtained from a current image in a sequence of video images, the method comprising:
iteratively; selecting a particular motion-estimation searching process from a list of at least three different motion-estimation searching processes that are sorted from an expected fastest to an expected slowest; performing the particular motion-estimation searching process that searches for the image array in a reference image in the sequence of video images (i) to identify a motion vector that provides an estimate of a motion of the image array and (ii) to identify a motion-estimation error for the estimate of the motion of the image array, the iterative selecting and performing terminated when the identified motion-estimation error meets a same threshold; and encoding said current image based the motion of the image array. - View Dependent Claims (22, 23, 24, 25)
Specification