Decoder Side Motion Vector Refinement Using Adaptive Step Sizes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video compression techniques face challenges in achieving high compression ratios with minimal sacrifice in image quality, especially in limited bandwidth networks and memory resources, as they struggle to efficiently refine motion vectors for accurate prediction blocks.
Innovation Solution
The method involves determining refined motion vectors by comparing costs between bilateral reference blocks and candidates in multiple reference pictures using adaptive step sizes, allowing for precise selection of reference blocks and improved prediction blocks, which are then used to generate images on electronic devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If traditional motion vector refinement is used, then compression ratio is improved, but prediction accuracy deteriorates leading to image quality loss
Solution Approach 1:
The patent applies dynamics by making the step size adaptive rather than fixed. The step size changes based on the complexity of the current block and motion characteristics, allowing the refinement process to be more aggressive in simple regions and more conservative in complex regions, thereby improving prediction accuracy while maintaining compression efficiency
Solution Approach 2:
The patent changes the parameter of step size from a fixed value to an adaptive parameter that varies according to block characteristics. This parameter change enables the system to optimize the balance between refinement accuracy and computational cost for different types of video content, resolving the contradiction between compression ratio and prediction accuracy
2Measurement precision
If adaptive motion vector refinement is applied, then prediction accuracy is improved, but computational complexity increases
Solution Approach 1:
The patent applies local quality by differentiating the refinement process across different blocks based on their characteristics. Instead of applying uniform adaptive refinement to all blocks, the system adjusts the step size locally according to each block's motion complexity and content characteristics, improving prediction accuracy where needed while reducing unnecessary computations in simpler regions
Solution Approach 2:
The patent implements partial action by selectively applying adaptive refinement only to blocks that benefit from it. By using early termination conditions and adaptive step size selection, the system performs refinement partially on only those blocks where it will improve prediction accuracy, thereby reducing overall computational complexity while maintaining quality where it matters
3Productivity
If fixed step size is used for refinement, then processing speed is maintained, but prediction accuracy is limited
Solution Approach 1:
The patent transforms the static fixed step size into a dynamic adaptive step size that responds to block characteristics. This dynamic adjustment allows the system to maintain fast processing speeds using larger step sizes for simple blocks while achieving higher prediction accuracy with smaller step sizes for complex blocks, effectively resolving the speed-accuracy trade-off
Data Source
AI summary
A method of coding is provided. The method includes comparing a cost between a bilateral reference block and each of a plurality of first and second reference block candidates in the first and second reference pictures to determine first and second refined motion vectors. The first and second reference block candidates are determined based on a step size selected from a plurality of available step sizes. The method also includes selecting a first refined reference block in the first reference picture based on the first refined motion vector and a second refined reference block in the second reference picture based on the second refined motion vector, determining a prediction block based on the first refined reference block and the second refined reference block, and displaying an image generated using the prediction block.


