Compound Predictor Weighting for Lower-Residual Video Coding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding methods face challenges in efficiently reducing the amount of data required for video streams, particularly in processes involving motion estimation and compensation, as they often result in significant residual errors and computational overhead.
Innovation Solution
The implementation of compound prediction modes that combine multiple predictor blocks using weighted sums based on pixel differences within the predictor blocks, allowing for improved compression performance by dynamically adjusting weights for each pixel based on the predictor block's pixel values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If motion estimation and compensation is used to encode video, then compression is achieved, but significant residual errors and computational overhead occur
Solution Approach 1:
The patent combines multiple predictor blocks (first predictor block from inter-prediction and second predictor block from intra-prediction) to form a compound predictor block. This merging of multiple prediction sources reduces residual errors by creating a more accurate prediction that better matches the current block, thereby improving compression efficiency without sacrificing prediction accuracy
Solution Approach 2:
The compound predictor block acts as a composite structure combining elements from different prediction methods (inter-prediction and intra-prediction). By integrating multiple prediction approaches into a single compound predictor, the system achieves superior prediction accuracy compared to using individual prediction methods alone, reducing the residual data that needs to be encoded
2Quantity of substance
If motion estimation and compensation is used to encode video, then compression is achieved, but computational overhead increases
Solution Approach 1:
The patent dynamically adjusts weights for different predictor blocks based on local characteristics (pixel differences) rather than using fixed weights. This dynamic adaptation allows the system to optimize prediction accuracy for each specific block while maintaining computational efficiency through localized weight calculations rather than global optimization
Solution Approach 2:
The weight determination is performed locally for each pixel or small region based on pixel differences between predictor blocks. This local quality approach allows the system to adapt to local variations in the video content without requiring complex global computations, thereby reducing overall computational overhead while maintaining high prediction accuracy
3Productivity
If compound prediction modes are implemented, then compression efficiency improves, but processing complexity increases
Solution Approach 1:
The patent changes the parameter of weight values dynamically based on local pixel differences rather than using constant weights. This parameter change allows the compound prediction to adapt to local content characteristics, improving compression efficiency. The weight calculation uses simple pixel difference metrics that maintain computational tractability despite the increased prediction model complexity
Data Source
AI summary
Generating a compound predictor block includes generating a first predictor block and generating a second predictor block. The first predictor block includes a first pixel and the second predictor block includes a second pixel. The first and the second pixels are located at a same location within the first predictor block and the second predictor block, respectively. A first weight is determined for the first pixel based on a difference between a first value of the first pixel and a second value of the second pixel. A second weight is determined for the second pixel based on the first weight. The compound predictor block is generated by combining the first predictor block and the second predictor block. The compound predictor block includes a weighted pixel that is determined based on a weighted sum of the first pixel and the second pixel based on the first weight and the second weight.


