Parallel Histogram Calculation for Palette Table Derivation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional palette coding techniques require excessive memory for histogram calculation due to exponential growth with pixel bit depth, making them inefficient for high-bit-depth video compression standards like HEVC and AV1.

Innovation Solution

The method involves calculating multiple histograms in parallel for different subsets of pixel component bits, selecting the highest bins from each, and concatenating them to derive a palette table, reducing memory requirements by evaluating only a subset of bits for each histogram.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional palette coding techniques are used to calculate histograms for all pixel bit depths, then accurate palette table derivation is achieved, but memory requirements increase exponentially with pixel bit depth

Engineering Contradiction:
Improvepalette table derivation accuracyVSAvoidmemory requirements
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent divides the pixel component bits into multiple subsets (e.g., first subset and second subset) and calculates separate histograms for each subset. This segmentation reduces the memory required for each individual histogram while maintaining the ability to derive accurate palette tables by combining results from multiple histograms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from calculating a single comprehensive histogram in one dimension to calculating multiple smaller histograms across different bit subsets. By changing the dimensional approach from a single large histogram to multiple smaller histograms calculated in parallel, memory requirements are reduced while preserving palette derivation accuracy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of information

If histograms are calculated for all pixel bits, then complete color distribution information is captured, but calculation and processing time increases

Engineering Contradiction:
Improvecolor distribution informationVSAvoidcalculation and processing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

By segmenting the bit depth into multiple subsets and calculating histograms for each subset separately, the patent reduces the computational complexity and processing time for each individual histogram calculation, while still capturing complete color distribution information through the combination of multiple histograms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent calculates histograms for subsets of bits rather than all bits simultaneously, performing partial actions on different bit portions. This approach reduces the excessive computational burden of processing all bits in a single histogram while ensuring that the combination of partial results provides complete color distribution information.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If the number of histogram bins is increased to match pixel bit depth, then precise histogram representation is achieved, but storage requirements increase exponentially

Engineering Contradiction:
Improvehistogram representation precisionVSAvoidstorage requirements
Core Design Contradiction:
Measurement precisionVSVolume of stationary object

Solution Approach 1:

The patent segments the histogram calculation into multiple smaller histograms based on bit subsets. Each smaller histogram requires fewer bins and thus less storage space, while the combination of multiple segmented histograms maintains the precision needed for accurate palette table derivation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes from a single large histogram requiring exponential storage to multiple smaller histograms calculated in parallel across different bit dimensions. This dimensional transformation reduces storage requirements from O(2^N) for N bits to multiple smaller O(2^k) histograms where k < N, while preserving measurement precision.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS12075065B2Parallel histogram calculation with application to palette table derivation
Publication Date: 2024.08.27 ATI TECHNOLOGIES ULC
  • US12075065B2 patent drawing
  • US12075065B2 patent drawing
  • US12075065B2 patent drawing

AI summary

Systems, apparatuses, and methods for performing parallel histogram calculation with application to palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of pixel component value bits of a block of pixels. Then, the encoder selects a first number of the highest pixel count bins from the first histogram. Also, the encoder calculates a second histogram for a second portion of pixel component value bits of the block. The encoder selects a second number of the highest pixel count bins from the second histogram. A third histogram is calculated from the concatenation of bits assigned to the first and second number of bins, and the highest pixel count bins are selected from the third histogram. A palette table is derived based on these highest pixel count bins selected from the third histogram, and the block of pixels is encoded using the palette table.