Template Matching With MMVD for Accurate Motion Vector Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face inefficiencies in representing intra prediction modes and motion vector differences, leading to suboptimal compression ratios and increased data requirements.
Innovation Solution
Implementing a template matching mode with motion vector difference (TM-MVD) to enhance the accuracy of motion vector prediction by searching for matched motion vector differences between current and reference blocks, using distance and direction information to refine the prediction process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If traditional motion compensation techniques are used, then video coding can be performed with simpler processing, but the compression ratio is suboptimal and more bits are required to represent motion vector differences
Solution Approach 1:
The patent applies preliminary action by performing template matching to identify candidate motion vector differences before final motion compensation. The encoder searches for matched templates in reference blocks and pre-determines candidate MVDs, which are then used to refine the motion vector prediction. This preliminary template matching step enables more accurate motion representation while managing complexity through candidate selection rather than exhaustive search.
2Productivity
If motion vector prediction accuracy is increased through extensive searching, then compression efficiency improves, but processing time and computational resources increase
Solution Approach 1:
The patent applies local quality by performing template matching selectively on local blocks rather than globally. The encoder divides the picture into blocks and performs template matching at the block level to find candidate MVDs. This localized approach concentrates computational resources on regions where motion prediction is needed, achieving good compression efficiency without requiring exhaustive global search, thus reducing overall processing time.
Solution Approach 2:
The patent applies partial action by generating a limited set of candidate motion vector differences from template matching rather than exhaustively searching all possible MVDs. The encoder selects a manageable number of candidates (e.g., top N matches) and uses these for subsequent motion compensation. This partial approach achieves sufficient prediction accuracy for improved compression while avoiding the excessive computational burden of complete enumeration.
3Measurement precision
If more bits are allocated to represent intra prediction modes and motion vector differences, then prediction accuracy improves, but the overall compression ratio deteriorates
Solution Approach 1:
The patent applies feedback by using the template matching results to adaptively select and refine motion vector differences. The encoder performs template matching, evaluates match quality metrics, and uses this feedback to determine the best candidate MVDs for each block. This feedback mechanism ensures that bits are allocated efficiently - only when template matching reveals significant improvements over traditional methods are additional bits used, maintaining overall compression ratio while improving prediction accuracy where beneficial.
Data Source
AI summary
In a method for video decoding in a video decoder, prediction information of a current block in a coded bitstream is decoded. The prediction information indicates that template matching (TM) is applied with a merge mode with motion vector difference (MMVD) mode and indicates motion vector difference (MVD) information of the current block. Using the MMVD mode, one or more MVD candidates is determined based on the MVD information. TM is performed to search for a matched MVD between a current template of the current block and a reference template of a reference block of the current block based on the one or more MVD candidates determined using the MMVD mode. The current block is reconstructed based on a motion vector (MV) that is a summation of a motion vector predictor (MVP) and the matched MVD.


