Encoder Sub-Block Motion Compensation Dynamics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video encoding technologies face inefficiencies in motion compensation, particularly when performing motion compensation in sub-block units, which can lead to increased processing time, reduced image quality, and decreased prediction accuracy.

Innovation Solution

An encoder and decoder system that dynamically determines whether to perform motion compensation in block or sub-block units based on the availability of reconstructed images, using bilateral frame rate up-conversion (FRUC) mode to derive and utilize motion vectors efficiently, even when reconstructed images of neighboring sub-blocks are not available.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If motion compensation is performed in sub-block units, 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 implements dynamic selection of motion compensation units (block or sub-block) based on the availability of reconstructed images. The system adapts the processing granularity dynamically: when reconstructed images are available, sub-block level motion compensation is performed for higher accuracy; when not available, block level motion compensation is used to reduce processing time. This dynamic adaptation resolves the contradiction between prediction accuracy and processing time.

Inventive Principle:
Principle #15Dynamics

2Measurement precision

If motion compensation is performed in sub-block units, then prediction accuracy is improved, but processing complexity increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system dynamically adjusts the motion compensation processing level based on the availability of reconstructed images. When reconstructed images are available, the system performs complex sub-block level motion compensation with multiple derivation modes. When not available, it simplifies to block level motion compensation. This dynamic complexity adaptation resolves the contradiction between prediction accuracy and processing complexity.

Inventive Principle:
Principle #15Dynamics

3Productivity

If motion compensation is performed in block units, then processing speed is maintained, but prediction accuracy decreases

Engineering Contradiction:
Improveprocessing speedVSAvoidprediction accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent implements dynamic selection between block-level and sub-block-level motion compensation based on reconstructed image availability. When reconstructed images are unavailable, block-level motion compensation maintains processing speed. When available, the system transitions to sub-block-level motion compensation to improve prediction accuracy. This dynamic approach resolves the contradiction between processing speed and prediction accuracy.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11202093B2Encoder, decoder, encoding method, and decoding method
Publication Date: 2021.12.14 PANASONIC INTELLECTUAL PROPERTY CORP OF AMERICA
  • US11202093B2 patent drawing
  • US11202093B2 patent drawing
  • US11202093B2 patent drawing

AI summary

An encoder includes memory and circuitry. The circuitry (i) encodes first control information indicating one mode, (ii) encodes second control information indicating whether it is possible to perform the motion compensation in a unit of a sub-block, (iii) derives the motion vector of the block in the one mode, (iv) determines whether to perform the motion compensation in the unit of the sub-block or the motion compensation in a unit of the block, (v) derives a motion vector of the sub-block and performs the motion compensation in the unit of the sub-block using the motion vector of the sub-block when determining to perform the motion compensation in the unit of the sub-block, and (vi) performs the motion compensation in the unit of the block using the motion vector of the block when determining to perform the motion compensation in the unit of the block.