Sub-pixel Interpolation Masking for Video Decoder Complexity Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Sub-pixel interpolation in video decoding is computationally intensive, consuming significant processor resources and increasing implementation costs and power consumption.
Innovation Solution
Applying a mask to exclude certain sub-pixel positions from interpolation, reducing the number of calculations required during decoding, and using different interpolation filters based on the quality of the reference picture to minimize the impact on video quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If sub-pixel interpolation is performed for all sub-pixel positions using six-tap filters, then decoded video quality is improved, but decoder computational complexity and power consumption increase significantly
Solution Approach 1:
The patent applies different interpolation strategies to different spatial regions and sub-pixel positions based on their specific characteristics. Six-tap filters are applied only to sub-pixel positions that require both horizontal and vertical filtering (e.g., positions e, f, g, i, j, k, m, n, o), while simpler filtering or direct sampling is used for positions requiring only horizontal or only vertical filtering (e.g., positions a, b, c, d, h, l). This localized differentiation maintains video quality where needed while reducing computational complexity elsewhere.
Solution Approach 2:
The patent segments the sub-pixel interpolation process into distinct categories based on the filtering requirements of different sub-pixel positions. Sub-pixels are divided into groups: those requiring full 2D interpolation (most computationally intensive), those requiring only 1D interpolation (less intensive), and integer pixel positions (no interpolation needed). This segmentation allows the decoder to apply appropriate computational resources to each segment, optimizing the balance between quality and complexity.
2Measurement precision
If six-tap interpolation filters are applied to all sub-pixel positions, then interpolation accuracy is improved, but the number of processor operations and implementation cost increase
Solution Approach 1:
The patent implements local quality by applying six-tap interpolation filters selectively only to sub-pixel positions where they provide the most benefit (positions requiring both horizontal and vertical filtering), while using simpler methods for other positions. This localized application of high-accuracy filtering maintains interpolation accuracy for the most challenging positions while significantly reducing the total number of filter operations required, thereby lowering implementation cost.
Solution Approach 2:
The patent applies partial action by using six-tap filters for only a subset of sub-pixel positions rather than all positions. Specifically, full six-tap filtering is applied to positions requiring both horizontal and vertical interpolation, while positions requiring only single-direction filtering use simpler approaches. This partial application achieves sufficient interpolation accuracy for the most demanding positions without the excessive computational cost of applying the same filtering to all positions.
3Measurement precision
If sub-pixel interpolation is performed for positions requiring both horizontal and vertical filtering, then video quality is improved, but computational load and power consumption increase
Solution Approach 1:
The patent applies local quality by differentiating between sub-pixel positions based on their interpolation requirements. Positions requiring both horizontal and vertical filtering (e.g., e, f, g, i, j, k, m, n, o) receive full six-tap filtering to maintain video quality, while positions requiring only single-direction filtering use simpler methods. This localized approach ensures high quality where most needed while minimizing power consumption across the entire processing pipeline.
Solution Approach 2:
The patent segments the sub-pixel processing into categories based on filtering dimension requirements. Sub-pixels requiring both horizontal and vertical filtering are separated from those requiring only one direction of filtering. This segmentation allows the system to concentrate computational resources (and thus power consumption) on the most computationally intensive operations only where necessary, reducing overall power consumption while maintaining video quality for the most challenging positions.
Data Source
Figure 1~2
Figure 3
Figure 4~5
AI summary
There is provided a method and apparatus for decoding an encoded video stream. The method comprises receiving an indication of a motion vector for a current picture, the motion vector referring to a previously decoded picture. The method also comprises applying a mask, the mask defining a subset of sub-pixel positions of the previously decoded picture which may be referenced by the motion vector for the current picture. The method further comprises identifying at least one pixel value for the current picture by referring to the value of at least one pixel in an allowed pixel position of the previously decoded picture.