Texture Encoding via Resolution Downsampling and Difference Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current texture compression techniques in computer graphics systems face challenges in balancing image quality with storage and bandwidth requirements, particularly in mobile devices, where they often compromise on either quality or performance.

Innovation Solution

The method involves encoding texture data by determining a lower resolution representation and a full resolution set of difference data, where the lower resolution data represents low frequencies and the difference data represents high frequencies, allowing for efficient compression while maintaining acceptable image quality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If texture data is stored in full resolution with complete colour values for each texel, then image quality is maintained, but storage requirements and bandwidth consumption increase significantly

Engineering Contradiction:
Improveimage qualityVSAvoidstorage requirements
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The texture data is divided into 4×4 pixel blocks, with each block represented by 4 base colour values. This segmentation allows efficient compression while maintaining the ability to reconstruct high-quality texture data through interpolation within each block.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the representation parameters from storing individual texel colours to storing base colour values and gradient information. By changing from direct colour storage to a parametric representation (base colours + gradients), the patent achieves compression while preserving image quality through mathematical reconstruction.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If texture data is compressed using block truncation coding with base colours, then storage requirements are reduced, but image quality deteriorates

Engineering Contradiction:
Improvestorage requirementsVSAvoidimage quality
Core Design Contradiction:
Quantity of substanceVSManufacturing precision

Solution Approach 1:

The patent divides texture data into 4×4 blocks and represents each block with 4 base colour values, creating a structured segmentation that balances compression efficiency with quality preservation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces gradient information as an additional dimension to the base colour values. By adding gradient data that captures spatial variations within each block, the patent reconstructs texture data with higher fidelity than simple base colour averaging, thus improving image quality while maintaining compression.

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

3Manufacturing precision

If more data is stored per texture block to improve image quality, then manufacturing precision increases, but bandwidth consumption and processing complexity increase

Engineering Contradiction:
Improveimage qualityVSAvoiddata processing complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent uses a parametric representation with base colours and gradients that allows quality reconstruction through simple mathematical operations, avoiding the need to store and process large amounts of raw texture data while maintaining image quality.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent pre-calculates and stores gradient information during compression, which enables efficient quality reconstruction during decompression. This preliminary preparation of gradient data simplifies the decompression process while ensuring high image quality output.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10147202B2Methods of and apparatus for encoding and decoding data
Publication Date: 2018.12.04 ARM LTD
  • US10147202B2 patent drawing
  • US10147202B2 patent drawing
  • US10147202B2 patent drawing

AI summary

To encode a texture to be used in a graphics processing system, the texture is first downscaled to generate a lower resolution representation of the texture 41. An upscaled version 42 of the lower resolution version of the texture is then compared to the original texture to determine a set of difference values indicating for each texel the difference between the value of the texel in the upscaled version of the texture and in the original texture 43. An encoded texture data block is then generated for each 8×8 block of texels in the original texture 44. Each encoded texture data block contains a base color value taken from the lower resolution representation of the texture and a set of index values indicating the difference data from the determined set of difference data to be used when decoding the block of texture data to generate the data values to be used for the texture data elements that the block of texture data represents.