Motion Estimation Pipelining for Video Coding Cycle Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video compression systems face high computational complexity in performing motion estimation for variable block size, sub-pixel motion vectors, especially when dealing with multiple reference frames and sub-pixel resolutions, due to the need for exhaustive searches and repetitive calculations.

Innovation Solution

The proposed solution enhances the unrestricted center biased diamond search (UCBDS) algorithm by pipelining and parallelizing SAD calculations, allowing for simultaneous processing of different block sizes and sub-pixel resolutions, reducing the number of necessary cycles through efficient data reuse and storage of repetitive calculations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If exhaustive search methods are used for motion estimation with variable block sizes and sub-pixel resolutions, then motion vector accuracy is improved, but computational complexity increases significantly

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

Solution Approach 1:

The motion estimation process is segmented into multiple stages: integer-pixel level search using UCBDS algorithm, followed by fractional-pixel refinement. This segmentation allows the computationally intensive exhaustive search to be limited to integer positions only, while fractional positions use simpler interpolation, thus reducing overall complexity while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The UCBDS algorithm performs preliminary action by quickly identifying the optimal integer-pixel motion vector before fractional-pixel refinement. This preliminary estimation narrows down the search space significantly, allowing subsequent fractional-pixel calculations to focus only on a small neighborhood around the integer optimum, thereby reducing computational burden.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If multiple reference frames are processed with different block sizes, then motion estimation accuracy is improved, but processing time increases

Engineering Contradiction:
Improvemotion estimation accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The processing is segmented by block size hierarchy: 16x16 macroblocks are processed first to establish coarse motion, then subdivided into 8x8 sub-blocks for refined motion compensation. This segmentation enables early termination for blocks with sufficient match quality, reducing processing time for complex multi-reference frame scenarios.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial action by selectively applying full fractional-pixel refinement only to blocks that require it based on integer-level assessment. Many blocks can be processed with integer-pixel precision alone, avoiding unnecessary computational overhead while maintaining adequate quality for those cases.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If sub-pixel resolution motion vectors are calculated for all blocks, then video quality is improved, but power consumption increases

Engineering Contradiction:
Improvevideo qualityVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

Fractional-pixel motion estimation is applied partially rather than universally. The system first performs integer-pixel estimation for all blocks, then applies computationally expensive fractional-pixel refinement only to blocks where it provides measurable quality improvement, thereby reducing overall power consumption while maintaining video quality where needed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Different levels of motion estimation precision are applied to different spatial regions and block types based on their specific requirements. High-motion or complex-texture regions receive full fractional-pixel treatment, while static or simple regions use integer-pixel estimation, optimizing the balance between quality and power consumption locally rather than uniformly across the entire frame.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8724702B1Methods and systems for motion estimation used in video coding
Publication Date: 2014.05.13 PORTALPLAYER INC
  • US8724702B1 patent drawing
  • US8724702B1 patent drawing
  • US8724702B1 patent drawing

AI summary

A framework for efficient sum of absolute difference (SAD) computations for variable block size, sub-pixel motion estimation is presented. Simultaneous, or parallelized, SAD computations can be performed by storing and re-using previous SAD computational information, which can speed up the performance of a motion estimation module by reducing the number of cycles necessary to perform a particular motion estimation algorithm.