Motion Vector Precision Scaling for Video Coding Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding standards face challenges in efficiently handling higher resolution videos due to increased bandwidth demands and complex relationships between video quality, data representation, encoding complexity, and error sensitivity, necessitating improved compression performance.
Innovation Solution
The technology provides methods for selecting and applying motion vector ranges, determining motion vector precision, and performing conversions between video blocks and bitstream representations, including clipping and scaling operations to optimize video coding, particularly in standards like HEVC and future codecs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If higher resolution video is used, then video quality is improved, but bandwidth demand increases
Solution Approach 1:
The patent applies parameter changes by dynamically adjusting motion vector precision based on block characteristics and motion complexity. By varying the precision parameter (e.g., 1/4-pel, 1/8-pel, 1/16-pel) rather than using a fixed high precision for all blocks, the system achieves high video quality where needed while reducing overall bandwidth consumption.
Solution Approach 2:
The patent implements local quality by applying different motion vector precision levels to different video blocks based on their specific characteristics. High precision (1/16-pel) is applied only to blocks with high motion complexity or important visual content, while lower precision is used for static or simple regions, optimizing the trade-off between quality and bandwidth.
2Measurement precision
If motion vector precision is increased, then video quality is improved, but computational complexity increases
Solution Approach 1:
The patent dynamically changes the precision parameter based on measured motion complexity and block characteristics. The system starts with a base precision and increases it only when necessary, avoiding the constant high computational load that would result from using maximum precision for all blocks.
Solution Approach 2:
Different precision levels are applied locally to different blocks based on their motion characteristics. Blocks with high motion complexity receive higher precision (1/16-pel), while static or simple blocks use lower precision, thereby reducing overall computational complexity while maintaining quality where it matters.
3Measurement precision
If motion vector range is expanded, then video quality is improved, but coding complexity increases
Solution Approach 1:
The patent adjusts the motion vector range parameter dynamically based on the selected precision level and block characteristics. When high precision is required, the corresponding expanded range is applied, but only to necessary blocks, thereby managing coding complexity through selective parameter adjustment.
Solution Approach 2:
Expanded motion vector ranges are applied locally only to blocks that require high precision motion compensation. This selective application reduces the overall coding complexity compared to applying expanded ranges to all blocks, while still achieving improved video quality where needed.
4Measurement precision
If internal bit-depth is increased to M bits, then motion vector precision is improved, but processing complexity increases
Solution Approach 1:
The patent uses M-bit internal representation (where M > 16) selectively for blocks requiring high precision, while using standard precision for other blocks. This dynamic parameter adjustment reduces the overall processing complexity compared to using M-bit precision throughout the entire video stream.
Solution Approach 2:
High bit-depth processing is applied locally only to specific blocks where the additional precision provides measurable quality improvement. This selective high-precision processing reduces the total processing complexity while maintaining high motion vector precision where it is most beneficial.
Data Source
AI summary
A method for video processing is provided to comprise: determining a motion vector precision of one or more motion vectors related to a current video block of a video; selecting, based on the motion vector precision, a motion vector range; and performing, based on the motion vector range, a conversion between the current video block and a bitstream representation of the video.


