Palette Index Run Coding for Discrete Video Compression
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
2Productivity
If palette-based coding is used, then compression efficiency for discrete-tone content is improved, but complexity of the coding system increases
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
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
3Measurement precision
If actual pixel values are encoded, then accuracy of color representation is maintained, but amount of data to be transmitted increases
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
Data Source
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.


