Entropy Encoding with Partitioned Symbol Streams for Better Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing entropy coding methods, such as Huffman codes and arithmetic coding, face challenges in adapting to time-varying source statistics and higher-order probability modeling, leading to inefficiencies in compression and increased complexity.

Innovation Solution

The proposed solution involves decomposing syntax elements into multiple source symbols and categorizing them into two streams: one for VLC coding and the other for PIPE or arithmetic coding, allowing for better adaptation to statistical changes and improved compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If Huffman codes with VLC tables are used for entropy coding, then implementation is simple and efficient, but adaptation to time-varying source statistics is demanding in terms of algorithmic complexity and implementation costs

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

Solution Approach 1:

The patent segments the source symbols into multiple categories based on their probability characteristics. Different VLC tables are prepared for different symbol categories, allowing the system to adapt to time-varying statistics by selecting appropriate tables for different symbol types without requiring complete reconfiguration of the coding system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic adaptation by maintaining multiple VLC tables and selecting appropriate tables based on current source statistics. The system can switch between different VLC tables as source probability distributions change over time, enabling adaptation without the high complexity of traditional adaptive Huffman coding.

Inventive Principle:
Principle #15Dynamics

2Productivity

If arithmetic coding is used to handle adaptive and higher-order probability modeling, then coding efficiency is improved, but implementation complexity increases substantially compared to VLC

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

Solution Approach 1:

The patent segments the coding process into multiple independent VLC coding stages, each handling specific symbol categories. This segmentation allows the system to achieve adaptive and higher-order probability modeling through multiple passes of simpler VLC coding rather than requiring a single complex arithmetic coding operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies multiple rounds of VLC coding to progressively refine the compression. Instead of using a single complex arithmetic coding operation, the system performs multiple simpler VLC coding passes, each contributing to the overall compression efficiency while keeping individual operation complexity low.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If multiple sets of VLC tables are used for higher-order probability modeling, then coding accuracy is improved, but system complexity and memory requirements increase

Engineering Contradiction:
Improveprobability modeling accuracyVSAvoidnumber of VLC tables
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the symbol space into multiple categories, with each category having its own VLC table optimized for that category's probability distribution. This segmentation allows accurate higher-order probability modeling by capturing different statistical patterns in different symbol categories without requiring a single overly complex universal table.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies the principle of local quality by creating VLC tables that are optimized for specific local characteristics of different symbol categories. Each VLC table is tailored to the probability distribution of its corresponding symbol category, providing locally optimal coding that collectively achieves high overall accuracy.

Inventive Principle:
Principle #3Local quality

4Device complexity

If PIPE coding is used as an alternative to arithmetic coding, then complexity is reduced, but it still has higher complexity than VLC coding

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

Solution Approach 1:

The patent segments the coding task into multiple VLC coding operations rather than using a single PIPE or arithmetic coding operation. This segmentation allows the system to achieve compression efficiency comparable to PIPE coding while maintaining the implementation simplicity of VLC by breaking down the complex modeling task into multiple simpler coding passes.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10419017B2Entropy encoding and decoding scheme
Publication Date: 2019.09.17 DOLBY VIDEO COMPRESSION LLC
  • US10419017B2 patent drawing
  • US10419017B2 patent drawing
  • US10419017B2 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.