Adaptive Motion Search Control for Variable Block Size Partitions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video encoding techniques face high computational complexity due to extensive motion search processes, particularly when performing motion searches for variable block size partitions, which increases processing time without significantly improving search accuracy.

Innovation Solution

Implementing a motion search algorithm that uses an initial search range to find a motion vector for a block, partitions the block into sub-blocks, and performs subsequent motion searches using a reduced search range based on the initial motion vector, thereby reducing computational load while maintaining search accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a full motion search is performed for each sub-block in variable block size partitions, then motion search accuracy is improved, but computational complexity increases significantly

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

Solution Approach 1:

The motion search process is segmented into two stages: a coarse search at the block level to identify a preliminary motion vector, followed by a refined search at the sub-block level using a reduced search range centered on the preliminary vector. This segmentation allows the system to maintain accuracy while reducing the total number of search points evaluated.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A preliminary motion search is performed on the entire block before processing individual sub-blocks. The results of this preliminary action provide an initial motion vector that serves as the center for subsequent sub-block searches, eliminating the need for each sub-block to perform a complete independent search and thereby reducing computational complexity.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a reduced search range is used for sub-block motion searches, then computational cost is reduced, but motion search accuracy may deteriorate

Engineering Contradiction:
Improveencoding speedVSAvoidmotion vector accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The search strategy applies different quality levels to different stages of the process: a comprehensive full-range search at the block level to ensure global accuracy, followed by a focused local search at the sub-block level using a reduced range centered on the block-level motion vector. This local quality approach maintains overall accuracy while improving efficiency.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The block-level motion vector serves as an intermediary that bridges the gap between the initial full search and the final sub-block optimization. This intermediary provides a reliable starting point for the reduced search range, ensuring that the limited search space still captures the optimal motion vector for each sub-block.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If variable block size partitions are used, then compression efficiency is improved, but processing time increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The processing of variable block size partitions is segmented into a hierarchical structure where a single motion search is performed for the parent block, followed by optimized searches for each child sub-block using reduced search ranges. This segmentation reduces the total processing time while maintaining the compression efficiency benefits of variable block sizes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The motion vector for the parent block is determined through a preliminary full-range search before processing the variable size partitions. This preliminary action provides a foundation that accelerates subsequent processing of sub-blocks, reducing the overall processing time while preserving compression efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9967558B1Adaptive motion search control for variable block size partitions in video coding
Publication Date: 2018.05.08 GOOGLE LLC
  • US9967558B1 patent drawing
  • US9967558B1 patent drawing
  • US9967558B1 patent drawing

AI summary

A block of a video data stream may be subject to a motion search for comparing inter prediction of the blocks to intra prediction of the block while being partitioned. A motion search using an initial search range finds a first motion vector for the block. The blocks is partitioned into at least two sub-blocks, each having a same size, and one or more motion searches are performed for each sub-block using a second search range and the first motion vector where the second search range is a fraction of the initial search range. Respective error values associated with each of the motion searches are compared to select a partition for coding the block, and the block may be encoded using the selected partition. Performing inter prediction in this fashion can improve the performance of an encoder in terms of both execution time and compression ratio.