Two-Stage Interpolation for High Accuracy Motion Vectors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional video coding standards face increased encoding and decoding complexity when using higher accuracy motion vectors, such as those with one-eighth pixel accuracy, due to the need for additional interpolation stages and memory storage.

Innovation Solution

Implementing a two-stage interpolation method that restricts motion vectors to point only to specific sub-pixel locations derived from full, half, and quarter-pixel samples, allowing for one-eighth pixel accuracy without additional interpolation stages or increased complexity, by using bi-linear interpolation for all samples with quarter-pixel and finer accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If higher accuracy motion vectors (e.g., one-eighth pixel accuracy) are used to improve prediction accuracy, then coding efficiency is improved, but encoding and decoding complexity increases due to additional interpolation stages and memory storage requirements

Engineering Contradiction:
Improvemotion vector accuracyVSAvoidencoding and decoding complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the interpolation process into two distinct stages: first obtaining half-pixel samples using 6-tap filters, then obtaining one-eighth pixel samples using bi-linear interpolation. This segmentation allows the system to achieve high-precision motion vectors without requiring a single complex interpolation stage, thereby reducing overall computational complexity while maintaining the desired measurement precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary interpolation to obtain half-pixel samples before the final one-eighth pixel sample acquisition. By pre-computing the half-pixel samples using efficient 6-tap filters, the system prepares intermediate data that simplifies the subsequent bi-linear interpolation step, reducing the overall complexity compared to direct high-precision interpolation methods.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If conventional three-stage interpolation is used to obtain one-eighth pixel samples, then motion vector accuracy is improved, but interpolation complexity significantly increases due to cascaded filtering operations

Engineering Contradiction:
Improvesample accuracyVSAvoidinterpolation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts and eliminates the need for cascaded filtering operations by using a simplified two-stage approach. Instead of applying multiple filtering stages in sequence, the system obtains half-pixel samples using 6-tap filters and then directly computes one-eighth pixel samples through bi-linear interpolation, removing the complex intermediate filtering steps while maintaining sample accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the interpolation parameters and methodology by transitioning from conventional multi-stage filtering to a combination of 6-tap filtering followed by bi-linear interpolation. This parameter change reduces the computational complexity of the interpolation process while still achieving one-eighth pixel accuracy, as the bi-linear interpolation operates on already-computed half-pixel samples rather than requiring complex cascaded filters.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If additional motion estimation steps are performed to check candidate one-eighth pixel accuracy positions, then prediction accuracy is improved, but encoding complexity increases

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

Solution Approach 1:

The patent implements dynamic motion vector search by allowing motion vectors to point to fractional-pixel positions with one-eighth pixel accuracy. The system dynamically adjusts the search process to check candidate positions at the appropriate precision level, obtaining samples through the two-stage interpolation method. This dynamic approach enables high-precision motion estimation without requiring a fixed complex search algorithm, as the interpolation complexity is managed through the structured two-stage process rather than through extensive candidate checking.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2132941B1High accuracy motion vectors for video coding with low encoder and decoder complexity
Publication Date: 2017.05.17 NOKIA TECHNOLOGIES OY
  • EP2132941B1 patent drawingFigure 1
  • EP2132941B1 patent drawingFigure 2
  • EP2132941B1 patent drawingFigure 3

AI summary

Two-stage interpolation can be provided for frame prediction samples with quarter- pixel and finer accuracy. All samples of quarter-pixel and finer accuracy can use either half or full/integer-pixels in a bi-linear interpolation to allow for the use of higher accuracy motion vectors, such as one-eighth-pixel accuracy motion vectors. The motion vectors can be restricted in a manner such that they are not allowed to point to every possible sub-pixel sample on a sub-pixel grid, but rather a subset of those sub-pixel samples. In addition, the same full/integer and half-pixel samples that can be used to obtain a quarter-pixel sample can also be used to obtain a one-eighth- pixel sample that the quarter-pixel sample is connected to. Hence, for every quarter- pixel sample, a motion vector could point to two additional positions/locations with one-eighth-pixel accuracy, where the two additional positions/locations can be calculated using the same half or integer-pixel samples which were used to obtain the quarter-pixel sample. Therefore, an arbitrary motion vector accuracy can be achieved without the need to perform additional interpolation stages or increase the complexity of a decoder configured to decode motion vector data.