Transform Selection for Visual Data Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video and image compression techniques require significant side information to identify the transform used for each block, which increases the bit rate for transmitting encoded visual data, especially when multiple candidate transforms are involved, and can lead to sub-optimal transform choices being propagated to neighboring blocks.
Innovation Solution
A method that selects a second transform for a portion of the data array based on encoding performance, independent of the first transform used for the adjacent portion, without explicitly transmitting information about the second transform, and uses lossy operations like quantization followed by inverse quantization to generate and decode coefficients, reducing the need for explicit side information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple candidate transforms are used to encode different blocks of visual data, then encoding efficiency and compression performance are improved, but the amount of side information required to identify the transform for each block increases, leading to higher bit rate
Solution Approach 1:
The patent extracts the transform selection process from the side information transmission. Instead of transmitting explicit transform identification data, the system uses a feedback mechanism where the decoder independently determines the transform based on encoded block characteristics and performance metrics, eliminating the need for explicit transform side information.
Solution Approach 2:
The patent implements a feedback loop where encoding performance metrics are transmitted along with the encoded data, enabling the decoder to evaluate different transform candidates and select the optimal one. This feedback mechanism allows the system to adapt transform selection based on actual encoding results rather than relying on pre-transmitted transform identification information.
2Loss of information
If the same transform is used for all blocks, then side information transmission is minimized, but encoding efficiency decreases because sub-optimal transforms cannot be selected for different blocks
Solution Approach 1:
The patent applies different transforms to different blocks based on their specific characteristics and encoding performance. Each block can have its transform selected independently through the feedback mechanism, allowing optimal local transformation while avoiding the need to transmit explicit transform selection information for each block.
Solution Approach 2:
The system dynamically selects transforms based on encoded block characteristics and performance metrics rather than using a fixed transform for all blocks. This dynamic adaptation allows the system to optimize encoding efficiency for each block while minimizing side information requirements through the feedback-based selection process.
3Loss of information
If transform selection is based on neighboring blocks, then side information is reduced, but sub-optimal transform choices can be propagated to adjacent blocks
Solution Approach 1:
The patent segments the transform selection process into independent evaluations for each block based on their individual encoding performance. By using feedback metrics specific to each block rather than relying on neighboring block characteristics, the system prevents propagation of sub-optimal choices while maintaining low side information requirements.
Data Source
AI summary
Encoding data includes: encoding a first portion of an array of data to generate a first set of coefficients, using a first transform; decoding the first set of coefficients to generate a decoded approximation of the first portion, using the first transform; selecting a second transform from multiple candidate transforms based at least in part on a measure of encoding performance for each candidate transform used to encode the decoded approximation of the first portion; and encoding a second portion of the array of data in proximity to the first portion of the array of data to generate a second set of coefficients using the selected second transform.


