Method and apparatus for motion vector estimation for an image sequence
AssigneeTeradici Corporation
InventorDavid Victor Hobbs
Life of this patent
Estimating the term…
Abstract
A method and apparatus for motion vector estimation for a plurality of image frames including retrieving a reference hash value associated with a reference frame, wherein the reference hash value represents a spatially oriented block of pixels, generating a plurality of image hash values including a first hash value for a first area represented by a spatially oriented block of pixels of an image frame and computing a motion vector estimate using a plurality of first hash values and the reference hash value is disclosed.
Claims16
A method of determining a motion vector, comprising:
- partitioning all pixels of a reference image into a plurality of non-overlapping blocks, each non-overlapping block of the plurality of non-overlapping blocks having first pixel dimensions;
- generating, by a computer comprising one or more processors, a reference hash list comprising a reference hash value for each non-overlapping block of the plurality of non-overlapping blocks;
- partitioning an input image into a plurality of overlapping blocks comprising all possible block positions of blocks of the first pixel dimensions;
- generating, by the computer, a plurality of input hash values, wherein the plurality of input hash values comprises an input hash value for each overlapping block of the plurality of overlapping blocks;
- generating, for each reference hash value, of the reference hash list, that matches only one of a spatially associated selection of input hash values of the plurality of input hash values, a pixel offset to generate a pixel offset list, wherein the pixel offset is a spatial offset between the each reference hash value and the only one of the spatially associated selection, and wherein the pixel offset list is generated by using only the reference hash list as a reference to the reference image;
- and
- encoding the input image using a most common pixel offset of the pixel offset list as a motion vector estimate.
An apparatus for encoding an image comprising:
- at least one processor enabled to generate an input image and a reference image;
- and
- an encoder, coupled to the at least one processor, comprising:
- a block hash code calculator enabled to generate (i) a reference hash list comprising reference hash values from reference blocks generated by spatially partitioning the reference image into a maximum number of unique non-overlapping blocks of a common size and (ii) a plurality of input hash values from input blocks generated by spatially partitioning the input image into a maximum number of unique overlapping blocks of the common size;
- memory enabled to store portions of both the reference hash values and the plurality of input hash values;
- a motion vector estimator for generating, for each reference hash value of the reference hash list that matches only one of a spatially associated selection of input hash values of the plurality of input hash values, a pixel offset to generate a pixel offset list, wherein the pixel offset is spatial offset between the each reference hash value and the only one of the spatially associated selection, and wherein the pixel offset list is generated by using only the reference hash list as a reference to the reference image;
- and
- an image encoder enabled to encode the input image using a most common pixel offset of the pixel offset list as a motion vector estimate.
Dependencies are inferred from the claim text.