Bilateral Motion Vector Matching for Non-Linear Video Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face challenges in efficiently compressing video data while maintaining video quality, particularly in scenarios where motion between reference frames is non-linear, leading to inefficiencies in motion vector difference coding.
Innovation Solution
A bilateral matching scheme is employed to refine motion vector differences (MVD) using scale factors and refinements, applying joint MVD coding to generate motion compensation data based on two reference prediction blocks within a group of pictures (GOP), adapting to both linear and non-linear motion scenarios.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional motion vector coding is used, then coding simplicity is maintained, but compression efficiency deteriorates in non-linear motion scenarios
Solution Approach 1:
The patent divides the motion vector difference coding into two separate components: a first MVD for the forward prediction block and a second MVD for the backward prediction block. This segmentation allows each MVD to be optimized independently for its respective reference frame, improving compression efficiency for non-linear motion while maintaining manageable coding complexity through structured processing.
Solution Approach 2:
The patent extends traditional single-dimension MVD coding by introducing a dual-dimension approach that codes MVDs for both forward and backward reference frames separately. This dimensional expansion enables the system to capture non-linear motion characteristics more effectively, achieving better compression efficiency without excessive complexity increase.
2Measurement precision
If joint MVD coding is applied, then coding complexity is reduced, but measurement precision of individual MVDs deteriorates
Solution Approach 1:
The patent segments the joint MVD coding process into distinct first and second MVD components, each associated with specific reference frames. This segmentation maintains measurement precision for individual MVDs by allowing separate optimization while still benefiting from joint coding complexity reduction through shared processing structures.
Solution Approach 2:
The patent applies local quality optimization by allowing different MVD precision levels and coding strategies for the forward and backward prediction blocks based on their specific motion characteristics. This enables high precision where needed while reducing complexity in less critical areas, achieving both goals simultaneously.
3Manufacturing precision
If motion compensation is performed without MVD refinement, then processing speed is maintained, but video quality deteriorates
Solution Approach 1:
The patent performs preliminary MVD refinement by determining refined first and second MVDs before final motion compensation. This preliminary action improves video quality by ensuring accurate motion vectors are used in the compensation process, while the refined MVDs are calculated efficiently to minimize impact on processing speed.
Solution Approach 2:
The patent applies partial refinement by focusing computational effort on refining MVDs only where necessary based on motion characteristics, rather than uniformly refining all MVDs. This selective approach maintains video quality in critical areas while preserving processing speed through optimized computational resource allocation.
Data Source
AI summary
The various implementations described herein include methods and systems for coding video. In one aspect, a method includes receiving a current coding block in a current image frame from a video bitstream and determining that the current coding block is to be predicted in a joint motion vector difference (JMVD) mode. The method further includes in the JMVD mode, determining that the current coding block is associated with a forward prediction block and a backward prediction block, and based on a cost criterion of a difference of the forward the backward prediction blocks, refining a motion vector difference for at least the forward prediction block to determine a first refined motion vector difference. The method further includes generating the forward prediction block based on at least the first refined motion vector difference and determining motion compensation data of the current coding block based on the forward and backward prediction blocks.


