Adaptive Entropy Coding With Multi-Table Symbol Selection
Find Innovative SolutionsGenerate 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 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 in the sequence, using multiple entropy encoders and decoders to convert symbols into bitstreams, allowing for adaptive encoding and decoding by mapping probability measures to probability indices, optimizing coding efficiency and reducing complexity.
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 sources. By monitoring source statistics and updating probability estimates, the system selects from multiple VLC tables that correspond to different probability distributions, enabling adaptation without redesigning the entire coding structure.
2Productivity
If multiple VLC tables are used for higher-order probability modeling, then coding efficiency improves, but device complexity increases
Solution Approach 1:
The patent segments the probability space into multiple discrete probability distributions, each represented by a separate VLC table. By dividing the complex higher-order modeling task into multiple manageable probability models, the system achieves high coding efficiency while keeping each individual VLC table simple and the overall structure organized.
3Adaptability or versatility
If arithmetic coding is used for time-varying sources, then handling of adaptive and higher-order probability modeling is adequate, but implementation complexity is substantially higher than VLC
Solution Approach 1:
The patent creates simplified copies of arithmetic coding functionality by using pre-computed VLC tables that approximate the optimal coding for different probability distributions. This allows the system to achieve adaptive coding performance similar to arithmetic coding while maintaining the implementation simplicity of Huffman coding with VLC tables.
4Ease of manufacture
If Huffman coding is used with dominant alphabet value (pk>0.5), then coding is simple, but redundancy is substantial without alphabet extension
Solution Approach 1:
The system dynamically adjusts the coding parameters by selecting from multiple VLC tables that are optimized for different probability distributions including cases with dominant symbols. This allows the system to maintain coding simplicity while reducing redundancy by choosing the appropriate table that matches the current source statistics.
Data Source
AI summary
An encoder for encoding a sequence of symbols is described which includes 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.


