Binary Arithmetic Coding Probability Update for Video Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding standards, such as HEVC, face limitations in efficiently updating probability estimates during binary arithmetic coding, leading to suboptimal compression efficiency and increased computational complexity.

Innovation Solution

The method involves determining whether a bin value is equal to the least probable state and updating the probability estimate by conditionally adding 2N−d, where N is the width in bits of the probability estimate and d is a parameter controlling the updating speed, using techniques like bit-shifting and multiplication to refine the probability estimation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional probability updating methods are used in binary arithmetic coding, then the implementation is simpler, but the compression efficiency is suboptimal

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent modifies the probability updating mechanism by introducing a conditional addition operation (adding 2N−d to the probability estimate) that adapts the update step size based on the bin value and least probable state determination. This parameter adaptation allows more precise probability tracking for improved compression efficiency while maintaining manageable computational complexity through selective updating.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The probability estimate is dynamically adjusted based on the determined bin value and the least probable state. The updating speed is controlled by parameter d, which allows the system to adapt the probability refinement rate dynamically. This dynamic approach enables the encoder to respond to changing video data characteristics, improving compression efficiency without requiring uniformly high computational effort throughout the encoding process.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If probability updating speed is increased, then adaptation to changing video data characteristics is improved, but computational overhead increases

Engineering Contradiction:
Improveadaptation to video data characteristicsVSAvoidcomputational overhead
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent applies partial updating by conditionally adding 2N−d only in specific cases (when bin value equals least probable state). This selective partial action provides sufficient adaptation to video data characteristics without performing full probability updates at every step, thereby reducing computational overhead while maintaining adequate adaptability for effective compression.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12095996B2Systems and methods for performing binary arithmetic coding in video coding
Publication Date: 2024.09.17 SHARP KK
  • US12095996B2 patent drawing
  • US12095996B2 patent drawing
  • US12095996B2 patent drawing

AI summary

A method for subdividing an interval during entropy decoding for a bitstream representing a set of video pictures is provided. A sub-interval value is computed by (i) performing an initial right bit-shifting operation on a probability estimator value to reduce a length in bits of the probability estimator value, (ii) multiplying the right bit-shifted probability estimator value by a range value representing the interval, (iii) performing another right bit-shifting operation on a result of the multiplication, and (iv) adding a constant value to a result of the other right bit-shifting operation, wherein the probability estimator value is associated with a probability of a bin having a particular value. The sub-interval value computed based on the right bit-shifted probability estimator value is used to update the interval.