Unified Candidate List Derivation for Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding techniques, such as those in MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4 AVC, and HEVC, face inefficiencies in the implementation of shared candidate list derivation, parallel candidate list derivation, and history-based motion vector candidate buffers, leading to suboptimal coding efficiency and increased computational complexity.

Innovation Solution

The proposed solution involves determining area size thresholds to partition video blocks into parallel estimation areas and shared candidate lists, where blocks within smaller partitions are coded in parallel or using shared candidate lists, and maintaining history-based motion vector candidate buffers to optimize inter-prediction processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If shared candidate list derivation and parallel candidate list derivation are implemented separately, then coding tools can be applied independently, but coding efficiency is suboptimal and computational complexity increases

Engineering Contradiction:
Improvecoding efficiencyVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges shared candidate list derivation and parallel candidate list derivation into a unified process. The method combines both coding tools by integrating their candidate lists, allowing them to work together synergistically rather than independently, thereby improving coding efficiency while managing computational complexity through coordinated operation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified candidate list structure serves multiple functions simultaneously: it supports both shared candidate list derivation and parallel candidate list derivation, enabling the system to apply both coding tools through a single integrated mechanism rather than requiring separate independent implementations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Manufacturing precision

If video blocks are partitioned into smaller partitions for shared candidate lists, then coding precision improves, but device complexity increases

Engineering Contradiction:
Improvecoding precisionVSAvoidpartitioning complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent applies segmentation by partitioning video blocks into smaller sub-blocks that can independently utilize shared candidate lists. This segmentation enables more precise motion estimation for each sub-block while maintaining a unified candidate list structure, thereby improving coding precision without requiring completely separate processing for each partition.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The method applies local quality by allowing different partitions to use the same shared candidate list structure but with locally adapted motion vectors and prediction parameters. This enables each partition to be optimized for its specific characteristics while maintaining consistency through the shared list, improving precision without proportionally increasing overall complexity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11785223B2Shared candidate list and parallel candidate list derivation for video coding
Publication Date: 2023.10.10 QUALCOMM INC
  • US11785223B2 patent drawing
  • US11785223B2 patent drawing
  • US11785223B2 patent drawing

AI summary

A video coder can be configured to code video data by determining a first block size threshold for a block of video data; determining a second block size threshold, wherein the second block size threshold is smaller than the first block size threshold; partitioning the block of video data into smaller sub-blocks; in response to determining that a first partition of the partitioned block is smaller or equal to the first block size threshold, determining that blocks within the partition belong to a parallel estimation area; and in response to determining that a second partition of the partitioned block is smaller or equal to the second block size threshold, determining that blocks within the second partition belong to an area for a shared candidate list.