Palette Predictor Initialization for Video Coding Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video coding technologies face inefficiencies in palette predictor initialization, particularly when features like tiles and slices are enabled, leading to significant losses in coding efficiency due to interrupted or reset palette prediction mechanisms.

Innovation Solution

The introduction of techniques that allow for the initialization of palette predictors using PPS-level table entries, enabling the option to set the size of the palette predictor to zero and utilizing both SPS and PPS palette predictor initializers for more flexible and efficient initialization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If palette predictor initialization is performed at each picture parameter set (PPS) level, then coding flexibility is improved, but coding efficiency deteriorates due to repeated initialization overhead

Engineering Contradiction:
Improvecoding flexibilityVSAvoidcoding efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The initialization process is segmented into two levels: sequence parameter set (SPS) level for global initialization and picture parameter set (PPS) level for local updates. This segmentation allows different parts of the system to operate at appropriate granularities, reducing redundant operations while maintaining flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Palette predictor initializers are pre-configured at the SPS level before picture-level processing. This preliminary action establishes a baseline configuration that can be efficiently updated at PPS level without requiring complete re-initialization, thus improving coding efficiency while preserving adaptability.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If tiles and slices features are enabled, then video coding versatility is improved, but palette prediction mechanism is interrupted or reset causing coding efficiency loss

Engineering Contradiction:
Improvevideo coding versatilityVSAvoidcoding efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The palette prediction mechanism maintains continuity across tile and slice boundaries by preserving predictor state information. Instead of resetting the palette predictor at each tile or slice boundary, the system continues using the predictor throughout the picture, ensuring uninterrupted useful action and maintaining coding efficiency while supporting versatile tile and slice configurations.

Inventive Principle:
Principle #20Continuity of useful action

3Measurement precision

If palette predictor size is increased, then prediction accuracy is improved, but memory usage and processing complexity increase

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

Solution Approach 1:

Instead of maintaining a complete palette predictor for all possible cases, the system uses partial initialization with selective updates at PPS level. This approach applies partial action by initializing only the necessary portion of the predictor at each level, achieving sufficient prediction accuracy without the full complexity of complete initialization everywhere.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3350995B1Palette predictor initialization and merge for video coding
Publication Date: 2021.09.01 QUALCOMM INC
  • EP3350995B1 patent drawingFigure 1
  • EP3350995B1 patent drawingFigure 2
  • EP3350995B1 patent drawingFigure 3

AI summary

A device for decoding video data includes a memory configured to store the video data; and one or more processors configured to receive, in a picture parameter set (PPS), a first syntax element indicating that a palette predictor is to be generated using PPS-level palette predictor initializers; receive, in the PPS, a second syntax element indicating a number of the PPS-level palette predictor initializers included in the PPS is equal to zero; and decode a block of video data based on the first syntax element and the second syntax element.