CABAC Range Derivation Using Inverted LPS Probabilities

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing entropy coding techniques for CABAC in image and video coding, such as those in H.264/AVC and HEVC, face challenges in reducing computational complexity and hardware costs while maintaining coding performance, particularly due to large lookup tables required for probability updates.

Innovation Solution

The proposed method reduces the size of lookup tables by storing only the probability range from 0.0 to 0.5 and using inverted LPS probabilities for ranges from 0.5 to 1.0, deriving the LPS range through mathematical operations involving LPS and range indices, and employing right-shifting and multiplication operations to calculate the LPS range for encoding or decoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If lookup tables are used for probability updates in CABAC, then coding performance is maintained, but hardware cost and computational complexity increase due to large table sizes

Engineering Contradiction:
Improvecoding performanceVSAvoidhardware cost
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The probability range [0, 1) is segmented into two parts: [0, 0.5) and [0.5, 1). The lookup table only stores probability values for the first segment [0, 0.5). For probabilities in the second segment [0.5, 1), the system uses the inverted probability (1-p) which falls into the first segment, allowing table lookup with reduced size while maintaining coding performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

When the probability p is greater than or equal to 0.5, instead of directly accessing the lookup table with this probability value, the system inverts it by calculating (1-p) and uses this inverted value for table lookup. This inversion technique allows the system to handle probabilities in the [0.5, 1) range using the same compact table designed for [0, 0.5), thereby reducing hardware complexity while maintaining accuracy.

Inventive Principle:
Principle #13The other way round (Inversion)

2Measurement precision

If large lookup tables are used for range derivation, then coding accuracy is maintained, but computational complexity increases

Engineering Contradiction:
Improvecoding accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The range derivation process is segmented into two phases: pre-computation and runtime. During pre-computation, the system calculates and stores only the necessary probability values for the range [0, 0.5) in a compact lookup table. During runtime, the system uses simple operations (inversion and table lookup) to handle all probability ranges, avoiding the need for large pre-computed tables while maintaining coding accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary computation of probability values during table generation, but only for the essential range [0, 0.5). This preliminary action creates a compact reference table that can be efficiently used at runtime. The inversion operation for probabilities >= 0.5 is a simple arithmetic operation that does not require pre-computation, thus reducing overall computational complexity while maintaining precision.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If probability ranges 0.0 to 1.0 are stored in lookup tables, then complete probability coverage is achieved, but table size increases

Engineering Contradiction:
Improveprobability coverageVSAvoidtable size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

Instead of storing probability values for the complete range [0, 1) in the lookup table, the system stores values only for [0, 0.5). For any probability p >= 0.5, the system uses the inverted probability (1-p) which necessarily falls in the range (0, 0.5], allowing the same compact table to serve the entire probability space. This inversion approach achieves complete probability coverage with approximately half the table size.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The compact lookup table designed for probabilities in [0, 0.5) serves a dual purpose: it directly handles probabilities in this range and, through the inversion operation, also handles probabilities in [0.5, 1). This makes the table universal for the entire probability space, achieving multi-functionality with reduced size.

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

Data Source

PatentUS11265561B2Method and apparatus for range derivation in context adaptive binary arithmetic coding
Publication Date: 2022.03.01 HFI INNOVATION INC
  • US11265561B2 patent drawing
  • US11265561B2 patent drawing

AI summary

A method and apparatus of entropy coding of coding symbols using Context-Based Adaptive Binary Arithmetic Coder (CABAC) are disclosed. According to the present invention, CABAC encoding or decoding is applied to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with the current state of arithmetic coder. An LPS probability index corresponding to an inverted current probability or the current probability is derived depending on whether the current probability is greater than 0.5. A range index is derived for identifying one range interval containing the current range. An LPS range is then derived using one or more mathematical operations comprising calculating a multiplication of a first value related to the LPS probability index and a second value related to the range index n.