Block Size Dependent Interpolation Filter Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video coding technologies are inefficient in terms of memory bandwidth usage due to the use of long interpolation filters for small inter-prediction blocks, leading to increased computational requirements and memory bandwidth consumption.
Innovation Solution
Implementing block size dependent interpolation filter selection and mapping, using shorter interpolation filters for small blocks to reduce memory bandwidth consumption while minimizing quality impact, and allowing for adaptive filter lengths based on block size and overlapped areas.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If long interpolation filters (8-tap) are used for small inter-prediction blocks, then interpolation quality is maintained, but memory bandwidth usage and computational requirements increase significantly
Solution Approach 1:
The patent applies different interpolation filter lengths based on block size characteristics. Small blocks (e.g., 4×2, 2×4) use shorter 4-tap filters, while larger blocks use longer 8-tap filters. This local adaptation of filter quality to block size requirements reduces memory bandwidth consumption for small blocks while maintaining sufficient interpolation quality where needed.
Solution Approach 2:
The patent changes the filter length parameter based on block dimensions. By dynamically selecting between 4-tap and 8-tap filters according to block size, the system optimizes the balance between interpolation quality and computational efficiency, reducing memory bandwidth usage by up to 64% for small blocks.
2Reliability
If long interpolation filters are used for all blocks, then consistent high-quality interpolation is achieved, but device complexity and computational load increase
Solution Approach 1:
The patent introduces dynamic filter selection based on block size. The interpolation filter length is no longer fixed but adapts dynamically to the specific block dimensions being processed. This dynamic approach allows the system to use computationally lighter 4-tap filters for small blocks while reserving 8-tap filters for larger blocks that benefit more from their extended reach.
Solution Approach 2:
The patent applies the principle of partial action by using only the necessary filter length for each block size. Small blocks receive 4-tap filters which is sufficient for their dimensions, avoiding the excessive computational burden of 8-tap filters. This partial application of filtering strength optimizes the trade-off between quality and complexity.
3Loss of energy
If shorter interpolation filters (4-tap) are used for small blocks, then memory bandwidth consumption decreases significantly, but interpolation quality may be compromised
Solution Approach 1:
The patent ensures that interpolation quality is locally optimized for each block size. Small blocks use 4-tap filters which provide adequate quality for their limited spatial extent, while larger blocks use 8-tap filters for higher quality. This local quality adaptation prevents over-filtering small blocks while maintaining necessary quality for larger blocks.
4Productivity
If different filter lengths are used for different block sizes, then efficiency is improved, but filter selection and mapping complexity increases
Solution Approach 1:
The patent uses straightforward parameter-based selection where block width and height directly determine filter length. The rules are: use 4-tap filters when block width ≤ 4 or height ≤ 2, otherwise use 8-tap filters. This simple parameter-based approach achieves significant coding efficiency improvements without introducing complex selection logic.
Data Source
AI summary
A device implementing the subject video coding system may include at least one processor to determine an x-tap filter for horizontal interpolation of a N×M block. The processor further determines a y-tap filter for vertical interpolation of the N×M block, and encodes the N×M block using the x-tap filter and the y-tap filter. The value of x is proportional to N and the value of y is proportional to M.


