Partitioned Entropy Coding for Time-Varying Syntax Statistics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing entropy coding schemes face challenges in achieving a balance between coding complexity and compression efficiency, particularly when dealing with time-varying source statistics and higher-order probability modeling, with Huffman codes being complex to adapt and arithmetic coding being computationally intensive.

Innovation Solution

The proposed solution involves decomposing the value range of syntax elements into a sequence of partitions, where components within each partition are coded separately using Variable-Length Coding (VLC) and Arithmetic Coding, allowing for a more efficient trade-off between coding complexity and compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Huffman codes are used for entropy coding, then implementation is efficient with VLC tables, but adaptation to time-varying source statistics is complex and redundant for dominant alphabet values

Engineering Contradiction:
Improveimplementation efficiencyVSAvoidadaptation to time-varying statistics
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent segments the probability distribution into multiple discrete probability levels (e.g., 8 levels from 0.00 to 0.99). Each level has its own pre-computed VLC table. This segmentation allows the system to adapt to time-varying statistics by simply switching between pre-computed tables rather than dynamically adapting a single table, thus maintaining implementation efficiency while improving adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-computing multiple VLC tables for different probability levels before actual encoding. These pre-computed tables are stored and ready for use. When the source statistics change, the system can immediately switch to the appropriate pre-computed table without performing complex real-time adaptation, thus resolving the contradiction between implementation efficiency and adaptability.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If arithmetic coding is used for entropy coding, then handling of time-varying statistics and higher-order modeling is consistent and adequate, but implementation complexity is substantially higher than VLC

Engineering Contradiction:
Improvehandling of time-varying statisticsVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the continuous probability range into discrete levels and uses separate VLC tables for each level. This segmentation transforms the complex continuous arithmetic coding problem into multiple simpler discrete VLC problems, maintaining adaptability to time-varying statistics while significantly reducing implementation complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates multiple copies of VLC tables, each optimized for a specific probability level. Instead of implementing one complex arithmetic coding engine, the system uses simpler VLC table copies that can be selected based on the current probability estimate, thus reducing implementation complexity while maintaining versatility.

Inventive Principle:
Principle #26Copying

3Device complexity

If PIPE coding is used as alternative to arithmetic coding, then complexity is reduced, but compression efficiency is lower than arithmetic coding

Engineering Contradiction:
Improvecoding complexityVSAvoidcompression efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent applies local quality by using different coding strategies for different probability levels. For each local probability level, the optimal VLC table is selected. This localized optimization ensures that each segment of the probability space is handled with the most appropriate coding method, improving overall compression efficiency while keeping complexity manageable through the use of pre-computed tables.

Inventive Principle:
Principle #3Local quality

4Ease of manufacture

If Huffman codes are used for dominant alphabet values with p > 0.5, then simple VLC tables can be used, but redundancy becomes substantial

Engineering Contradiction:
Improvesimplicity of VLC tablesVSAvoidredundancy
Core Design Contradiction:
Ease of manufactureVSLoss of information

Solution Approach 1:

The patent introduces dynamics by making the VLC table selection adaptive to the actual probability level. Instead of using a fixed VLC table that assumes uniform or worst-case distributions, the system dynamically selects from multiple pre-computed tables based on the actual probability estimate. This allows optimal table selection for dominant alphabet values, reducing redundancy while maintaining simplicity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2768145B1Entropy encoding and decoding scheme
Publication Date: 2016.03.23 GE VIDEO COMPRESSION LLC
  • EP2768145B1 patent drawingFigure 1A
  • EP2768145B1 patent drawingFigure 1B~1C
  • EP2768145B1 patent drawingFigure 2A

AI summary

Decomposing a value range of the respective syntax elements into a sequence of n partitions with coding the components of z laying within the respective partitions separately with at least one by VCL coding and with at least one by PIPE or entropy coding is used to greatly increase the compression efficiency at a moderate coding overhead since the coding scheme used may be better adapted to the syntax element statistics. Accordingly, in accordance with embodiments, syntax elements are decomposed into a respective number n of source symbols si with i=1...n, the respective number n of source symbols depending on as to which of a sequence of n partitions (1401-3) into which a value range of the respective syntax elements is sub-divided, a value z of the respective syntax elements falls into, so that a sum of values of the respective number of source symbols si yields z, and, if n>1; for all i=1...n-1, the value of si corresponds to a range of the ith partition.