Motion Vector Difference Entropy Coding With Shared Bin Contexts
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video codecs face challenges in achieving high coding efficiency for entropy coding of motion vector differences due to issues with context adaptation and probability estimation, particularly when the number of contexts is either too high or too low.
Innovation Solution
The proposed solution involves using a decoder and encoder configuration that binarizes horizontal and vertical components of motion vector differences using a truncated unary code and a combination of a prefix and an Exp-Golomb code, with a cutoff value of two and an order of one for the Exp-Golomb code, and employing context-adaptive binary entropy decoding with a single context per bin position.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a high number of contexts is provided for coding motion vector differences, then coding flexibility increases, but coding complexity increases and probability adaptation fails to perform effectively
Solution Approach 1:
The invention segments the context selection process by dividing the motion vector difference coding into multiple bin positions, where each bin position uses a dedicated context. This segmentation allows the system to maintain multiple contexts without increasing overall complexity, as each context is assigned to a specific bin position rather than requiring complex context selection logic.
Solution Approach 2:
The invention applies local quality by assigning different contexts to different bin positions based on their specific statistical characteristics. Each bin position receives a context optimized for its local probability distribution, improving coding efficiency without requiring a global increase in the number of contexts. This localized approach resolves the contradiction by providing adaptability where needed while maintaining simplicity elsewhere.
2Adaptability or versatility
If a high number of contexts is provided for coding motion vector differences, then coding flexibility increases, but probability estimation fails to effectively adapt
Solution Approach 1:
By segmenting the coding process into multiple bin positions with dedicated contexts, the invention ensures that each context receives sufficient data for accurate probability estimation. This segmentation prevents the dilution of probability adaptation that occurs when too many contexts compete for limited data, thereby maintaining both flexibility and estimation accuracy.
Solution Approach 2:
Each context serves itself by being dedicated to a specific bin position, allowing it to accumulate statistics independently and adapt its probability estimation without interference from other contexts. This self-service mechanism ensures reliable probability adaptation while maintaining coding flexibility through the multi-context structure.
3Adaptability or versatility
If multiple contexts are provided for a certain bin, then coding adaptability increases, but decoding complexity increases due to inspection of neighboring bins
Solution Approach 1:
The invention segments the context assignment such that each bin position has its own dedicated context, eliminating the need for complex context selection during decoding. This segmentation approach maintains coding adaptability through multiple contexts while simplifying decoding by removing the need to inspect neighboring bins for context selection.
Solution Approach 2:
By assigning contexts locally to specific bin positions rather than requiring global context selection, the invention improves decoding ease. Each bin position independently uses its assigned context without requiring inspection of neighboring bins, thereby maintaining coding adaptability while simplifying the decoding process.
4Device complexity
If a low number of contexts is provided, then coding complexity decreases, but bins of highly varying actual symbol statistics are grouped together
Solution Approach 1:
The invention segments the motion vector difference coding into multiple bin positions, each with its own context. This segmentation allows the system to maintain low overall complexity while avoiding the grouping of bins with highly varying statistics, as each bin position can be assigned a context optimized for its specific statistical characteristics.
Solution Approach 2:
By applying local quality through dedicated contexts for each bin position, the invention ensures that bins with highly varying statistics are not grouped together. Each bin position receives a context tailored to its local statistics, maintaining coding efficiency without requiring a high number of contexts overall.
Data Source
AI summary
An entropy decoder is configured to, for horizontal and vertical components of motion vector differences, derive a truncated unary code from the data stream using context-adaptive binary entropy decoding with exactly one context per bin position of the truncated unary code, which is common for horizontal and vertical components of the motion vector differences, and an Exp-Golomb code using a constant equi-probability bypass mode to obtain the binarizations of the motion vector differences. A desymbolizer is configured to debinarize the binarizations of the motion vector difference syntax elements to obtain integer values of the horizontal and vertical components of the motion vector differences. A reconstructor is configured to reconstruct a video based on the integer values of the horizontal and vertical components of the motion vector differences.


