IP Library Granted Patent US 10,262,451
Granted Patent B1
US 10,262,451 · App. 15/948,655 · Granted Apr 16, 2019

View-dependent color compression

Inventors: Philip A. Chou (Culver City, CA); Xiang Zhang (Culver City, CA); Ming-Ting Sun (Culver City, CA); Ricardo de Queiroz (Culver City, CA)
Assignee: 8i Limited
G06T15/10G06T15/04G06T19/20G06T2207/10028G06T2207/20072
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,262,451
App. No.
15/948,655
Granted
Apr 16, 2019
Kind
B1
Abstract

A machine accesses view maps that each corresponds to a different point on a surface of a three-dimensional object. The machine generates vectors of coefficients by calculating a corresponding transform of each view map. The vectors specify a corresponding coefficient for each basis function among a group of basis functions. For each basis function in the group, the machine generates a spatial representation of coefficients specified for that basis function across all of the accessed view maps, and then quantizes the spatial representation of coefficients for that basis function. The quantized spatial representation forms part of a group of quantized spatial representations of coefficients that corresponds to the accessed view maps. The machine then provides the group of quantized spatial representations of coefficients as a compressed version of the view maps. A decoder device can then approximate the view maps based on the group of quantized spatial representations.

Claims (77)

1. A method comprising:

accessing, by one or more processors of a machine, a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each view map in the set, and by one or more processors of the machine, generating a corresponding vector of transform coefficients by calculating a transform of the view map, the generated vector specifying a separate transform coefficient for each transform basis function among a plurality of transform basis functions represented in the transform of the view map;

for each transform basis function in the plurality, and by one or more processors of the machine:

generating a spatial representation of transform coefficients specified for that transform basis function by the generated vectors of transform coefficients of all view maps in the set that represents the surface light field of the 3D object; and

quantizing the generated spatial representation of transform coefficients for that transform basis function, the quantized spatial representation forming part of a group of quantized spatial representations of transform coefficients that corresponds to the accessed set of view maps; and

providing, by one or more processors of the machine, the group of quantized spatial representations of transform coefficients.

2. The method of claim 1 , wherein:

for each view map in the set, the transform calculated in the generating of the corresponding vector of transform coefficients includes a B-spline wavelet transform; and

for each view map in the set, the generated vector of transform coefficients specifies a separate transform coefficient for each B-spline wavelet basis function among a plurality of B-spline wavelet basis functions represented in the B-spline wavelet transform of the view map.

3. The method of claim 1 , wherein:

for each view map in the set, the transform calculated in the generating of the corresponding vector of transform coefficients includes a Karhunen-Loève transform (KLT); and

for each view map in the set, the generated vector of transform coefficients specifies a separate transform coefficient for each Karhunen-Loève basis function among a plurality of Karhunen-Loève basis functions represented in the Karhunen-Loève transform of the view map.

4. The method of claim 1 , wherein:

the accessing of the set of view maps accesses a data-uncompressed set of view maps that represents the surface light field of the 3D object; and

the providing of the group of quantized spatial representations of transform coefficients provides a data-compressed version of the set of view maps that represents the surface light field of the 3D object.

5. The method of claim 1 , wherein:

the accessing of the set of view maps accesses spherical images whose pixels each have spherical coordinates that specify a corresponding azimuth and a corresponding elevation;

the method further comprises:

modifying the set of view maps by converting each of the spherical images to a corresponding cylindrical image whose corresponding pixels each have cylindrical coordinates that specify the corresponding azimuth and a sine of the corresponding elevation; and wherein:

for each view map in the set, the generating of the corresponding vector of transform coefficients calculates the transform of the modified view map.

6. The method of claim 1 , wherein:

for each transform basis function in the plurality, the generating of the spatial representation of transform coefficients is based on a spatial transform of the transform coefficients specified for that transform basis function by the generated vectors of transform coefficients.

7. The method of claim 1 , wherein:

for each transform basis function in the plurality, the generating of the spatial representation of transform coefficients specified for that transform basis function is based on a region-adaptive hierarchical transform (RAHT).

8. The method of claim 1 , wherein:

for each transform basis function in the plurality, the generating of the spatial representation of transform coefficients specified for that transform basis function is based on a graph transform (GT).

9. The method of claim 1 , wherein:

for each transform basis function in the plurality, the generating of the spatial representation of transform coefficients specified for that transform basis function is based on texture map coding (TMC).

10. The method of claim 1 , wherein:

for each transform basis function in the plurality, the generating of the spatial representation of transform coefficients specified for that transform basis function is based on point cloud coding (PCC).

11. The method of claim 1 , wherein:

the accessing of the set of view maps includes generating the set of view maps based on multiple camera views of the 3D model.

12. The method of claim 1 , further comprising:

accessing multi-component view maps that each include a corresponding multi-component spherical image whose pixels each specify corresponding values for multiple image components; and

extracting multiple single-component view maps from each of the multi-component view maps, each single-component view map including a single-component spherical image whose pixels each specify a corresponding value for a single image component; wherein:

the accessing of the set of view maps accesses the extracted single-component spherical images; and

for each view map in the set, the generating of the corresponding vector of transform coefficients calculates the transform of a corresponding single-component spherical image.

13. The method of claim 1 , further comprising:

for each view map in the set, subdividing the view map into subregions that each indicate presence or absence of a corresponding indicator of the surface light field of the 3D object; and wherein:

for each view map in the set, the generating of the corresponding vector of transform coefficients calculates the transform of the subregions that each indicate presence or absence of the corresponding indicator of the surface light field.

14. A method comprising:

accessing, by one or more processors of a machine, a group of quantized spatial representations of transform coefficients, the group corresponding to a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each quantized spatial representation in the group, and by one or more processors of the machine, generating approximations of transform coefficients for a corresponding transform basis function among a plurality of transform basis functions represented in a transform of a corresponding view map among the set of view maps, the generated approximations specifying transform coefficients for that transform basis function in vectors of transform coefficients resultant from transforms of all view maps in the set; and

generating, by one or more processors of the machine, an approximate version of the set of view maps to represent the surface light field of the 3D object, the approximate version being generated based on the approximations of transform coefficients generated for each quantized spatial representation in the group.

15. The method of claim 14 , wherein:

the transform includes a B-spline wavelet transform; and

for each quantized spatial representation in the group, the generated approximations specify B-spline wavelet coefficients for a corresponding B-spline wavelet basis function in vectors of B-spline wavelet coefficients resultant from B-spline wavelet transforms of all view maps in the set of view maps.

16. The method of claim 14 , wherein:

the accessing of the group of quantized spatial representations of transform coefficients accesses a data-compressed version of the set of view maps that represents the surface light field of the 3D object; and

the generating of the approximate version of the set of view maps generates a data-uncompressed version of the set of view maps that represents the surface light field of the 3D object.

17. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each view map in the set, generating a corresponding vector of transform coefficients by calculating a transform of the view map, the generated vector specifying a separate transform coefficient for each transform basis function among a plurality of transform basis functions represented in the transform of the view map;

for each transform basis function in the plurality:

generating a spatial representation of transform coefficients specified for that transform basis function by the generated vectors of transform coefficients of all view maps in the set that represents the surface light field of the 3D object; and

quantizing the generated spatial representation of transform coefficients for that transform basis function, the quantized spatial representation forming part of a group of quantized spatial representations of transform coefficients that corresponds to the accessed set of view maps; and

providing the group of quantized spatial representations of transform coefficients.

18. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing a group of quantized spatial representations of transform coefficients, the group corresponding to a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each quantized spatial representation in the group, generating approximations of transform coefficients for a corresponding transform basis function among a plurality of transform basis functions represented in a transform of a corresponding view map among the set of view maps, the generated approximations specifying transform coefficients for that transform basis function in vectors of transform coefficients resultant from transforms of all view maps in the set; and

generating an approximate version of the set of view maps to represent the surface light field of the 3D object, the approximate version being generated based on the approximations of transform coefficients generated for each quantized spatial representation in the group.

19. A system comprising:

one or more processors; and

a memory storing instructions that, when executed by at least one processor among the one or more processors, cause the system to perform operations comprising:

accessing a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each view map in the set, generating a corresponding vector of transform coefficients by calculating a transform of the view map, the generated vector specifying a separate transform coefficient for each transform basis function among a plurality of transform basis functions represented in the transform of the view map;

for each transform basis function in the plurality:

generating a spatial representation of transform coefficients specified for that transform basis function by the generated vectors of transform coefficients of all view maps in the set that represents the surface light field of the 3D object; and

quantizing the generated spatial representation of transform coefficients for that transform basis function, the quantized spatial representation forming part of a group of quantized spatial representations of transform coefficients that corresponds to the accessed set of view maps; and

providing the group of quantized spatial representations of transform coefficients.

20. A system comprising:

one or more processors; and

a memory storing instructions that, when executed by at least one processor among the one or more processors, cause the system to perform operations comprising:

accessing a group of quantized spatial representations of transform coefficients, the group corresponding to a set of view maps that each corresponds to a different surface point on a surface of a three-dimensional (3D) object, the set of view maps representing a surface light field of the 3D object;

for each quantized spatial representation in the group, generating approximations of transform coefficients for a corresponding transform basis function among a plurality of transform basis functions represented in a transform of a corresponding view map among the set of view maps, the generated approximations specifying transform coefficients for that transform basis function in vectors of transform coefficients resultant from transforms of all view maps in the set; and

generating an approximate version of the set of view maps to represent the surface light field of the 3D object, the approximate version being generated based on the approximations of transform coefficients generated for each quantized spatial representation in the group.

Assignments (4)
SECURITY INTEREST Recorded Dec 18, 2020
From: 8I LIMITED
To: VENTURE LENDING & LEASING IX, INC.
Reel/Frame 054699/0335 →
SECURITY INTEREST Recorded Jun 28, 2018
From: 8I LIMITED
To: VENTURE LENDING & LEASING VIII, INC.
Reel/Frame 046458/0991 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2018
From: CHOU, PHILIP A.; ZHANG, XIANG; SUN, MING-TING; DE QUEIROZ, RICARDO
To: 8I CORPORATION
Reel/Frame 045652/0955 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2018
From: 8I CORPORATION
To: 8I LIMITED
Reel/Frame 045653/0089 →
Cited By (3)
US 12,205,332 US 12,587,680 US 12,614,345