Block-Adaptive Interpolation Filters for Video Coding Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face challenges in efficiently processing increasing amounts of digital video data, particularly in balancing memory bandwidth and image quality during encoding and decoding processes.
Innovation Solution
An encoder and decoder that switch between first and second interpolation filters with different numbers of taps based on the size of the current block, using an 8-tap filter for larger blocks and a 6-tap filter for smaller blocks to optimize memory bandwidth and image quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If an interpolation filter with a large number of taps is used, then image quality is improved, but memory bandwidth consumption increases
Solution Approach 1:
The patent applies different interpolation filters with different numbers of taps depending on the block size. For larger blocks, a filter with more taps is used to maintain image quality, while for smaller blocks, a filter with fewer taps is used to reduce memory bandwidth consumption. This local adaptation resolves the contradiction by matching the filter complexity to the specific processing requirements of each block.
Solution Approach 2:
The patent dynamically changes the number of taps in the interpolation filter based on block size parameters. By adjusting this critical parameter adaptively, the system optimizes the balance between image quality and memory bandwidth consumption, resolving the technical contradiction through parameter optimization.
2Manufacturing precision
If an interpolation filter with a large number of taps is used, then image quality is improved, but processing speed decreases
Solution Approach 1:
The patent applies different interpolation filters with different numbers of taps depending on the block size. For larger blocks, a filter with more taps is used to maintain image quality, while for smaller blocks, a filter with fewer taps is used to reduce memory bandwidth consumption. This local adaptation resolves the contradiction by matching the filter complexity to the specific processing requirements of each block.
Solution Approach 2:
The patent dynamically changes the number of taps in the interpolation filter based on block size parameters. By adjusting this critical parameter adaptively, the system optimizes the balance between image quality and memory bandwidth consumption, resolving the technical contradiction through parameter optimization.
3Device complexity
If a fixed interpolation filter is used for all block sizes, then device complexity is reduced, but encoding efficiency decreases
Solution Approach 1:
The patent makes the interpolation filter dynamic by allowing the number of taps to vary based on block size. This dynamic configuration enables the system to adapt to different processing requirements, improving encoding efficiency without requiring excessive complexity in the filter management system.
Solution Approach 2:
The patent dynamically changes the number of taps in the interpolation filter based on block size parameters. By adjusting this critical parameter adaptively, the system optimizes the balance between image quality and memory bandwidth consumption, resolving the technical contradiction through parameter optimization.
Data Source
AI summary
An encoder that encodes a current block to be encoded in an image is provided. The encoder includes: processor; and memory coupled to the processor, in which, in operation, the processor: generates a first prediction image based on a motion vector, the first prediction image being an image with full-pel precision; generates a second prediction image using an interpolation filter by interpolating a value at a fractional-pel position between full-pel positions included in the first prediction image; and encodes the current block based on the second prediction image, and in the using of the interpolation filter, the interpolation filter is switched between a first interpolation filter and a second interpolation filter differing in a total number of taps from the first interpolation filter.


