Video Decoder Template Matching Motion Vector Refinement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video decoding techniques face performance issues due to undesired complexity and rounding errors introduced by starting motion vector refinement at a quarter-pel step size, leading to lower coding gain in certain scenarios.
Innovation Solution
Aligning the finest motion vector precision used in template matching with the motion vector precision of the motion vector being refined, by iteratively reducing the step size from an initial step size to a final step size that equals the motion vector precision, reduces complexity and rounding errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If motion vector refinement starts at a quarter-pel step size, then the search covers a wider area with coarser granularity, but this introduces undesired complexity and rounding errors that reduce coding gain
Solution Approach 1:
The motion vector refinement process is segmented into multiple stages: first performing template matching at quarter-pel step size to identify candidate positions, then performing a second refinement at the target precision (e.g., 1/8-pel or 1/16-pel) only around the best candidate. This segmentation avoids the complexity of searching the entire area at fine precision while eliminating rounding errors by performing the final refinement at the correct precision level.
Solution Approach 2:
The patent performs a preliminary template matching operation at quarter-pel step size to identify candidate motion vector positions before performing the final refinement at the target precision. This preliminary action narrows down the search space and provides initial candidates that guide the subsequent fine-precision refinement, avoiding the need to search the entire area at fine precision.
2Reliability
If motion vector refinement starts at a quarter-pel step size, then the search process is more robust to initial conditions, but rounding errors are introduced that lower coding gain
Solution Approach 1:
The refinement process is divided into two segments: a robust preliminary search at quarter-pel step size that reliably identifies candidate positions, followed by a precise refinement at the target precision that eliminates rounding errors. This segmentation maintains reliability through the robust initial search while preserving coding gain through the error-free final refinement.
Solution Approach 2:
The quarter-pel template matching serves as an intermediary step between the initial motion vector estimate and the final refined motion vector. This intermediary operation provides a reliable candidate selection mechanism that guides the subsequent fine-precision refinement, ensuring both reliability and accuracy without introducing rounding errors in the final result.
3Loss of information
If template matching is performed at high precision throughout the search, then coding gain is maximized, but computational complexity increases significantly
Solution Approach 1:
The template matching operation is segmented into two precision levels: an initial coarse matching at quarter-pel step size to identify candidate positions, followed by a fine matching at the target precision (1/8-pel or 1/16-pel) to determine the final motion vector. This segmentation achieves high coding gain through precise final matching while avoiding the prohibitive complexity of performing high-precision matching throughout the entire search process.
Solution Approach 2:
A preliminary template matching operation is performed at quarter-pel step size to identify candidate motion vector positions before performing the computationally intensive fine-precision matching. This preliminary action reduces the number of positions requiring high-precision matching, thereby maximizing coding gain while controlling computational complexity.
Data Source
AI summary
A video decoder may be configured to determine a motion vector and a motion vector precision for a current block; identify a current block template within the current picture; search within a search area for a final reference block template that corresponds to the current block template, wherein to search within the search area, the one or more processors are further configured to: identify an initial reference block template based on the motion vector, search other reference block templates around the initial reference block template using a step size that is set to an initial step size, and iteratively reduce the step size from the initial step size until the step size is set to a final step size that equals the motion vector precision; determine a prediction block for the current block based on the final reference block template.


