Parallel Low Resolution Pipeline for Video Encoding Motion Estimation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The computational complexity of determining motion vectors for video encoding using inter prediction techniques is high, making real-time or near real-time transmission and display challenging due to the extensive search required for candidate motion vectors.

Innovation Solution

A low resolution pipeline is introduced in parallel with the main encoding pipeline, which performs motion estimation searches on downscaled image data to determine low resolution inter prediction modes, reducing the search space for the main pipeline and providing initial candidates for motion vectors, and also calculates global motion statistics for image stabilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If inter prediction techniques are used for video encoding, then compression efficiency is improved, but computational complexity increases

Engineering Contradiction:
Improvedata sizeVSAvoidcomputational complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent divides the image data into multiple blocks and processes motion estimation for each block separately. This segmentation allows the system to manage computational complexity by breaking down the overall encoding task into smaller, more manageable units that can be processed independently and in parallel.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary motion estimation using a first set of candidate motion vectors before final encoding. This preliminary action reduces the search space for the final motion vector determination, thereby decreasing the overall computational complexity while maintaining encoding efficiency.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If exhaustive motion estimation search is performed, then motion vector accuracy is improved, but encoding speed decreases

Engineering Contradiction:
Improvemotion vector accuracyVSAvoidencoding speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent performs motion estimation using a limited set of candidate motion vectors rather than an exhaustive search. This partial action approach finds sufficiently accurate motion vectors without the computational burden of checking all possible candidates, thus maintaining encoding speed while achieving acceptable accuracy.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent applies different motion estimation strategies to different blocks based on their local characteristics. For blocks requiring high precision, more candidates are evaluated, while for others, a reduced set suffices. This local quality approach optimizes the balance between accuracy and speed for each region.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If large search area is used for motion vectors, then prediction accuracy is improved, but processing time increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the large search area into multiple smaller regions and performs motion estimation in each region separately. This segmentation reduces the processing time by allowing parallel computation and avoiding the need to search the entire large area exhaustively, while still maintaining prediction accuracy through multi-region coverage.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11336915B2Global motion vector video encoding systems and methods
Publication Date: 2022.05.17 APPLE INC
  • US11336915B2 patent drawing
  • US11336915B2 patent drawing
  • US11336915B2 patent drawing

AI summary

Systems and methods for improving operational efficiency of a video encoding system used to encode image data are provided. In embodiments, the video encoding system includes a low resolution pipeline that includes a low resolution motion estimation block, which generates downscaled image data by reducing resolution of the image data and performs a motion estimation search using the downscaled image data and previously downscaled image data. The video encoding system also includes a main encoding pipeline in parallel with the low resolution pipeline that includes a motion estimation block, which determines a global motion vector based on data from the low resolution motion estimation block. The main encoding pipeline may utilize the global motion vector in determining a candidate inter prediction mode.