Motion Vector Difference Coding With Unified Entropy Contexts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video codecs face inefficiencies in entropy coding of motion vector differences due to high context numbers, which lead to ineffective probability adaptation and increased coding complexity, and low context numbers result in poor symbol statistics grouping, affecting encoding quality.

Innovation Solution

Implementing a decoder and encoder that use context-adaptive binary entropy coding with a truncated unary code and Exp-Golomb code for motion vector differences, reducing the cutoff value to two bin positions, using a single context for both horizontal and vertical components, and employing advanced motion vector prediction methods to reduce the number of motion vector differences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a high number of contexts is provided for entropy coding of motion vector differences, then the coding can adapt to varying symbol statistics, but the coding complexity increases and probability adaptation becomes ineffective when contexts are visited too rarely

Engineering Contradiction:
Improvesymbol statistics estimation accuracyVSAvoidcoding complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the context models for horizontal and vertical motion vector difference components by using a single context for both components. This reduces the total number of contexts from multiple separate context models to a unified context model, thereby reducing coding complexity while maintaining effective probability adaptation through the combined statistics of both components.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If a high number of contexts is provided for motion vector difference coding, then different symbol statistics can be captured, but the selection among contexts requires inspection of neighboring bins which hampers decoding execution

Engineering Contradiction:
Improvesymbol statistics coverageVSAvoiddecoding execution speed
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent combines the context selection for horizontal and vertical motion vector difference components into a single unified context selection process. This eliminates the need for separate context selections and inspections for each component, thereby simplifying the decoding execution while still capturing the variability of symbol statistics through the unified context model.

Inventive Principle:
Principle #5Merging (Combining)

3Device complexity

If the number of contexts is provided too low, then coding complexity is reduced, but bins of highly varying actual symbol statistics are grouped together and probability estimation fails to effectively encode them

Engineering Contradiction:
Improvecoding complexityVSAvoidprobability estimation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent creates a universal context model that serves both horizontal and vertical motion vector difference components simultaneously. This single context model is designed to handle the symbol statistics of both components, making it multi-functional. By pooling the statistics from both components, the context model maintains effective probability estimation accuracy while reducing the total number of contexts and associated coding complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9743090B2Entropy coding of motion vector differences
Publication Date: 2017.08.22 DOLBY VIDEO COMPRESSION LLC
  • US9743090B2 patent drawing
  • US9743090B2 patent drawing
  • US9743090B2 patent drawing

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.