Bi-directional Prediction Weighting and Gradient Shifting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding standards, such as HEVC and upcoming VVC, face challenges in efficiently compressing video data with bi-directional prediction, particularly in terms of bitdepth requirements and computational complexity, especially with tools like Bi-Directional Optical Flow (BDOF) which demands high bitdepth for gradient calculations.

Innovation Solution

The implementation of multiple predefined weight sets for Bi-prediction with CU Weights (BCW) and selective enabling of Bi-Directional Optical Flow (BDOF) coding tools, allowing for weighted averaging of predictors and reducing bitdepth through gradient shifting and clipping, thereby optimizing compression efficiency and reducing computational complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If Bi-Directional Optical Flow (BDOF) is used for gradient calculations in bi-directional prediction, then prediction accuracy is improved, but bitdepth requirements increase and computational complexity increases

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

Solution Approach 1:

The patent applies parameter changes by introducing gradient shifting operations that modify the bitdepth of gradient values used in BDOF calculations. By right-shifting gradient values by a predetermined number of bits, the patent reduces the required bitdepth for gradient calculations while maintaining prediction accuracy within acceptable ranges. This parameter modification directly addresses the contradiction by changing the precision level of intermediate calculations.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements partial action by selectively applying gradient clipping and shifting operations only to specific gradient values that exceed certain thresholds. Instead of processing all gradient values at full precision, the patent applies reduced precision operations selectively, thereby reducing overall computational complexity and bitdepth requirements while maintaining accuracy for critical gradient values.

Inventive Principle:
Principle #16Partial or excessive action

2Adaptability or versatility

If multiple weight sets are provided for BCW with different candidate weights, then coding flexibility and compression efficiency are improved, but signaling overhead and processing complexity increase

Engineering Contradiction:
Improvecoding flexibilityVSAvoidprocessing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the weight selection process by dividing candidate weights into multiple predefined weight sets. Each weight set contains a specific subset of candidate weights, allowing the encoder to select appropriate weight sets based on picture characteristics such as low delay or non-low delay modes. This segmentation reduces the search space and processing complexity while maintaining coding flexibility through adaptive selection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic weight set selection based on picture characteristics and coding conditions. Different weight sets are activated depending on the delay mode (low delay or non-low delay), allowing the system to adaptively adjust the available candidate weights. This dynamic approach optimizes the balance between coding flexibility and processing complexity by enabling weight sets only when beneficial.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If gradient clipping and shifting operations are applied in BDOF, then bitdepth requirements are reduced and computational complexity is reduced, but potential loss of gradient precision occurs

Engineering Contradiction:
Improvecomputational complexityVSAvoidgradient precision
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent preserves gradient precision by maintaining both the original high-precision gradient values and the clipped/shifted versions. The original gradient values are kept as reference copies and used when high precision is required, while the clipped/shifted versions are used for computations where reduced precision is acceptable. This copying strategy ensures that no precision information is permanently lost.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent applies beforehand cushioning by introducing clipping operations that prevent gradient values from exceeding predetermined thresholds before they are used in computations. By pre-limiting the range of gradient values through clipping and shifting, the patent prevents potential overflow or excessive precision requirements in subsequent calculations, while still maintaining sufficient precision for accurate prediction.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS11470348B2Methods and apparatuses of video processing with bi-direction prediction in video coding systems
Publication Date: 2022.10.11 HFI INNOVATION INC
  • US11470348B2 patent drawing
  • US11470348B2 patent drawing
  • US11470348B2 patent drawing

AI summary

Exemplary video processing methods and apparatuses for encoding or decoding a current block by bi-directional prediction. Multiple weight sets are utilized for blending List 0 and List 1 predictors, and the selection among multiple weight sets may be implicitly determined based on video information. Each weight set is composed of multiple candidate weights, and one candidate weight is selected for the current block. A weight pair associated with the selected weight for the current block is used for weighted averaging List 0 and List 1 predictors of the current block to generate a final inter predictor. The video processing methods and apparatuses encode or decode the current block according to the final inter predictor of the current block.