Entropy Encoding Partitioning for Adaptive VLC and PIPE Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current entropy coding schemes face challenges in achieving a balance between coding complexity and compression efficiency, particularly when dealing with time-varying source statistics and skewed probability distributions, as they often require complex adaptations and result in substantial redundancy.

Innovation Solution

The proposed solution involves decomposing syntax elements into multiple source symbols and categorizing them into substreams for VLC and PIPE coding, allowing for adaptive encoding that better matches the statistics of the data, thereby improving compression efficiency while maintaining moderate coding complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Huffman codes are used with variable-length code tables, then implementation is simple and efficient, but adaptation to time-varying source statistics is complex and redundant

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

Solution Approach 1:

The source symbols are divided into multiple substreams based on their probability characteristics. Each substream is processed by a dedicated entropy coder optimized for its specific probability distribution, allowing simple VLC tables to handle uniform distributions while other coders handle skewed distributions, thus resolving the contradiction between implementation simplicity and adaptability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects different entropy coding methods for different substreams based on the estimated probability distribution characteristics. This dynamic adaptation allows the system to maintain simple implementation for stable distributions while automatically switching to more complex coding methods when time-varying statistics are detected

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If arithmetic coding is used to handle time-varying statistics, then adaptability is improved, but coding complexity increases substantially

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

Solution Approach 1:

Instead of applying a single complex arithmetic coding method to all data, the system applies different coding methods to different substreams based on their local probability characteristics. Arithmetic coding or PIPE coding is applied only to substreams with skewed or time-varying distributions, while simple VLC is used for uniform distributions, thus reducing overall complexity while maintaining adaptability where needed

Inventive Principle:
Principle #3Local quality

3Device complexity

If PIPE coding is used instead of arithmetic coding, then coding complexity is reduced, but compression efficiency may be compromised

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

Solution Approach 1:

The system changes the coding parameters (entropy coding method) based on the probability distribution parameters of each substream. PIPE coding with optimized probability interval partitioning is used for skewed distributions where it provides good compression efficiency, while VLC is used for uniform distributions, thus achieving a balance between complexity and compression efficiency through parameter adaptation

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10404272B2Entropy encoding and decoding scheme
Publication Date: 2019.09.03 DOLBY VIDEO COMPRESSION LLC
  • US10404272B2 patent drawing
  • US10404272B2 patent drawing
  • US10404272B2 patent drawing

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 VLC 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, 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 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.