Frame-Rate Up Conversion Motion Search Complexity Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current frame-rate up conversion (FRUC) methods in video coding systems face challenges in reducing complexity and memory bandwidth usage, leading to increased computational complexity and memory access issues in hardware implementations.

Innovation Solution

The proposed solution involves constraining search ranges and limiting the number of search iterations during FRUC motion search processes, using clustering algorithms to reduce the number of motion vector candidates, and applying a unified search range to minimize external memory access, thereby reducing complexity and memory bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a full motion search is performed without constraints, then motion vector accuracy is improved, but computational complexity and memory bandwidth usage increase significantly

Engineering Contradiction:
Improvemotion vector accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The motion search process is divided into two stages: initial motion vector derivation using a limited set of candidates, and refinement search constrained to a small window around the initial result. This segmentation allows the algorithm to explore a wide search space initially, then focus computational effort only in the most promising region, reducing overall complexity while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The initial motion vector derivation is performed as a preliminary step before the refinement search. By deriving initial candidates first (using techniques like AMVP or template matching), the algorithm establishes a starting point that guides the subsequent constrained refinement search, avoiding the need to perform an exhaustive search from scratch.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If motion vector candidates are clustered to reduce complexity, then computational complexity is reduced, but the number of motion vector candidates decreases

Engineering Contradiction:
Improvecomputational complexityVSAvoidnumber of motion vector candidates
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

Instead of clustering all motion vector candidates, the algorithm derives a larger initial set of candidates (potentially 10-15 candidates per sub-CU) and then applies clustering only to select a manageable subset for refinement. This partial application of clustering maintains enough diversity in candidates to preserve accuracy while reducing the number sufficiently to lower computational complexity.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of energy

If search range is constrained to use memory cache, then memory bandwidth usage is reduced, but search coverage is limited

Engineering Contradiction:
Improvememory bandwidth usageVSAvoidsearch coverage
Core Design Contradiction:
Loss of energyVSArea of stationary object

Solution Approach 1:

The initial motion vector candidates are derived using techniques that leverage temporal and spatial correlations (such as AMVP and template matching) to predict likely motion vectors before the constrained refinement search. This preliminary action ensures that the initial candidates are already close to the optimal motion vector, making the subsequent small-window refinement search sufficient to achieve high accuracy without extensive search coverage.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11470344B2Frame-rate up conversion with low complexity
Publication Date: 2022.10.11 INTERDIGITAL VC HOLDINGS INC
  • US11470344B2 patent drawing
  • US11470344B2 patent drawing
  • US11470344B2 patent drawing

AI summary

Systems and methods are described for selecting a motion vector (MV) to use in frame-rate up conversion (FRUC) coding of a block of video. In one embodiment, a first set of motion vector candidates is identified for FRUC prediction of the block. A search center is defined based on the first set of motion vector candidates, and a search window is determined, the search window having a selected width and being centered on the search center. A search for a selected MV is performed within the search window. In some embodiments, an initial set of MVs is processed with a clustering algorithm to generate a smaller number of MVs that are used as the first set. The selected MV may be subject to a motion refinement search, which may also be performed over a constrained search range. In additional embodiments, search iterations are constrained to limit complexity.