Vector Difference Candidate Lists With Adaptive Pel-Interval Search
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding techniques face inefficiencies due to increased computational complexity and delays when constructing vector difference candidate lists with higher granularity and directions, leading to excessive calculations.
Innovation Solution
The techniques dynamically determine vector difference candidates based on varying pel-intervals to construct a candidate list, ensuring more desirable candidates are included while minimizing processing time inefficiencies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the granularity of distance between vector difference candidates is increased, then the number of directions relative to a vector predictor that are evaluated is improved, but the number of calculations for template matching increases
Solution Approach 1:
The patent segments the vector difference candidate list into multiple groups based on directional categories (e.g., horizontal, vertical, diagonal directions). This segmentation allows the system to evaluate candidates in different directions independently, improving adaptability while managing computational complexity by processing smaller subsets of candidates rather than evaluating all candidates uniformly.
Solution Approach 2:
The patent dynamically adjusts the number of vector difference candidates and directions evaluated based on coding conditions, block types, and prediction modes. The system can adaptively increase or decrease the granularity of distance and number of directions depending on the specific coding scenario, thereby improving versatility without consistently incurring high computational costs.
2Reliability
If the number of vector difference candidates is increased, then coding gains are realized, but the processing time increases
Solution Approach 1:
The patent applies partial action by evaluating only a subset of vector difference candidates rather than all possible candidates. The system determines an appropriate number of candidates to evaluate based on coding conditions, using template matching or other metrics on a limited set of candidates to achieve sufficient coding gains without the full computational burden of evaluating every possible candidate.
Solution Approach 2:
The patent changes parameters such as the number of candidates, distance granularity, and direction angles based on coding conditions, block sizes, and prediction modes. By dynamically adjusting these parameters, the system optimizes the balance between coding gains and processing time, increasing candidate evaluation only when beneficial for the specific coding scenario.
3Measurement precision
If template matching is performed on more vector difference candidates, then the quality of the vector difference candidate list is improved, but the computational overhead increases
Solution Approach 1:
The patent segments the template matching process by applying it only to specific groups of vector difference candidates rather than all candidates. The candidate list is divided into groups based on directional categories, and template matching is performed selectively on these segments, improving list quality through precise evaluation while reducing overall computational overhead by avoiding redundant matching on all candidates.
Solution Approach 2:
The patent performs preliminary sorting or filtering of vector difference candidates before applying template matching. Candidates are pre-processed to identify the most promising ones based on simpler criteria (such as directional relevance or distance metrics), and only these pre-selected candidates undergo computationally intensive template matching, thereby improving quality while minimizing overhead.
Data Source
AI summary
A method of decoding video data includes determining a vector predictor for a current block; determining a first set of vector difference candidates based on a first pel-interval, the first pel-interval defining a first distance between consecutive vector difference candidates in the first set of vector difference candidates starting with the vector predictor; determining a second set of vector difference candidates based on the first set of vector difference candidates and a second pel-interval, the second pel-interval defining a second distance between consecutive vector difference candidates in the second set of vector difference candidates; constructing a vector difference candidate list based on the second set of vector difference candidates; determining a vector for the current block based on the vector predictor and a vector difference from the vector difference candidate list; and reconstructing the current block based on the vector for the current block.


