Affine Motion Vector Unification for Video Coding Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video coding techniques waste computational resources by separating motion vectors for sub-blocks and their corresponding motion vector predictors, particularly for corner sub-blocks in affine blocks, where motion vectors for control points are used instead of interpolated vectors as predictors for subsequent blocks.

Innovation Solution

Unifying motion vectors and their predictors for sub-blocks within affine blocks, where motion vectors for sub-blocks are determined to be the same as their predictors, eliminating the need for separate storage and computation of both.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If motion vectors for control points are used as predictors for corner sub-blocks, then motion vector prediction can be performed, but computational resources are wasted by separating motion vectors and their predictors

Engineering Contradiction:
Improvecoding efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent merges the motion vector and motion vector predictor for corner sub-blocks into a single unified representation. By determining that the motion vector predictor for a corner sub-block is identical to the motion vector of the corresponding control point, the patent eliminates redundant storage and computation of separate predictor values, thereby reducing computational overhead while maintaining prediction functionality

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent makes the motion vector of control points serve dual purposes: it acts as both the motion vector for the control point itself and as the motion vector predictor for corner sub-blocks. This multi-functionality eliminates the need for separate predictor calculations and reduces the overall computational burden in the affine motion model

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If separate storage and computation is performed for motion vectors and motion vector predictors, then prediction accuracy can be maintained, but device complexity increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidseparate storage and computation structures
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines the storage and computation structures for motion vectors and predictors by establishing that they are identical for corner sub-blocks. This merging eliminates the need for separate data structures and computational pathways, simplifying the device complexity while preserving prediction accuracy through the unified motion vector-predictor relationship

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If motion vectors for sub-blocks are determined separately from their predictors, then flexibility in motion modeling is achieved, but computational resources are wasted

Engineering Contradiction:
Improvemotion modeling flexibilityVSAvoidcomputational resources
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent applies multi-functionality by allowing the motion vector of control points to serve as predictors for corner sub-blocks, maintaining the adaptability of the affine motion model while eliminating redundant computations. This approach preserves motion modeling flexibility through the affine transformation framework while reducing computational overhead by reusing existing motion vector values

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11363288B2Motion vector generation for affine motion model for video coding
Publication Date: 2022.06.14 QUALCOMM INC
  • US11363288B2 patent drawing
  • US11363288B2 patent drawing
  • US11363288B2 patent drawing

AI summary

Techniques are described to unify the motion vectors of sub-blocks of an affine block and the motion vector information that is stored and used as predictors for determining motion vectors for subsequent blocks. A video coder may determine that the motion vector for a sub-block is the same as the motion vector information that is used to determine motion vectors for subsequent blocks.