Entropy Coding Partitioning With VLC and PIPE Substreams
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing entropy coding schemes, 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 substreams for VLC and PIPE coding, allowing for better adaptation to statistics and improved compression efficiency through separate encoding and decoding processes.
Engineering Contradictions & Design Principles
Engineering 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 and complex
Solution Approach 1:
The invention segments the source symbols into multiple categories based on their probability characteristics. Different VLC tables are prepared for different categories, allowing the system to select the most appropriate table for each symbol type. This segmentation enables both simple VLC implementation and good adaptation to varying statistics by choosing the right table for each segment.
Solution Approach 2:
The invention introduces dynamic selection of VLC tables based on the current statistical characteristics of the source. The system can switch between different VLC tables adaptively, making the encoding process dynamic rather than static. This allows the simple VLC mechanism to adapt to time-varying source statistics by selecting the most suitable table for current conditions.
2Adaptability or versatility
If arithmetic coding is used for entropy coding, then handling of adaptive and higher-order probability modeling is improved, but implementation complexity increases substantially
Solution Approach 1:
The invention extracts the complex probability modeling functionality from the arithmetic coding process and implements it separately through multiple VLC tables. Each VLC table is designed to handle specific probability distributions, allowing the system to achieve adaptive probability modeling without using full arithmetic coding. This separates the modeling complexity from the encoding process, reducing overall implementation complexity.
Solution Approach 2:
Instead of using the complex and expensive arithmetic coding mechanism, the invention employs multiple simpler VLC tables that can be selected and discarded based on current needs. Each VLC table is a lightweight, disposable resource that can be quickly switched between, providing adaptive modeling capability at a fraction of the complexity cost of arithmetic coding.
3Measurement precision
If multiple sets of VLC tables are used for higher-order probability modeling, then modeling accuracy improves, but system complexity increases
Solution Approach 1:
The invention applies local quality by designing each VLC table to be optimized for specific local characteristics of the source statistics. Rather than using generic tables, each table is tailored for particular symbol categories or probability ranges. This allows accurate higher-order modeling through specialized tables while managing complexity by only creating tables where needed, rather than exhaustive coverage.
Data Source
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.


