CABAC Context Reduction via Bin-Level Bypass and Sharing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity and memory requirements of Context-Based Adaptive Binary Arithmetic Coding (CABAC) in High Efficiency Video Coding (HEVC) are increased due to the use of multiple contexts for syntax elements, which leads to higher computational complexity and memory usage.

Innovation Solution

Implementing a reduced number of contexts by using a bin-level bypass mode and bin-level context sharing for syntax elements like merge_idx, ref_idx, pred_type, and cu_qp_delta, where bins with specific indices are coded in bypass mode or share a common context, thereby reducing the total number of contexts required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple contexts are used for CABAC coding of syntax elements, then coding accuracy and adaptability are improved, but device complexity and memory requirements increase

Engineering Contradiction:
Improvecoding adaptabilityVSAvoidcontext modeling complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple bin contexts into a single shared context for syntax elements with limited bin counts. Specifically, bins with indices greater than or equal to 2 share a common context, reducing the total number of contexts from multiple to just two (one for bins 0-1 and one shared for bins 2+). This merging approach maintains coding adaptability while significantly reducing device complexity and memory requirements.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared context serves multiple functions by being used for coding multiple bins (bins 2, 3, and potentially higher indices) simultaneously. This universal context model allows a single context structure to handle multiple bin coding tasks, eliminating the need for separate dedicated contexts for each bin and thereby reducing overall system complexity.

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

2Measurement precision

If multiple contexts are used for CABAC coding, then coding precision is improved, but memory requirements increase

Engineering Contradiction:
Improvecoding precisionVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent combines multiple bin contexts into a single shared context, reducing memory usage from storing separate context structures for each bin to storing only two context structures. This merging maintains coding precision by preserving the ability to model probability distributions for different bins through the shared context mechanism.

Inventive Principle:
Principle #5Merging (Combining)

3Device complexity

If bin-level bypass mode is applied to reduce context number, then device complexity is reduced, but coding accuracy may deteriorate

Engineering Contradiction:
Improvecontext modeling complexityVSAvoidcoding accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent applies different coding strategies to different bins based on their characteristics. Bins 0 and 1 use traditional context-based coding to maintain high accuracy for these specific bins, while bins 2 and higher use the shared context or bypass mode to reduce complexity. This local differentiation allows the system to optimize between accuracy and complexity based on the specific requirements of each bin.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10187661B2Method and apparatus for context adaptive binary arithmetic coding of syntax elements
Publication Date: 2019.01.22 HFI INNOVATION INC
  • US10187661B2 patent drawing
  • US10187661B2 patent drawing
  • US10187661B2 patent drawing

AI summary

In a method and apparatus for context-adaptive binary arithmetic coding (CABAC) of a syntax element, the bin string corresponding to the syntax element is processed by context-adaptive arithmetic coding with a reduced number of contexts using the bin-level bypass mode, bin-level context sharing, or both. The syntax element belongs to a group comprising merge_idx, ref_idx_1c/ref_idx_10/ref_idx_11, pred_type, and cu_qp_delta. In one embodiment, the syntax element corresponds to merge_idx and three bins of the bin string with bin indices corresponding to 1, 2 and 3 are coded in the bin by-pass mode. In another embodiment, the syntax element corresponds to ref_idx_1c/ref_idx_10/ref_idx_11 and one or more bins of the bin string with bin indices larger than 1 for larger than 2 are coded in the bin bypass mode.