Palette Index Run Coding for Discrete Video Compression

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

Palette-based video coding techniques, which involve forming a 'palette' as a table of colors for representing video data, allowing for efficient coding of areas with a small number of colors by indexing pixels rather than encoding actual pixel values, and using predictor palettes to improve coding efficiency across 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 encoding continuous color values directly, the system uses discrete palette entries with associated indices, transforming the representation from continuous to discrete domain to match the nature of screen-generated content

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent segments the color space into discrete palette entries, dividing the continuous color range into a finite set of representative colors. This segmentation allows efficient coding of discrete-tone content by assigning indices to palette entries rather than encoding full color values for each pixel

Inventive Principle:
Principle #1Segmentation

2Productivity

If palette-based coding is used, then compression efficiency for discrete-tone content is improved, but complexity of the coding system increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcoding system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-defining palettes with representative color entries before the actual coding process. These pre-computed palettes are generated in advance and stored, allowing the coding system to simply reference and index into them during video encoding, thereby reducing real-time computational complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by referring to pre-defined palette entries rather than computing color values in real-time. The system copies color information from the palette table into the compressed data stream as indices, eliminating the need for complex real-time color processing and reducing system complexity

Inventive Principle:
Principle #26Copying

3Measurement precision

If actual pixel values are encoded, then accuracy of color representation is maintained, but amount of data to be transmitted increases

Engineering Contradiction:
Improvecolor representation accuracyVSAvoiddata size
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential color information by representing colors through palette indices rather than full pixel values. The actual color data is extracted into a separate palette structure, and only the compact indices are transmitted in the compressed stream, significantly reducing data quantity while maintaining color representation accuracy through the pre-defined palette entries

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10382749B2Coding run values based on palette index in palette-based video coding
Publication Date: 2019.08.13 QUALCOMM INC
  • US10382749B2 patent drawing
  • US10382749B2 patent drawing
  • US10382749B2 patent drawing

AI summary

In an example a method of processing video data includes determining a run value that indicates a run-length of a run of a palette index of a block of video data, wherein the palette index is associated with a color value in a palette of color values for coding the block of video data, the method also includes determining a context for context adaptive coding of data that represents the run value based on the palette index, and coding the data that represents run value from a bitstream using the determined context.