Motion Vector Constraints for Video Coding Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video compression techniques, such as affine motion compensation prediction (MCP), increase memory bandwidth requirements, which is a bottleneck in video coding systems, especially for affine transformations with multiple control points.

Innovation Solution

Applying constraints to motion vectors (MVs) and transformations to reduce memory bandwidth, including threshold-based constraints on MV differences, square root calculations, and memory bandwidth calculations, to generate constrained MVs that reduce memory bandwidth requirements during encoding and decoding processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If affine motion compensation prediction with multiple control points is used, then video quality is improved, but memory bandwidth requirements increase

Engineering Contradiction:
Improvevideo qualityVSAvoidmemory bandwidth
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent applies constraints on motion vector differences between control points, limiting the range of motion vectors to reduce memory bandwidth. By parameterizing the constraints based on block dimensions and threshold values, the system maintains video quality while controlling memory access requirements through mathematical relationships between motion vectors and block geometry

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent divides the current block into multiple control points (e.g., four control points at corners) and applies motion compensation independently to each. This segmentation allows selective constraint application to individual control point motion vectors, enabling quality preservation through multiple local motion estimates while reducing overall memory bandwidth through localized constraints

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If constraints are applied to motion vectors to reduce memory bandwidth, then memory bandwidth requirements are reduced, but device complexity increases

Engineering Contradiction:
Improvememory bandwidthVSAvoidconstraint application complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent replaces complex memory access patterns with mathematical constraints on motion vector parameters. Instead of managing complex memory bandwidth through hardware controls, the system uses algebraic relationships (absolute value constraints, square root calculations) to limit motion vector ranges, substituting mathematical computation for memory management complexity

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent calculates and applies motion vector constraints before the actual motion compensation process. By pre-determining valid motion vector ranges based on block dimensions and threshold parameters, the system eliminates the need for complex runtime memory bandwidth management, performing constraint checking in advance to simplify the decoding process

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10873760B2Motion vector (MV) constraints and transformation constraints in video coding
Publication Date: 2020.12.22 FUTUREWEI TECHNOLOGIES INC
  • US10873760B2 patent drawing
  • US10873760B2 patent drawing
  • US10873760B2 patent drawing

AI summary

An apparatus comprises: a memory; and a processor coupled to the memory and configured to: obtain candidate MVs corresponding to neighboring blocks that neighbor a current block in a video frame, generate a candidate list of the candidate MVs, select final MVs from the candidate list, and apply constraints to the final MVs or a transformation to obtain constrained MVs. An apparatus comprises: a memory; and a processor coupled to the memory and configured to: obtain candidate MVs corresponding to neighboring blocks that neighbor a current block in a video frame, generate a candidate list of the candidate MVs, apply constraints to the candidate MVs or a transformation to obtain constrained MVs, and select final MVs from the constrained MVs.