Video Coding Transform Size Selection via Adaptive Mode Convergence
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video encoding techniques face challenges in efficiently selecting transform sizes for video coding, leading to increased computational overhead and bitstream size, especially when dealing with varying video sources and complexities.
Innovation Solution
The method involves indicating a default transform mode in a frame header and estimating distortion for alternative modes, allowing the default mode to converge to an optimal state after encoding a small number of frames, thereby selecting transform sizes without significant computational overhead or additional bits in the bitstream.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If per-block transform mode is used to optimize coding for different blocks, then coding performance is improved, but computational overhead and bitstream size increase
Solution Approach 1:
The patent divides the frame into different transform units (TUs) with different sizes (e.g., 4x4, 8x8, 16x16 blocks), allowing each segment to be transformed independently with optimal transform size selected per segment based on local characteristics, thus improving coding performance while managing complexity through hierarchical segmentation
Solution Approach 2:
The patent applies different transform sizes to different local regions of the image based on local characteristics such as block size, prediction mode, and gradient magnitude. This allows optimal transform precision to be applied locally where needed rather than uniformly across the entire frame, balancing coding performance with computational overhead
2Manufacturing precision
If per-block transform mode is used to optimize coding for different blocks, then coding performance is improved, but bitstream size increases
Solution Approach 1:
The patent determines transform modes and sizes in advance during the encoding process based on predetermined criteria (block size, prediction mode, gradient analysis) before actual transformation. This preliminary determination allows the decoder to reconstruct the same transform mode without requiring extensive signaling, reducing bitstream overhead while maintaining coding performance
Solution Approach 2:
The patent changes transform parameters (transform size, transform type) based on block characteristics and encoding conditions. By dynamically adjusting these parameters and encoding only the necessary information about changes, the patent achieves better coding performance while minimizing the additional bits required in the bitstream
3Productivity
If default transform mode is used for all blocks, then computational overhead is reduced, but coding performance deteriorates
Solution Approach 1:
The patent implements a dynamic transform mode selection mechanism where the transform size and type are adaptively chosen for each block based on local image characteristics. This dynamic approach allows the system to switch between default modes (for speed) and optimized per-block modes (for performance) depending on the complexity and characteristics of each block, achieving both encoding efficiency and coding performance
Data Source
AI summary
A method for decoding an encoded video bitstream includes generating a decoded frame by decoding a current frame from the encoded video bitstream. The decoding of the current frame may include decoding, from the encoded video bitstream, a transform mode for the current frame, identifying the transform mode for a current block of the current frame on a condition that the transform mode for the current frame is a per-block transform mode, using the transform mode for the current frame as the transform mode for the current block on a condition that the transform mode for the current frame is a per-frame transform mode, identifying a prediction mode for the current block, and generating a decoded block for the current block using the prediction mode and the transform mode for the current block.


