Sub-PU Bi-directional Motion Compensation in Video Coding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding systems face challenges in minimizing data signaled for motion vector prediction while maintaining accuracy, as bi-directional motion compensation methods require significant data for accurate prediction, leading to increased costs and potential inaccuracies in predicted blocks.
Innovation Solution
Deriving a first motion vector from one direction and signaling a second motion vector in the other direction to improve accuracy while reducing data signaling costs, specifically by selecting the direction and picture for the first motion vector to enhance prediction accuracy and reduce data transmission in video codecs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional bi-directional motion compensation methods signal reference indexes for each motion vector, then motion prediction accuracy is improved, but the amount of data required for reconstructing coding blocks increases
Solution Approach 1:
The patent extracts only the essential motion information needed for prediction by deriving one motion vector from reference indexes and signaling only the difference for the second motion vector, rather than signaling complete motion vectors for both directions. This reduces the data quantity while preserving prediction accuracy.
Solution Approach 2:
The patent changes the parameter representation from signaling complete motion vectors to signaling motion vector differences relative to a derived reference. This parameter transformation reduces the bitrate required while maintaining the precision needed for accurate motion compensation.
2Measurement precision
If bi-directional motion compensation signals comprehensive motion information, then prediction accuracy is improved, but coding complexity increases
Solution Approach 1:
The patent performs preliminary derivation of the first motion vector from available reference indexes before encoding the second motion vector. This preliminary action simplifies the subsequent encoding process by reducing the amount of information that needs to be signaled and processed.
Solution Approach 2:
The patent introduces an intermediary derived motion vector that serves as a reference for the second motion vector. This intermediary simplifies the relationship between the two motion vectors and reduces the complexity of signaling and processing comprehensive motion information.
3Measurement precision
If motion vectors are derived at sub-block level, then motion accuracy is improved, but processing complexity increases
Solution Approach 1:
The patent segments the prediction unit into sub-blocks and derives motion vectors at the sub-block level rather than at the entire prediction unit level. This segmentation allows for more accurate motion representation while managing processing complexity through systematic derivation from neighboring blocks.
Solution Approach 2:
The patent applies different motion vector derivation strategies to different sub-blocks based on their local characteristics and available neighboring information. This local quality approach improves motion accuracy in regions with distinct motion patterns while keeping processing complexity manageable through selective derivation.
Data Source
AI summary
Techniques are described in which a video decoder is configured to partition, into a plurality of sub-blocks, a block of a picture of the video data. The video decoder is further configured to, for each respective sub-block of the plurality of sub-blocks, derive a respective first motion vector of the respective sub-block based on motion information for at least two blocks neighboring the respective sub-block. The video decoder also determines, based on a respective motion vector difference for the respective sub-block signaled in a bitstream, a second motion vector for the respective sub-block. Additionally, the video decoder generates, based on the first motion vector of the respective sub-block and the second motion vector of the respective sub-block, a predictive block for the respective sub-block.


