Decoder-Side Motion Vector Refinement With SAD-Based Early Skip
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video decoding methods require excessive computational operations and power consumption due to unnecessary decoder-side motion vector refinement iterations, particularly in cases where the alignment between motion compensated reference patches is already satisfactory.
Innovation Solution
Implement methods to determine the alignment level between motion compensated reference patches using a coding unit size-dependent threshold, allowing the decoder to skip unnecessary refinement steps by calculating the sum of absolute differences or mean-reduced sum of absolute differences, thereby reducing computational operations and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If decoder-side motion vector refinement iterations are performed for all coding units, then motion compensation accuracy is improved, but computational complexity and power consumption increase
Solution Approach 1:
The patent changes the parameter of motion vector refinement by introducing a conditional execution mechanism based on alignment level assessment. When the alignment level between motion compensated reference patches exceeds a threshold, the refinement process is skipped entirely, transforming the always-executing refinement into a selectively-executing one, thereby reducing power consumption while maintaining accuracy where sufficient
Solution Approach 2:
The patent applies partial action by performing motion vector refinement only when necessary - specifically when the alignment level assessment indicates insufficient alignment. This partial execution of the refinement process avoids unnecessary computational operations on coding units that already have adequate alignment, thus reducing power consumption without compromising overall motion compensation accuracy
2Measurement precision
If motion vector refinement iterations are performed, then decoding accuracy is improved, but computational operations increase
Solution Approach 1:
The patent performs a preliminary alignment level assessment before executing motion vector refinement. This preliminary action evaluates whether the current motion compensated reference patches are sufficiently aligned, and only proceeds to refinement if the assessment indicates insufficient alignment, thereby avoiding unnecessary computational operations and improving overall computational efficiency
Solution Approach 2:
The system uses its own alignment level assessment mechanism to automatically determine whether refinement is needed, making the decision internally without external control. This self-service approach allows the decoder to adaptively optimize its own computational operations based on the actual alignment conditions of each coding unit
3Loss of energy
If alignment checking with threshold comparison is performed, then unnecessary refinement steps are skipped, but additional computational operations are required
Solution Approach 1:
The patent extracts the alignment level assessment as a separate, independent computational step that can be performed quickly using simple operations. By taking out this assessment function and implementing it with basic arithmetic and comparison operations, the patent enables efficient skipping of refinement steps without significantly increasing overall decoder complexity
Data Source
AI summary
Methods and apparatuses of determining an alignment level between motion compensated reference patches for reducing motion vector refinement steps are provided. According to one method, obtaining, by a decoder, motion compensated interpolated samples based on sub-pixel accurate merge motion vectors from a bilinear motion compensated interpolation; computing, by the decoder, a sum of absolute differences (SAD) between two motion compensated reference patches using a subset of the motion compensated interpolated samples; determining, by the decoder, whether the SAD is less than a coding unit (CU) size-dependent threshold value; when the SAD is less than the CU size-dependent threshold value: skipping remaining decoder-side motion vector refinement (DMVR) process steps; and performing final motion compensation; and when the SAD is not less than the CU size-dependent threshold value: performing the remaining DMVR process steps; and performing the final motion compensation.


