3-Channel Color Compression With Partitioned Endpoints
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional compression formats for low dynamic range pixel data, such as DXT1, exhibit visible artifacts when decompressed, and there is a need for a format that allows efficient hardware decompression and processing of low dynamic range values as texture data without artifacts.
Innovation Solution
A new data compression format using a 3:1 compression ratio, representing 24 bits of low dynamic range data with 8 bits per pixel, which includes mode bits, a partition index, and compressed indices to allow efficient decompression in hardware, using four or six endpoint values and varying the number of partitions and bits for each endpoint to accommodate different image blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If conventional compression formats (DXT1) are used for low dynamic range data, then compression is achieved, but visible artifacts appear when decompressed
Solution Approach 1:
The invention segments the low dynamic range data into multiple partitions, with each partition having its own endpoint values. This allows different regions to be represented with locally optimized endpoints, reducing artifacts while maintaining compression. The data is divided into blocks where each block can have independent endpoint specifications.
Solution Approach 2:
The patent applies local quality by allowing different endpoint values for different partitions within the compressed data. Each partition can have its own set of endpoint values optimized for that specific region, rather than using uniform endpoints across the entire data set. This local optimization eliminates visible artifacts while maintaining overall compression efficiency.
2Reliability
If more bits are allocated to endpoint values, then compression efficiency decreases, but decompression quality improves
Solution Approach 1:
The invention uses dynamic bit allocation where the number of bits allocated to endpoint values varies depending on the specific data block and its characteristics. Mode bits indicate whether a four-point or six-point transform is used, allowing the compression scheme to adaptively allocate bits based on local requirements rather than using a fixed allocation throughout.
Solution Approach 2:
The patent changes parameters dynamically by using mode bits to specify different encoding schemes (four-point vs six-point transform) and by varying the number of partitions. This allows the system to optimize the balance between compression ratio and decompression quality on a per-block basis, allocating more bits to endpoints only where necessary.
3Productivity
If hardware decompression is implemented, then processing speed improves, but device complexity increases
Solution Approach 1:
The hardware decompression architecture is segmented into specialized units: an endpoint computation unit for calculating endpoint values, an index computation unit for processing pixel indices, and a pixel computation unit for final pixel value generation. This segmentation allows parallel processing and optimizes the decompression pipeline for the specific compression format.
Solution Approach 2:
The hardware decompression unit is designed to automatically interpret mode bits and partition indices to select the appropriate decompression algorithm without requiring external control logic. The system self-configures based on the compressed data format, reducing the complexity of external control circuits while maintaining high decompression speed.
Data Source
AI summary
Systems and methods for representing low dynamic range data in compressed formats with a fixed size block allow low dynamic range data to be stored in less memory. The compressed formats use 8 bits per pixel to represent 24 bits of low dynamic range data for each pixel. The compressed format includes four or six endpoint values, a partition index that specifies a mask for each pair of the endpoint values, and an index for each pixel in the block. The indices are compressed to allow more bits for the endpoint values. Mode bits are included to distinguish between the different encodings and various blocks within a single compressed image may be encoded differently. Compressed low dynamic range values may be efficiently decompressed in hardware.


