Hash-based encoder decisions for video coding
AssigneeMicrosoft Technology Licensing, LLC
InventorsBin Li, Ji-Zheng Xu
Life of this patent
Estimating the term…
Abstract
Innovations in encoder-side decisions that use the results of hash-based block matching are presented. For example, some of the innovations relate to ways of building hash tables that include some (but not all) uniform blocks. Other innovations relate to ways of determining motion vector resolution based on results of hash-based block matching. Still other innovations relate to scene change detection, including long-term reference picture selection and picture quality determination during encoding.
Claims21
A computing device comprising a processing unit and memory, the computing device configured to perform operations comprising:
- for each of multiple candidate blocks:
- evaluating whether the candidate block satisfies a complexity criterion;
- if the candidate block does not satisfy the complexity criterion:
- evaluating whether the candidate block satisfies a homogeneous selection criterion;
- if the candidate block satisfies the homogeneous selection criterion:
- determining a block hash value for the candidate block;
- and
- adding the block hash value to a hash table.
In a computing device, a method for encoding video to produce encoded data, including determining a motion vector (“MV”) precision for a unit of the video, the method comprising:
- splitting the unit of the video into multiple blocks;
- for each block of the multiple blocks of the unit:
- classifying the block into one of a plurality of categories, wherein at least one category of the plurality of categories is a homogeneous category that uses a homogeneous classification criteria, and at least one other category of the plurality of categories is a hash-match category that uses a hash-based matching classification criteria;
- based on the classifications for the multiple blocks, determining the MV precision for the unit of the video;
- and
- outputting the encoded data in a bitstream.
In a computing device, a method for detecting a scene change during video encoding, the method comprising:
- calculating a match rate for a current picture, wherein calculating the match rate comprises performing hash-based block matching for the current picture;
- calculating an average match rate for a plurality of previous pictures, wherein calculating the average match rate comprises performing hash-based block matching for the plurality of previous pictures;
- calculating a weighted average match rate;
- and
- when the match rate for the current picture is less than the weighted average match rate, determining that the current picture is a scene change picture.
21-25. (canceled)
Dependencies are inferred from the claim text.