Adaptive Entropy Coding With Multi-Encoder VLC Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing entropy coding methods, such as Huffman codes and arithmetic codes, face challenges in adapting to time-varying source statistics and skewed probability distributions, leading to inefficiencies and increased complexity, especially when dealing with higher-order probability modeling and dominant alphabet values.
Innovation Solution
The proposed solution involves an encoder and decoder system that assigns parameters to each symbol based on previous symbols, using multiple entropy encoders and decoders to convert symbols into bitstreams, with a global buffer managing tranche entries to ensure efficient interleaving and buffering, allowing for adaptive coding and handling of varying probability distributions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If Huffman codes are used with fixed probability distribution, then implementation is simple using VLC tables, but adaptation to time-varying source statistics is demanding and complex
Solution Approach 1:
The patent implements dynamic adaptation of Huffman codes by maintaining multiple VLC tables corresponding to different probability distributions and dynamically selecting the appropriate table based on current source statistics. This allows the system to adapt to time-varying characteristics while maintaining the simplicity of Huffman coding through pre-computed tables.
Solution Approach 2:
The system changes the parameter of probability distribution estimation to adapt to time-varying source statistics. By monitoring changes in source symbol probabilities and switching between different VLC tables that correspond to different probability distributions, the system maintains coding efficiency without requiring complex real-time table reconstruction.
2Productivity
If arithmetic coding is used for adaptive probability modeling, then coding efficiency is improved, but implementation complexity increases substantially
Solution Approach 1:
The patent segments the probability space into discrete intervals and assigns specific VLC tables to each interval. This segmentation allows the system to achieve adaptive coding efficiency similar to arithmetic coding while using simpler discrete Huffman coding with pre-computed tables, thereby reducing implementation complexity.
Solution Approach 2:
Instead of implementing the complex arithmetic coding algorithm, the patent uses multiple pre-computed VLC tables that can be quickly switched between. These tables are computationally inexpensive to generate and switch, providing a simpler alternative to arithmetic coding while maintaining adaptive efficiency.
3Measurement precision
If multiple VLC tables are used for higher-order probability modeling, then coding accuracy is improved, but system complexity increases
Solution Approach 1:
The patent creates a universal framework where a single set of VLC tables can serve multiple probability distributions through interval-based selection. Each VLC table is designed to handle specific probability intervals, allowing the system to achieve higher-order probability modeling accuracy without requiring separate tables for each possible distribution, thus reducing overall complexity.
4Ease of manufacture
If dominant alphabet values are coded without alphabet extension, then coding is simpler, but redundancy increases substantially
Solution Approach 1:
The patent applies different coding strategies to different parts of the probability distribution. For dominant alphabet values, the system selects VLC tables specifically optimized for skewed distributions, which locally adapt the code structure to minimize redundancy for dominant symbols while maintaining simplicity without requiring alphabet extension.
Data Source
AI summary
An encoder for encoding a sequence of symbols is described which has an assigner configured to assign a number of parameters to each symbol of the sequence of symbols based on information contained within previous symbols of the sequence of symbols; a plurality of entropy encoders each of which is configured to convert the symbols forwarded to the respective entropy encoder into a respective bitstream; and a selector configured to forward each symbol to a selected one of the plurality of entropy encoders, the selection depending on the number of parameters assigned to the respective symbol.


