Guaranteed data compression

US11323718B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11323718-B2
Application numberUS-202016931949-A
CountryUS
Kind codeB2
Filing dateJul 17, 2020
Priority dateJun 29, 2018
Publication dateMay 3, 2022
Grant dateMay 3, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of converting 10-bit pixel data (e.g. 10:10:10:2 data) into 8-bit pixel data involves converting the 10-bit values to 7-bits or 8-bits and generating error values for each of the converted values. Two of the 8-bit output channels comprise a combination of a converted 7-bit value and one of the bits from the fourth input channel. A third 8-bit output channel comprises the converted 8-bit value and the fourth 8-bit output channel comprises the error values. In various examples, the bits of the error values may be interleaved when they are packed into the fourth output channel.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of converting 10-bit format pixel data into 8-bit format data, the method comprising, for each pixel: truncating the 10-bit input data channels; appending a different bit from a further input data channel to each of a first subset of the truncated channels; generating an error value for each of the 10-bit input data channels by comparing, for each of the first subset of channels, a first number of least significant bits (LSBs) of the input data channel and a same first number of bits derived from the truncated channel, and for each of a second, non-overlapping subset of channels, a second number of LSBs of the input data channel and a same second number of bits derived from the truncated channel; outputting, for each of the channels in the first subset, an 8-bit channel comprising the truncated channel with the appended bit from the further input data channel; outputting, for each of the channels in the second subset, an 8-bit channel comprising the truncated channel and outputting an 8-bit channel comprising the error values. 2. The method according to claim 1 , wherein each of the truncated channels in the first subset comprise 7 bits and each of the truncated channels in the second subset comprise 8 bits. 3. The method according to claim 1 , wherein generating an error value for each of the 10-bit input data channels by comparing, for each of the first subset of channels, a first number of LSBs of the input data channel and a same first number of bits derived from the truncated channel, and for each of the second subset of channels, a second number of LSBs of the input data channel and a same second number of bits derived from the truncated channel comprises: generating an error value for each of the 10-bit input data channels by combining using an XOR logic block, for each of the first subset of channels, three LSBs of the input data channel and three bits derived from the truncated channel, and for each of the second subset of channels, two LSBs of the input data channel and two bits derived from the truncated channel. 4. The method according to claim 1 , wherein the first number of bits derived from each of the truncated first subset of channels comprise the three most significant bits (MSBs) of the truncated channel and the second number of bits derived from each of the truncated second subset of channels comprise the two MSBs of the truncated channel. 5. The method according to claim 1 , further comprising: prior to generating the error values, expanding, using bit replication, each of the truncated channels to 10 bits, and wherein the first number of bits derived from each of the truncated first subset of channels comprise the three LSBs of the expanded truncated channel and the second number of bits derived from each of the truncated second subset of channels comprise the two LSBs of the expanded truncated channel. 6. The method according to claim 1 , further comprising, prior to appending the bits from the further input data channel: encoding the further input data channel using Gray coding. 7. The method according to claim 1 , wherein appending a different bit from the further input data channel to each of the truncated first subset of channels comprises: appending, as a most significant bit (MSB), a different bit from the further input data channel to each of the truncated first subset of channels. 8. The method according to claim 1 , wherein the 10-bit pixel data comprises RGBA pixel data. 9. A method of compressing 10-bit format pixel data comprising: converting 10-bit format pixel data into 8-bit format data using the method according to claim 1 ; and compressing a block of 8-bit format data using a lossless compression method to generate a first compressed data block. 10. The method according to claim 9 , further comprising: assessing the first compressed data block against a target compression threshold; in response to determining that the first compressed data block satisfies the target compression threshold, outputting the first compressed data block; and in response to determining that the first compressed data block does not satisfy the target compression threshold, discarding one or more bits from the 8-bit channel comprising the error values in the block of 8-bit format data to generate a reduced size block of data and compressing the reduced size block of data using the lossless compression method to generate a second compressed data block, wherein the second compressed data block is smaller than the first compressed data block. 11. The method according to claim 10 , further comprising: outputting the second compressed data block. 12. The method according to claim 10 , further comprising: assessing the second compressed data block against the target compression threshold; in response to determining that the second compressed data block satisfies the target compression threshold, outputting the second compressed data block; and in response to determining that the second compressed data block does not satisfy the target compression threshold, outputting, instead of the second compressed data block, a third compressed data block generated from the block of 8-bit format data, wherein the third compressed data block is generated using a lossy compression technique, and wherein the lossy compression technique is arranged to ensure that the third compressed data block satisfies the target compression threshold. 13. A method of converting 888X format pixel data into 10:10:10:2 format data, the method comprising: determining whether a fourth channel of the input data channels is an 8-bit channel and in response to determining that the fourth channel comprises fewer than 8-bits per pixel, converting the fourth channel into an 8-bit channel by adding one or more zeros to data for each pixel; removing a most significant bit (MSB) from each of the first and third input data channels and combining them to form a 2-bit alpha channel; using bit replication to increase each of the first, second and third input data channels to 10-bit channels; for each of the first and third channels, modifying three least significant bits (LSBs) by combining them with corresponding bits from the fourth channel to generate a 10-bit red output channel and a 10-bit blue output channel respectively and for the second channel, modifying two LSBs by combining them with corresponding bits from the fourth channel to generate a 10-bit green output channel. 14. The method according to claim 13 , further comprising: Gray decoding the 2-bit alpha channel. 15. A data decompression unit arranged to convert 888X format pixel data into 10:10:10:2 format data, the hardware comprising: conversion logic arranged, for each pixel, to determine whether a fourth channel of the input data channels is an 8-bit channel and in response to determining that the fourth channel comprises fewer than 8-bits per pixel, to convert the fourth channel into an 8-bit channel by adding one or more zeros to data for each pixel; hardware logic arranged, for each pixel, to remove a most significant bit (MSB) from each of the first and third input data channels and combining them to form a 2-bit alpha channel; bit replication logic arranged, for each pixel, to use bit replication to increase each of the first, second and third input data channels to 10-bit channels; and hardware logic arranged, for each pixel and for each of the first and third channels, to modify three LSBs by combining them with corresponding bits from the fourth channel to generate a 10-bit red output channel and a 10-bit blue output

Assignees

Inventors

Classifications

  • H04N19/42Primary

    characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation (H04N19/635 takes precedence) · CPC title

  • the region being a block, e.g. a macroblock · CPC title

  • Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • the unit being a pixel · CPC title

  • General purpose image data processing · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11323718B2 cover?
A method of converting 10-bit pixel data (e.g. 10:10:10:2 data) into 8-bit pixel data involves converting the 10-bit values to 7-bits or 8-bits and generating error values for each of the converted values. Two of the 8-bit output channels comprise a combination of a converted 7-bit value and one of the bits from the fourth input channel. A third 8-bit output channel comprises the converted 8-bi…
Who is the assignee on this patent?
Imagination Tech Ltd
What technology area does this patent fall under?
Primary CPC classification H04N19/42. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 03 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).