Temporal Filter Window Error Estimation at Partition Boundaries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies fail to accurately estimate window errors in temporal filters due to the neglect of partition schemes, leading to inaccurate weight application and suboptimal compression efficiency.
Innovation Solution
The proposed method generates additional neighboring samples when a block contains no partitions and applies error clipping on a partition level when partitions are present, using enlarged prediction blocks to account for different motion vectors at partition boundaries, thereby improving window error estimation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If additional neighboring samples are generated and error clipping is applied at partition level, then window error estimation accuracy is improved, but computational complexity increases
Solution Approach 1:
The current block is divided into multiple partitions, and error clipping is applied at the partition level rather than the entire block level. This segmentation allows for more precise error estimation by considering local motion characteristics in each partition, thereby improving window error estimation accuracy while managing computational complexity through localized processing.
Solution Approach 2:
Additional neighboring samples are generated in advance by extending the prediction block beyond the current block boundaries. This preliminary action ensures that sufficient samples are available for accurate window error estimation at block boundaries, eliminating the need for complex runtime calculations and improving measurement precision before the actual filtering process.
2Measurement precision
If partition-level error clipping is applied, then weight application accuracy is improved, but processing time increases
Solution Approach 1:
The block is segmented into partitions with independent error clipping applied to each partition. This approach improves weight application accuracy by accounting for different motion vectors at partition boundaries, while the segmented structure allows for efficient parallel processing that mitigates the increase in processing time.
Solution Approach 2:
Error clipping is applied locally at each partition level rather than uniformly across the entire block. This local quality approach allows for more accurate weight application in regions with different motion characteristics, while limiting the computational overhead to only the necessary local areas rather than the entire block.
3Measurement precision
If enlarged prediction blocks are generated, then motion vector accuracy at boundaries is improved, but memory usage increases
Solution Approach 1:
The prediction block is extended beyond the current block boundaries in advance to generate additional neighboring samples. This preliminary action ensures that motion vectors at block boundaries are calculated with higher accuracy by incorporating boundary information, while the extended block is generated once and reused, limiting the memory overhead.
Solution Approach 2:
The prediction block is extended in the spatial dimension beyond the original block boundaries. This dimensional extension provides additional samples at block edges, improving motion vector accuracy at boundaries by incorporating boundary context, while the extension follows a regular pattern that optimizes memory utilization.
Data Source
AI summary
The various implementations described herein include methods and systems for coding video. In one aspect, a method includes receiving video data comprising a current block, where the current block has a size of N×M pixels, N and M being positive integers. The method includes generating a prediction block larger than the current block for the current block, where the prediction block has a size of (N+W)×(M+W) pixels, W being a positive integer; and the method includes determining a window error for a sample window of a sample of the current block using the generated prediction block.


