Sub-Block Motion Vector Prediction in Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding technologies face challenges in efficiently reducing redundancy in video signals, particularly in motion vectors, which affects compression ratios and storage requirements, especially in high-resolution video applications.

Innovation Solution

The proposed solution involves processing circuitry that divides blocks into sub-blocks, derives sub-block motion information, generates predicted samples, and selects representative motion information for storage in a history-based motion vector prediction (HMVP) buffer, allowing for improved motion vector prediction and compression.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If motion vectors are coded directly without prediction, then coding simplicity is maintained, but data redundancy increases and compression ratio deteriorates

Engineering Contradiction:
Improvecoding complexityVSAvoiddata redundancy
Core Design Contradiction:
Device complexityVSLoss of substance

Solution Approach 1:

The current block is divided into multiple sub-blocks, and motion information is derived separately for each sub-block. This segmentation allows for more precise motion representation while enabling selective updating of HMVP buffer entries, balancing coding complexity and compression efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Motion information from previously decoded blocks is stored in the HMVP buffer and used to predict motion vectors for current blocks before actual coding. This preliminary action reduces the data required for coding motion vectors, addressing redundancy without significantly increasing complexity.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If full motion information is stored for all sub-blocks, then prediction accuracy is improved, but memory requirements and processing complexity increase

Engineering Contradiction:
Improveprediction accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Different sub-blocks are treated differently based on their motion characteristics. The HMVP buffer is updated selectively with motion information from specific sub-blocks (e.g., those showing significant motion or at boundary positions), providing locally optimized prediction accuracy without uniformly increasing processing complexity across all blocks.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Only the most representative or critical motion information from sub-blocks is extracted and stored in the HMVP buffer, rather than storing all motion information. This extraction process reduces memory requirements and processing complexity while maintaining sufficient prediction accuracy for effective compression.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If HMVP buffer is updated with every motion vector, then prediction quality improves, but buffer management complexity and overhead increase

Engineering Contradiction:
Improveprediction qualityVSAvoidbuffer management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The HMVP buffer is updated with motion information from only certain sub-blocks rather than all blocks. This partial action approach maintains sufficient prediction quality by selecting representative motion information while reducing buffer management complexity and overhead associated with updating every single motion vector.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11949855B2Method and apparatus for video coding
Publication Date: 2024.04.02 TENCENT AMERICA LLC
  • US11949855B2 patent drawing
  • US11949855B2 patent drawing
  • US11949855B2 patent drawing

AI summary

Aspects of the disclosure provide a method and an apparatus for video coding. In some examples, an apparatus includes processing circuitry that divides a current block into a plurality of sub-blocks, derives a plurality of pieces of sub-block motion information for the plurality of sub-blocks, generates predicted sub-block samples for the sub-blocks according to the pieces of sub-block motion information, and generates a predicted block for the current block according to a combination of the predicted sub-block samples. The processing circuitry also selects a piece of the sub-block motion information from the pieces of sub-block motion information as representative motion information for the current block, and stores the representative motion information in a history-based motion vector prediction (HMVP) buffer.