# US 10,769,819 B2 · Floating-point data compression

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

- Number: US 10,769,819 B2
- Document ID: US10769819B2
- Status: Granted
- Kind: B2
- Application number: 16/140,108
- Filed: 2018-09-24
- Published: 2020-03-26
- Granted: 2020-09-08
- Earliest claimed: 2018-09-24
- Assignees: QUALCOMM Incorporated
- Applicants: QUALCOMM Incorporated
- Inventors: In Suk Chong; Xianglin Wang; Cheng-Teh Hsieh
- Web page: https://patentgrep.com/patent/US10769819B2

## CPC

- G06T 9/002: {using neural networks}
- H03M 7/3079: {Context modeling}
- G06F 7/483: Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers {(G06F7/4806, G06F7/4824, G06F7/49, G06F7/491, G06F7/544 take precedence)}
- H03M 7/24: Conversion to or from floating-point codes
- 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/3059: {Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression}
- H04N 19/124: Quantisation
- H04N 19/182: the unit being a pixel
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- 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)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Certain aspects of the present disclosure provide a method of encoding data. The method generally includes receiving data comprising a fractional number comprising an exponential component and a fractional component, the exponential component being represented by an exponential bit sequence, the fractional component being represented by a fractional bit sequence. The method further includes determining if the fractional component is within a threshold of 0 or 1. The method further includes setting the fractional component to 0 when the fractional component is within the threshold of 0 or 1. The method further includes downscaling the fractional bit sequence based on a difference between the exponential component and a second threshold. The method further includes encoding the data. The method further includes transmitting the encoded data.

## Claims

### Claim 1

A method of encoding data, the method comprising:
receiving data comprising a fractional number comprising an exponential component and a fractional component, the exponential component being represented by an exponential bit sequence, the fractional component being represented by a fractional bit sequence, wherein the data comprises image data comprising a plurality of tiles, a first tile of the plurality of tiles being represented at least in part by the fractional number;
determining if the fractional component is within a threshold of 0 or 1;
setting the fractional component to 0 when the fractional component is within the threshold of 0 or 1;
downscaling the fractional bit sequence based on a difference between the exponential component and a second threshold;
encoding the data comprising:
determining a predictor value for the first tile; and
calculating a residual for the first tile based on the fractional number and the predictor value; and
transmitting the encoded data.

### Claim 2 (depends on 1)

The method of claim 1, further comprising incrementing the exponential component by 1 when the fractional component is within the threshold of 1.

### Claim 3 (depends on 1)

The method of claim 1, wherein the fractional number further comprises a sign component represented by a sign bit indicating a sign of the fractional number.

### Claim 4 (depends on 1)

The method of claim 1, wherein downscaling the fractional bit sequence comprises shifting the fractional bit sequence by a number of bits based on the difference between the exponential component and the second threshold.

### Claim 5 (depends on 1)

The method of claim 1, further comprising determining if the exponential component is greater than a third threshold, wherein downscaling the fractional bit sequence is performed when the exponential component is greater than the second third threshold.

### Claim 6 (depends on 1)

The method of claim 1, wherein the predictor value corresponds to a spatial neighbor of the first tile in the plurality of tiles.

### Claim 7 (depends on 1)

The method of claim 1, wherein the predictor value corresponds to a maximum or minimum value of the plurality of tiles.

### Claim 8 (depends on 1)

The method of claim 1, wherein encoding the data further comprises applying variable length coding to the residual.

### Claim 9

A computer system comprising:
a memory; and
a processor coupled to the memory, the processor being configured to:
receive data comprising a fractional number comprising an exponential component and a fractional component, the exponential component being represented by an exponential bit sequence, the fractional component being represented by a fractional bit sequence, wherein the data comprises image data comprising a plurality of tiles, a first tile of the plurality of tiles being represented at least in part by the fractional number;
determine if the fractional component is within a threshold of 0 or 1;
set the fractional component to 0 when the fractional component is within the threshold of 0 or 1;
downscale the fractional bit sequence based on a difference between the exponential component and a second threshold;
encode the data comprising to:
determine a predictor value for the first tile; and
calculate a residual for the first tile based on the fractional number and the predictor value; and
transmit the encoded data.

### Claim 10 (depends on 9)

The computer system of claim 9, wherein the processor is further configured to increment the exponential component by 1 when the fractional component is within the threshold of 1.

### Claim 11 (depends on 9)

The computer system of claim 9, wherein the fractional number further comprises a sign component represented by a sign bit indicating a sign of the fractional number.

### Claim 12 (depends on 9)

The computer system of claim 9, wherein downscaling the fractional bit sequence comprises shifting the fractional bit sequence by a number of bits based on the difference between the exponential component and the second threshold.

### Claim 13 (depends on 9)

The computer system of claim 9, wherein the processor is further configured to determine if the exponential component is greater than a third threshold, wherein downscaling the fractional bit sequence is performed when the exponential component is greater than the third threshold.

### Claim 14

A non-transitory computer readable medium having instructions stored thereon for encoding data, execution of the instructions by a computing system causing the computing system to carry out the steps of:
receiving data comprising a fractional number comprising an exponential component and a fractional component, the exponential component being represented by an exponential bit sequence, the fractional component being represented by a fractional bit sequence, wherein the data comprises image data comprising a plurality of tiles, a first tile of the plurality of tiles being represented at least in part by the fractional number;
determining if the fractional component is within a threshold of 0 or 1;
setting the fractional component to 0 when the fractional component is within the threshold of 0 or 1;
downscaling the fractional bit sequence based on a difference between the exponential component and a second threshold;
encoding the data comprising:
determining a predictor value for the first tile; and
calculating a residual for the first tile based on the fractional number and the predictor value; and
transmitting the encoded data.

### Claim 15 (depends on 14)

The non-transitory computer readable medium of claim 14, wherein execution of the instructions by the computing system further cause the computing system to carry out the step of incrementing the exponential component by 1 when the fractional component is within the threshold of 1.

### Claim 16 (depends on 14)

The non-transitory computer readable medium of claim 14, wherein the fractional number further comprises a sign component represented by a sign bit indicating a sign of the fractional number.

### Claim 17 (depends on 14)

The non-transitory computer readable medium of claim 14, wherein downscaling the fractional bit sequence comprises shifting the fractional bit sequence by a number of bits based on the difference between the exponential component and the second threshold.

### Claim 18 (depends on 14)

The non-transitory computer readable medium of claim 14, wherein execution of the instructions by the computing system further cause the computing system to carry out the step of determining if the exponential component is greater than a third threshold, wherein downscaling the fractional bit sequence is performed when the exponential component is greater than the third threshold.
