Adaptive Motion Vector Resolution Signaling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional video coding techniques face challenges in efficiently adapting motion vector precision for optimal compression, as encoding every motion vector to one-eighth-pixel precision requires excessive coding bits, while one-quarter-pixel precision may not provide sufficient accuracy.
Innovation Solution
The implementation of adaptive motion vector resolution selection, where video encoders choose between one-eighth and one-quarter pixel precision based on context-adaptive binary arithmetic coding (CABAC), signaling the precision for each motion vector, and using bilinear interpolation for chrominance data when necessary.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If one-eighth pixel precision is used for all motion vectors, then measurement precision is improved, but loss of substance increases due to excessive coding bits
Solution Approach 1:
The patent applies different motion vector precisions to different prediction units based on their specific characteristics. Some PUs use one-eighth pixel precision while others use one-quarter pixel precision, making the precision local rather than uniform across the entire block. This resolves the contradiction by applying high precision only where needed rather than universally.
Solution Approach 2:
The patent dynamically changes the motion vector precision parameter based on context conditions such as prediction unit size, block type, and motion characteristics. The precision is not fixed but adapts to the specific coding scenario, allowing the system to optimize between precision and bit cost by selecting appropriate precision levels for different situations.
2Loss of information
If one-quarter pixel precision is used for all motion vectors, then loss of information is reduced, but measurement precision deteriorates
Solution Approach 1:
The patent applies different motion vector precisions to different prediction units based on their specific characteristics. Some PUs use one-eighth pixel precision while others use one-quarter pixel precision, making the precision local rather than uniform across the entire block. This resolves the contradiction by applying high precision only where needed rather than universally.
Solution Approach 2:
The patent uses one-eighth pixel precision for only a subset of prediction units where it provides the most benefit, rather than applying it universally. This partial application of higher precision achieves sufficient accuracy for the video data while avoiding the excessive bit cost that would result from universal high-precision encoding.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
This approach optimizes bit usage by selectively applying higher precision when needed, improving compression efficiency without significantly increasing complexity, and ensures accurate representation of video data.
Implementation Method 1
calculating, using bilinear interpolation, values of one-sixteenth pixel positions of chrominance data of a reference block identified by the motion vector
Data Source
AI summary
A video encoder may be configured to adaptively select a sub-pixel precision for motion vectors used to encode video data. The video encoder may further entropy encode an indication of the sub-pixel precision using context adaptive binary arithmetic coding, where the context may correspond to the size of a block of video data for the motion vector. For example, the size may correspond to the depth of a coding unit, the size of a prediction unit of the coding unit, and/or a type for the prediction unit. The video encoder may also interpolate values for one-sixteenth pixel positions of chrominance data using bilinear interpolation. The video encoder may further encode a motion vector difference value for the motion vector using an encoding scheme corresponding to the sub-pixel precision of the motion vector. A video decoder may use similar, reciprocal techniques for decoding the video data.


