EP0957451A2

Data compression and decompression system and method

Abstract

A method for compressing a first surface normal corresponding to a three-dimensional graphical object, comprising: receiving first surface normal data which represents a first surface normal; andcompressing said first surface normal, wherein said compressing comprises: encoding information identifying a particular surface region of a predetermined sphere, andencoding information identifying a location of a first point on said particular surface region.

EP0957451A2, drawing sheet 1
Sheet 1 of 62

Term

Term ended

Projected expiry passed 5 August 2016, 10.1 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

53 claims: 13 independent, 40 dependent

  1. 1
    A method for compressing a first surface normal corresponding to a three-dimensional graphical object, comprising:receiving first surface normal data which represents a first surface normal;andcompressing said first surface normal, wherein said compressing comprises: encoding information identifying a particular surface region of a predetermined sphere, andencoding information identifying a location of a first point on said particular surface region.
  2. 5
    The method of any preceding claim, wherein said first surface normal data comprises signed x, y, and z values, wherein said encoding information identifying said location of said first point comprises quantizing said first surface normal by using at least part of said x, y, and z values to select a location from a table of locations on said particular surface of said predetermined sphere.
  3. 6
    The method of any preceding claim, wherein said compressing further comprises:generating an index value and one or more mapping values;andstoring said index value and said one or more mapping values, wherein said index value is usable to select a first set of intermediate surface normal data from a plurality of sets of intermediate surface normal data;and wherein said one or more mapping values axe usable to generate decompressed surface normal data from said first set of intermediate surface normal data.
  4. 7
    The method of any preceding claim, wherein said receiving includes receiving a first set of coordinate values, wherein said first set of coordinate values correspond to a first set of coordinate axes, wherein said first set of coordinate axes define a first coordinate space which includes said predetermined sphere.
  5. 15
    The method of any preceding claim, wherein said one or mapping values further include an octant value indicative of a given octant of said predetermined sphere, wherein said given octant includes said first point, and wherein sign bits of said first set of coordinate values correspond to sign bits of points located in said first octant.
  6. 16
    The method of any preceding claim, wherein said first normal is absolutely specified by said compressed representation of said first normal, and wherein said compressed representation of said first normal also includes said one or more mapping values.
  7. 17
    The method of any preceding claim, wherein said first normal is delta-encoded relative to a previously specified normal, and wherein said one or more mapping values usable to decompress said first normal are included in a compressed representation of said previously specified normal.
  8. 20
    A system for compressing a first surface normal corresponding to a graphical object, comprising:a processor;anda memory coupled to said processor, wherein said memory is configured to store first surface normal data corresponding to said first surface normal, wherein said processor is configured to compress said first surface normal data by utilizing geometric characteristics of said first surface normal in order to compress said first surface normal data.
  9. 24
    A method for decompressing compressed 3-D geometry data, the method comprising:receiving a compressed representation of a first normal that corresponds to a first vertex, wherein said compressed representation includes information identifying a location of a first point on a predetermined surface region of a predetermined sphere located in a first coordinate space;andforming a decompressed representation of said first normal utilizing said information identifying said location of said first point.
  10. 30
    The method of any one of claims 24 to 29, wherein said first normal is delta-encoded relative to a previously specified normal.
  11. 31
    A computer system for decompressing compressed 3-D geometry data which includes a compressed representation of a first normal corresponding to a first vertex, comprising:an input unit coupled to receive said compressed representation of said first normal, wherein said compressed representation includes at least an index value, wherein said input unit is also configured to receive one or more mapping values;a look-up table unit coupled to receive said index value from said input unit, wherein said look-up table unit is configured to output a first set of coordinate values in response to receiving said index value, wherein said first set of coordinate values correspond to a first set of coordinate axes, wherein said first set of coordinate axes define a first coordinate space which includes a predetermined sphere, wherein said first set of coordinate values identify a first point located in a predetermined region of a surface of said predetermined sphere;anda mapping unit coupled to receive said first set of coordinate values from said look-up table unit and said one or more mapping values from said input unit, wherein said mapping unit is configured to generate a second set of coordinate values from said first set of coordinate values using said one or more mapping values, wherein said second set of coordinate values correspond to said first set of coordinate axes, wherein said second set of coordinate values specify a second point on said surface of said predetermined sphere, and wherein said second set of coordinate values is usable to form a decompressed representation of said first normal.
  12. 39
    The computer system or the method of any one of claims 35 to 38, wherein said first index component is a value of an angle θ, wherein said angle θ is measured about said y axis to said first point, and wherein said second index component is a value of an angle φ, wherein said angle φ is measured latitudinally from the plane at y=0 to said first point.
  13. 52
    A computer software program embodied on a carrier medium, wherein said computer software program comprises a plurality of instructions configured to implement the method of any one of claims 1-3 or 20-26, or dependent claims thereof;and wherein said carrier medium is a transmission medium or a computer-readable medium.