Predictor Palette Initialization for Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional video coding techniques are inefficient for compressing screen-generated content with discrete-tone features and high contrast object boundaries, as they assume continuous-tone and smooth images, leading to suboptimal compression performance in applications like remote desktops and wireless displays.

Innovation Solution

The implementation of palette-based coding techniques, which create a table of colors (palette) to represent video data, allowing for efficient encoding and decoding by using index values instead of pixel values, and incorporating predictor palettes to improve coding efficiency across rows of blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional video coding techniques are used, then continuous-tone images can be compressed efficiently, but screen-generated content with discrete-tone features and high contrast boundaries cannot be compressed efficiently

Engineering Contradiction:
Improvecompression efficiencyVSAvoidadaptability to different content types
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent changes the fundamental parameter of how color information is represented by introducing palette-based coding. Instead of using continuous color values as in traditional techniques, the system uses discrete palette entries with associated color values. This parameter change enables efficient compression of screen-generated content with discrete tones while maintaining compatibility with continuous-tone content through adaptive palette construction.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements dynamic palette construction where the palette is not fixed but adapts to the content being coded. The system dynamically selects and updates palette entries based on the video data characteristics, allowing the same coding system to adapt between discrete-tone screen content and continuous-tone natural images, thus resolving the contradiction in content type adaptability.

Inventive Principle:
Principle #15Dynamics

2Productivity

If palette-based coding is implemented, then coding efficiency and compression performance improve for discrete-tone content, but complexity in palette management and initialization increases

Engineering Contradiction:
Improvecoding efficiencyVSAvoidpalette management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-establishing predictor palettes before actual coding begins. The system initializes predictor palettes using previously coded blocks or standard palettes, so that when coding starts, the palette structure is already in place and ready for efficient operation. This eliminates the need for complex real-time palette construction during the coding process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements self-service through automatic palette initialization and maintenance mechanisms. The predictor palette is automatically updated and maintained during coding operations without requiring manual intervention or complex external management. The system serves itself by using previously coded data to automatically construct and refine future palettes, reducing operational complexity.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If predictor palette is reinitialized based on first palette entries, then coding accuracy for subsequent blocks improves, but processing time and computational overhead increase

Engineering Contradiction:
Improvecoding accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by reinitializing the predictor palette only when necessary rather than continuously. The system determines when palette reinitialization is needed based on coding conditions (such as switching between different content types or reaching certain block boundaries), performing the action only partially and selectively. This reduces unnecessary computational overhead while maintaining coding accuracy when required.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11323733B2Predictor palette initialization in palette-based video coding
Publication Date: 2022.05.03 QUALCOMM INC
  • US11323733B2 patent drawing
  • US11323733B2 patent drawing
  • US11323733B2 patent drawing

AI summary

In an example a method of processing video data includes determining a first palette for a first block of video data that is located in a first row of blocks, generating a predictor palette for constructing at least one second palette of at least one second block of video data in the first row of blocks coded, reinitializing the predictor palette for determining a third palette of a third block of video data that is located in a second row of blocks, wherein re-initializing the predictor palette comprises re-initializing the predictor palette based on the one or more palette entries of the first palette or an initial predictor palette generated after coding the first block, determining the third palette of the third block based on the re-initialized predictor palette, and coding the third block using the third palette.