# US 10,375,418 B2 · Compressing and decompressing image data using compacted region transforms

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,375,418 B2
- Document ID: US10375418B2
- Status: Granted
- Kind: B2
- Application number: 15/585,323
- Filed: 2017-05-03
- Published: 2017-11-09
- Granted: 2019-08-06
- Earliest claimed: 2016-05-03
- Assignees: Imagination Technologies Limited
- Applicants: Imagination Technologies Limited
- Inventors: Simon Fenney
- Web page: https://patentgrep.com/patent/US10375418B2

## CPC

- H04N 19/94: Vector quantisation
- H03M 7/30: Compression (speech analysis-synthesis for redundancy reduction G10L19/00; for image communication H04N); Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M 7/3068: {Precoding preceding compression, e.g. Burrows-Wheeler transformation}
- H03M 7/3082: {Vector coding (for television signals, see H04N19/94)}
- H04N 19/124: Quantisation
- H04N 19/167: Position within a video image, e.g. region of interest [ROI]
- H04N 19/186: the unit being a colour or a chrominance component
- H04N 19/196: being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters (processing of motion vectors H04N19/513)
- H04N 19/426: using memory downsizing methods
- H04N 19/46: Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence)
- H04N 19/60: using transform coding
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)

## Abstract

There is a method of compressing image data comprising a set of image values each representing a position in image-value space so as to define an occupied region thereof. The method comprises selectively applying a series of compression transforms to subsets of the image data items to generate a transformed set of image data items occupying a compacted region of value space. The method further comprises identifying a set of one or more reference data items that quantizes the compacted region in value space. For each image data item in the set of image data items, a sequence of decompression transforms from a fixed set of decompression transforms is identified that generates an approximation of that image data item when applied to a selected one of the one or more reference data items. Each image data item in the set of image data items is encoded as a representation of the identified sequence of decompression transforms for that image data item. The encoded image data items, set of reference data items and the fixed set of decompression transforms are stored as compressed image data.

## Claims

### Claim 1

An image data compressor configured to compress image data comprising a set of image data items each representing a position in value space so as to define an occupied region thereof, the compressor comprising:
a compression transform block configured to selectively apply a series of compression transforms to subsets of the image data items to generate a transformed set of image data items occupying a compacted region of value space;
a quantization unit configured to identify a set of one or more reference data items that quantizes the compacted region in value space;
an encoding block configured to, for each image data item in the set of image data items:
identify a sequence of decompression transforms from a fixed set of decompression transforms that generates an approximation of that image data item when applied to a selected one of the set of one or more reference data items; and
encode the image data item as a representation of the identified sequence of decompression transforms for that image data item; and
a memory configured to store the encoded image data items, set of reference data items and the fixed set of decompression transforms as compressed image data.

### Claim 2

An image data decompressor configured to decompress compressed image data comprising an item of encoded image data encoding a position in image-value space, and a set of one or more reference data items, the encoded image data item identifying a sequence of transforms from a predetermined set of transforms, the decompressor comprising:
a decompression transform block configured to use the encoded image data item to apply the sequence of transforms identified by that encoded image data item to a reference data item selected from the set of one or more reference data items to thereby transform the reference data item to a decoded image data item.

### Claim 3 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the image data item is an n-tuple.

### Claim 4 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the image-value space is a colour space.

### Claim 5 (depends on 4)

An image data decompressor as claimed in claim 4, wherein the encoded image data item encodes an n-tuple specifying a position in the colour space.

### Claim 6 (depends on 5)

An image data decompressor as claimed in claim 5, wherein the decoded image data item specifies a position in colour space corresponding to the position in colour space encoded by the encoded image data item used by the decompression transform block to generate that decoded image data item.

### Claim 7 (depends on 4)

An image data decompressor as claimed in claim 4, wherein each of the one or more reference data items represents a position in the colour space.

### Claim 8 (depends on 7)

An image data decompressor as claimed in claim 7, wherein the decompression transform block is configured to use the encoded image data item to apply the sequence of transforms identified by that encoded data item to said reference data item to thereby transform that reference data item to a position in colour space corresponding to the position in colour space encoded by that encoded image data item.

### Claim 9 (depends on 4)

An image data decompressor as claimed in claim 4, wherein each position in colour space specifies one or more colour values.

### Claim 10 (depends on 5)

An image data decompressor as claimed in claim 5, wherein the image data is texture data and the image data item represents one or more colour values associated with a block of one or more texels.

### Claim 11 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the decompression transform block loads the set of one or more reference data items and the set of predetermined transforms from a memory.

### Claim 12 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the decompression transform block interprets information contained in the encoded image data item to select said reference data item from the set of one or more reference data items.

### Claim 13 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the decompression transform block is configured to interpret information contained in that encoded data item representing the selective application of each transform from the predetermined set of transforms to thereby identify the sequence of transforms to be applied to the selected reference data item.

### Claim 14 (depends on 13)

An image data decompressor as claimed in claim 13, wherein the information is in the form of a series of data units, each data unit representing the selective application of a corresponding transform from the predetermined set of transforms.

### Claim 15 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the decompression transform block is configured to output the decoded image data item in a format that occupies a greater number of bits than its corresponding encoded image data item.

### Claim 16 (depends on 2)

An image data decompressor as claimed in claim 2, wherein the compressed image data comprises a plurality of encoded image data items, and the decompression transform block is further configured to, for each encoded image data item, use the encoded image data item to apply the sequence of transforms identified by that encoded image data item to one of the reference data items selected from the set of one or more reference data items to thereby transform the reference data item to a decoded image data item.

### Claim 17 (depends on 16)

An image data decompressor as claimed in claim 16, wherein the decompression transform block is configured to use each encoded image data item to generate a corresponding decoded image data item.

### Claim 18 (depends on 1)

The image data compressor as claimed in claim 1, wherein the image data compressor is embodied in hardware on an integrated circuit.

### Claim 19 (depends on 2)

The image data decompressor as claimed in claim 2, wherein the image data decompressor is embodied in hardware on an integrated circuit.

### Claim 20

A non-transitory computer readable storage medium having stored thereon a computer readable description of an integrated circuit that, when processed in an integrated circuit manufacturing system, causes the integrated circuit manufacturing system to manufacture an image data decompressor configured to decompress compressed image data comprising an item of encoded image data encoding a position in image-value space, and a set of one or more reference data items, the encoded image data item identifying a sequence of transforms from a predetermined set of transforms, the decompressor comprising:
a decompression transform block configured to use the encoded image data item to apply the sequence of transforms identified by that encoded image data item to a reference data item selected from the set of one or more reference data items to thereby transform the reference data item to a decoded image data item.
