← Back to Patent Explorer
EP1081649A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Apparatus and method for image compression

Assignee: ATI International SRL
•
Filing: 2000-09-01
•
Granted: —
•
Expires: 2020-09-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for compressing parameter values for pixels within a frame (10) is accomplished by first grouping pixels in the display frame into a plurality of pixel blocks (20), where each pixel block (20) includes a plurality of pixels. For at least one of the pixel blocks (22), the parameter values for the pixel block (22) are translated into a column-wise differential slope representation that represents the parameter values as a plurality of reference points, a plurality of slopes, and a plurality of slope differentials. The column-wise differential slope representation is then transformed into a planar differential slope representation that reduces the representation of the plurality of reference points and the plurality of slopes to a single reference pixel value, two reference slopes, and a plurality of slope differentials. An output format representation of the planar differential slope representation is then generated, where encoding of the slope differentials allows the parameter values for the pixel block (22) to be compressed. This compressed format representation of the parameter values can then be stored in and retrieved from memory.

Inventors

  • 👤 John E. Deroo
  • 👤 Brian Favela
  • 👤 Steven Morein
  • 👤 Michael T. Wright

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-09 16:42
CPC Classifications
G; G06; G06T; G06T9/00

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 58 words
A method for compressing parameter values for pixels of a pixel block, comprising: translating parameter values for the pixel block into a column-wise differential slope representation; translating the column-wise differential slope representation into a planar differential slope representation; and generating an output format representation of the parameter values for the pixel block from the planar differential slope representation.
Claim 2
Independent Claim 588 words
A method for double edge compression of parameter values for pixels of a pixel block, comprising: performing a first edge compression, wherein the first edge compression includes: translating parameter values for the pixel block into a first column-wise differential slope representation, wherein the first column-wise differential slope representation includes a first plurality of pixel point values along a first edge of the pixel block, a first plurality of column slopes, and a first plurality of column slope differentials, wherein each column slope differential of the first plurality of column slope differentials represents a column slope deviation at a pixel point not represented by the first plurality of pixel point values and the first plurality of column slopes; and translating the first column-wise differential slope representation into a first planar differential slope representation, wherein the first planar slope representation reduces the first plurality of pixel point values and the first plurality of column slopes to a first reference pixel value, a first reference column slope, a first reference row slope, and a first plurality of row slope differentials; performing a second edge compression, wherein the second edge compression includes: translating at least a portion of the parameter values for the pixel block into a second column-wise differential slope representation, wherein the second column-wise differential slope representation includes a second plurality of pixel point values along a second edge of the pixel block, a second plurality of column slopes, and a second plurality of column slope differentials, wherein each column slope differential of the second plurality of column slope differentials represents a column slope deviation at a pixel point not represented by the second plurality of pixel point values and the second plurality of column slopes; and translating the second column-wise differential slope representation into a second planar differential slope representation, wherein the second planar slope representation reduces the second plurality of pixel point values and the second plurality of column slopes to a second reference pixel value, a second reference column slope, a second reference row slope, and a second plurality of row slope differentials; and generating an output format representation for the pixel block, wherein generating the output format representation includes: when a predetermined breakpoint pattern in one of the first and second pluralities of column slope differentials is detected, generating a double edge output format representation of the parameter values for the first and second column-wise differential column slope representations, wherein the double edge output format representation orders the first and second reference pixel values, the first and second reference row slopes, the first and second reference column slopes, portions of each of the first and second pluralities of row slope differentials, portions of the first and second pluralities of column slope differentials, and a breakpoint indication in a predetermined double edge order, wherein the portions of the first and second pluralities of column and row slope differentials included in the double edge output format representation are determined based on location of the predetermined breakpoint pattern in the pixel block, wherein the breakpoint indication describes the portions of the first and second pluralities of column and row slope differentials; and when the predetermined breakpoint pattern is not detected, generating a single edge output format representation of the parameter values for the pixel block, wherein the single edge output format representation orders the first reference pixel value, the first reference column slope, the first reference row slope, the first plurality of row slope differentials, and the first plurality of column slope differentials in a predetermined single edge order.
Claim 3
Dependent Claim 36 words
The method of claim 2, wherein generating an output format representation for the pixel block further comprises including an indication that compression for the pixel block is one of single edge compression and double edge compression.
Claim 4
Dependent Claim 32 words
The method of claim 2 or claim 3, wherein detecting the predetermined breakpoint pattern further comprises determining a slope discontinuity within one of the first and second pluralities of column slope differentials.
Claim 5
Independent Claim 238 words
A method for compressing parameter values for pixels in a display frame, wherein each pixel within the display frame has a corresponding parameter value, comprising: grouping pixels of the display frame into a plurality of pixel blocks; for at least one pixel block of the plurality of pixel blocks: translating parameter values for the pixel block into a column-wise differential slope representation, wherein the column-wise differential slope representation includes a plurality of pixel point values, a plurality of column slopes, and a plurality of column slope differentials, wherein each column slope differential represents a column slope deviation at a pixel point not represented by the plurality of pixel point values and the plurality of column slopes; translating the column-wise differential slope representation into a planar differential slope representation, wherein the planar slope representation reduces the plurality of pixel point values and the plurality of column slopes to a reference pixel value, a reference column slope, a reference row slope, and a plurality of row slope differentials; and generating an output format representation of the parameter values for the pixel block from the planar differential slope representation, wherein the output format representation orders the reference pixel value, the reference column slope, the reference row slope, the plurality of row slope differentials, and the plurality of column slope differentials in a predetermined pattern selecting one of the four corner pixels as a first reference pixel for the first pixel block.
Claim 6
Dependent Claim 22 words
The method of claim 5, further comprises storing the output format representation of the at least one pixel block in a memory.
Claim 7
Dependent Claim 71 words
The method of claim 6, further comprises: retrieving the output format representation of the at least one pixel block from the memory; reconstructing the planar differential slope representation for the pixel block from the output format representation; reconstructing the column-wise differential slope representation for the pixel block from the planar differential slope representation; and recovering the parameter values for the pixels in the pixel block from the column-wise differential slope representation.
Claim 8
Independent Claim 23 words
The method of any one of the preceding claims, wherein the parameter values are Z values for the pixels of the pixel block.
Claim 9
Independent Claim 104 words
The method of any one of the preceding claims further comprising representing column slope differentials and row slope differentials in the output format representation using a first number of encoding bits, wherein when the first number of encoding bits is inadequate for representing one of the differentials, an encoding value corresponding to an escape is used within a position in the output format representation corresponding to the differential, wherein the escape indicates that an escape value for the differential is included in the output format representation, wherein the escape value is encoded by a second number of bits adequate to fully encode the differential.
Claim 10
Dependent Claim 56 words
The method of claim 9, wherein the second number for the pixel block is determined based on a number of bits adequate to fully encode a largest differential for which an escape value encoding is required within the pixel block, wherein a first set of configuration bits in the output format representation indicates the second number.
Claim 11
Dependent Claim 48 words
The method of claim 9 or 10, wherein the first number is two such that the first number of encoding bits encodes four states, wherein the four states include a zero differential, a positive one differential, a negative one differential, and the encoding value corresponding to the escape.
Claim 12
Independent Claim 73 words
The method of any one of claims 9 to 11, further comprises representing the reference column slope and the reference row slope using a third number of bits, wherein the third number is determined based on a number of bits adequate to fully encode a largest slope of the reference column slope and the reference row slope, wherein a second set of configuration bits in the output format representation indicates the third number.
Claim 13
Dependent Claim 133 words
The method of claim 1 wherein the column-wise differential slope representation includes a plurality of pixel point values, a plurality of column slopes, and a plurality of column slope differentials, wherein each column slope differential represents a column slope deviation at a pixel point not represented by the plurality of pixel point values and the plurality of column slopes; wherein the planar slope representation reduces the plurality of pixel point values and the plurality of column slopes to a reference pixel value, a reference column slope, a reference row slope, and a plurality of row slope differentials; and wherein the output format representation orders the reference pixel value, the reference column slope, the reference row slope, the plurality of row slope differentials, and the plurality of column slope differentials in a predetermined pattern.
Claim 14
Dependent Claim 94 words
A pixel parameter compression processor for compressing parameter values for pixels of a pixel block, comprising: a processing module; and memory operably coupled to the processing module, wherein the memory stores operating instructions that, when executed by the processing module, cause the processing module to perform the functions of: translating parameter values for the pixel block into a column-wise differential slope representation; translating the column-wise differential slope representation into a planar differential slope representation; and generating an output format representation of the parameter values for the pixel block from the planar differential slope representation.
Claim 15
Dependent Claim 610 words
A pixel parameter compression processor for compressing parameter values for pixels of a pixel block, comprising: a processing module; and memory operably coupled to the processing module, wherein the memory stores operating instructions that, when executed by the processing module, cause the processing module to perform the functions of: performing a first edge compression, wherein the first edge compression includes: translating parameter values for the pixel block into a first column-wise differential slope representation, wherein the first column-wise differential slope representation includes a first plurality of pixel point values along a first edge of the pixel block, a first plurality of column slopes, and a first plurality of column slope differentials, wherein each column slope differential of the first plurality of column slope differentials represents a column slope deviation at a pixel point not represented by the first plurality of pixel point values and the first plurality of column slopes; and translating the first column-wise differential slope representation into a first planar differential slope representation, wherein the first planar slope representation reduces the first plurality of pixel point values and the first plurality of column slopes to a first reference pixel value, a first reference column slope, a first reference row slope, and a first plurality of row slope differentials; performing a second edge compression, wherein the second edge compression includes: translating at least a portion of the parameter values for the pixel block into a second column-wise differential slope representation, wherein the second column-wise differential slope representation includes a second plurality of pixel point values along a second edge of the pixel block, a second plurality of column slopes, and a second plurality of column slope differentials, wherein each column slope differential of the second plurality of column slope differentials represents a column slope deviation at a pixel point not represented by the second plurality of pixel point values and the second plurality of column slopes; and translating the second column-wise differential slope representation into a second planar differential slope representation, wherein the second planar slope representation reduces the second plurality of pixel point values and the second plurality of column slopes to a second reference pixel value, a second reference column slope, a second reference row slope, and a second plurality of row slope differentials; and generating an output format representation for the pixel block, wherein generating the output format representation includes: when a predetermined breakpoint pattern in one of the first and second pluralities of column slope differentials is detected, generating a double edge output format representation of the parameter values for the first and second column-wise differential column slope representations, wherein the double edge output format representation orders the first and second reference pixel values, the first and second reference row slopes, the first and second reference column slopes, portions of each of the first and second pluralities of row slope differentials, portions of the first and second pluralities of column slope differentials in a predetermined pattern, and a breakpoint indication, wherein the included portions, which include the portions of the first and second pluralities of column and row slope differentials included in the double edge output format representation, are determined based on location of the predetermined breakpoint pattern in the pixel block, wherein the breakpoint indication describes included portions; and when the predetermined breakpoint pattern is not detected, generating a single edge output format representation of the parameter values for the pixel block, wherein the single edge output format representation orders the first reference pixel value, the first reference column slope, the first reference row slope, the first plurality of row slope differentials, and the first plurality of column slope differentials in a predetermined order.
Claim 16
Dependent Claim 50 words
The processor of claim 15, wherein the memory includes instructions such that the processing module generates the output format representation for the pixel block such that the output format representation includes an indication that indicates compression for the pixel block is one of single edge compression and double edge compression.
Claim 17
Dependent Claim 39 words
The processor of claim 15 or claim 16, wherein the memory includes instructions such that the processor detects the predetermined breakpoint pattern by determining a slope discontinuity along one of the first and second pluralities of column slope differentials.
Claim 18
Dependent Claim 274 words
A pixel parameter compression processor for compressing parameter values for pixels in a display frame, wherein each pixel within the display frame has a corresponding parameter value, comprising: a processing module; and memory operably coupled to the processing module, wherein the memory stores operating instructions that, when executed by the processing module, cause the processing module to perform the functions of: grouping pixels of the display frame into a plurality of pixel blocks; for at least one pixel block of the plurality of pixel blocks: translating parameter values for the pixel block into a column-wise differential slope representation, wherein the column-wise differential slope representation includes a plurality of pixel point values, a plurality of column slopes, and a plurality of column slope differentials, wherein each column slope differential represents a column slope deviation at a pixel point not represented by the plurality of pixel point values and the plurality of column slopes; translating the column-wise differential slope representation into a planar differential slope representation, wherein the planar slope representation reduces the plurality of pixel point values and the plurality of column slopes to a reference pixel value, a reference column slope, a reference row slope, and a plurality of row slope differentials; and generating an output format representation of the parameter values for the pixel block from the planar differential slope representation, wherein the output format representation orders the reference pixel value, the reference column slope, the reference row slope, the plurality of row slope differentials, and the plurality of column slope differentials in a predetermined pattern selecting one of the four corner pixels as a first reference pixel for the first pixel block.
Claim 19
Dependent Claim 31 words
The processor of claim 18, wherein the memory includes instructions such that the processing module stores the output format representation of the at least one pixel block in a pixel memory.
Claim 20
Dependent Claim 86 words
The processor of claim 18 or claim 19, wherein the memory includes instructions such that the processing module performs additional functions including: retrieving the output format representation of the at least one pixel block from the memory; reconstructing the planar differential slope representation for the pixel block from the output format representation; reconstructing the column-wise differential slope representation for the pixel block from the planar differential slope representation; and recovering the parameter values for the pixels in the pixel block from the column-wise differential slope representation.
Claim 21
Dependent Claim 24 words
The processor of any one of claims 14 to 20, wherein the parameter values are Z values for the pixels of the pixel block.
Claim 22
Dependent Claim 115 words
The processor of claim any one of claims 14 to 21, wherein the memory includes operating instructions such that the processing module represents column slope differentials and row slope differentials in the output format representation using a first number of encoding bits, wherein when the first number of encoding bits is inadequate for representing one of the differentials, an encoding value corresponding to an escape is used within a position in the output format representation corresponding to the differential, wherein the escape indicates that an escape value for the differential is included in the output format representation, wherein the escape value is encoded by a second number of bits adequate to fully encode the differential.
Claim 23
Dependent Claim 52 words
The processor of claim 22, wherein the second number is determined based on a number of bits adequate to fully encode a largest differential for which an escape value encoding is required within the pixel block, wherein a first set of configuration bits in the output format representation indicates the second number.
Claim 24
Dependent Claim 48 words
The processor of claim 22 or 23, wherein the first number is two such that the first number of encoding bits encodes four states, wherein the four states include a zero differential, a positive one differential, a negative one differential, and the encoding value corresponding to the escape.
Claim 25
Dependent Claim 82 words
The processor of any one of claims 22 to 24, wherein the memory includes operating instructions such that the processing module represents the reference column slope and the reference row slope using a third number of bits, wherein the third number is determined based on a number of bits adequate to fully encode a largest slope of the reference column slope and the reference row slope, wherein a second set of configuration bits in the output format representation indicates the third number
Claim 26
Dependent Claim 133 words
The processor of claim 26, wherein the column-wise differential slope representation includes a plurality of pixel point values, a plurality of column slopes, and a plurality of column slope differentials, wherein each column slope differential represents a column slope deviation at a pixel point not represented by the plurality of pixel point values and the plurality of column slopes; wherein the planar slope representation reduces the plurality of pixel point values and the plurality of column slopes to a reference pixel value, a reference column slope, a reference row slope, and a plurality of row slope differentials; and wherein the output format representation orders the reference pixel value, the reference column slope, the reference row slope, the plurality of row slope differentials, and the plurality of column slope differentials in a predetermined pattern.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag