IP Library Granted Patent US 10,943,393
Granted Patent B2
US 10,943,393 · App. 16/553,925 · Granted Mar 9, 2021

Three-dimensional model optimization

Inventors: Garrett Eastham (Austin, TX); Tyler John Lindberg (Santa Monica, CA); Keith Cody Rives (Marina del Rey, CA); Kwun Yin Choy (Los Angeles, CA); Vincent Thomas Cacace (West Hollywood, CA)
Assignee: Vertebrae Inc.
G06T17/20G06T2200/04
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,943,393
App. No.
16/553,925
Granted
Mar 9, 2021
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for optimizing three-dimensional models. One of the methods includes determining, for a three-dimensional model of an object to be optimized, a plurality of points on the object that each have at least a threshold likelihood of being a focal point, the object having two or more regions each of which include one or more textures, one or more meshes, or both; identifying, from the two or more regions, one or more non-focal regions that i) each do not include any of the plurality of points, and ii) are a proper subset of the two or more regions; generating, using the one or more non-focal regions, an optimized three-dimensional model for the object with a smaller size less than a larger size of the three-dimensional model; and storing the optimized three-dimensional model in a non-volatile memory.

Claims (57)

1. A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

obtaining, from a database, a three-dimensional model of an object, the three-dimensional model of the object being stored in a file that has an initial file size, wherein different portions of the three-dimensional model are represented by images having different image resolutions, and wherein a particular portion of the three-dimensional model is represented by a particular image having an initial image resolution;

obtaining historical user interaction data that, for different past users, indicates a sequence of rotation operations or zoom operations that the past user performed when viewing the three-dimensional model;

determining, based on the historical user interaction data, that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical user interaction data than one or more other portions of the three-dimensional model of the object;

in response to determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data than one or more other portions of the three-dimensional model of the object, generating an updated image for the particular portion that has a reduced image resolution in comparison to the initial image resolution of the particular image;

generating, then storing, in the database, an optimized three-dimensional model that includes the updated image for the particular portion that has the reduced image resolution instead of the particular image that has the initial image resolution, the optimized three-dimensional model being stored in a file that has a second file size that is smaller than the first file size; and

providing, in response to a user device requesting the three-dimensional model of the object, the optimized three-dimensional model for an initial presentation, by the user device, of one or more portions of the optimized three-dimensional model other than the particular portion while the particular portion, having a lower likelihood of being associated with a rotation operation or a zoom operation than the one or more portions of the optimized three-dimensional model, is not presented.

2. The system of claim 1 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have rotated the three-dimensional model to place the particular portion into view.

3. The system of claim 1 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have zoomed in on the particular portion of the three-dimensional model.

4. The system of claim 1 , wherein the updated image shows a texture of the particular portion of the three-dimensional model with less detail than the particular image.

5. The system of claim 1 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that the particular portion of the three-dimensional model was not an area of focus for most of the different past users.

6. The system of claim 1 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

generating a heat map for various portions of the three-dimensional model, and

determining, based on the heat map, that the particular portion of the three-dimensional model is an area of the three-dimensional model which the different past users infrequently viewed.

7. The system of claim 1 , wherein, for each of the different past users, the historical user interaction data further indicates an amount of time associated with each rotation operation or zoom operation.

8. The system of claim 1 , wherein providing the optimized three-dimensional model for the initial presentation comprises providing the optimized three-dimensional model for presentation at an orientation in which the particular portion of the optimized three-dimensional model is occluded by one or more portions of the optimized three-dimensional model other than the particular portion.

9. A computer-implemented method comprising:

obtaining, from a database, a three-dimensional model of an object, the three-dimensional model of the object being stored in a file that has an initial file size, wherein different portions of the three-dimensional model are represented by images having different image resolutions, and wherein a particular portion of the three-dimensional model is represented by a particular image having an initial image resolution;

obtaining historical user interaction data that, for different past users, indicates a sequence of rotation operations or zoom operations that the past user performed when viewing the three-dimensional model;

determining, based on the historical user interaction data, that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical user interaction data than one or more other portions of the three-dimensional model of the object;

in response to determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data than one or more other portions of the three-dimensional model of the object, generating an updated image for the particular portion that has a reduced image resolution in comparison to the initial image resolution of the particular image;

generating, then storing, in the database, an optimized three-dimensional model that includes the updated image for the particular portion that has the reduced image resolution instead of the particular image that has the initial image resolution, the optimized three-dimensional model being stored in a file that has a second file size that is smaller than the first file size; and

providing, in response to a user device requesting the three-dimensional model of the object, the optimized three-dimensional model for an initial presentation, by the user device, of one or more portions of the optimized three-dimensional model other than the particular portion while the particular portion, having a lower likelihood of being associated with a rotation operation or a zoom operation than the one or more portions of the optimized three-dimensional model, is not presented.

10. The method of claim 9 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have rotated the three-dimensional model to place the particular portion into view.

11. The method of claim 9 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have zoomed in on the particular portion of the three-dimensional model.

12. The method of claim 9 , wherein the updated image shows a texture of the particular portion of the three-dimensional model with less detail than the particular image.

13. The method of claim 9 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that the particular portion of the three-dimensional model was not an area of focus for most of the different past users.

14. The method of claim 9 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

generating a heat map for various portions of the three-dimensional model, and

determining, based on the heat map, that the particular portion of the three-dimensional model is an area of the three-dimensional model which the different past users infrequently viewed.

15. The method of claim 9 , wherein, for each of the different past users, the historical user interaction data further indicates an amount of time associated with each rotation operation or zoom operation.

16. The method of claim 9 , wherein providing the optimized three-dimensional model for the initial presentation comprises providing the optimized three-dimensional model for presentation at an orientation in which the particular portion of the optimized three-dimensional model is occluded by one or more portions of the optimized three-dimensional model other than the particular portion.

17. A non-transitory computer storage medium encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

obtaining, from a database, a three-dimensional model of an object, the three-dimensional model of the object being stored in a file that has an initial file size, wherein different portions of the three-dimensional model are represented by images having different image resolutions, and wherein a particular portion of the three-dimensional model is represented by a particular image having an initial image resolution;

obtaining historical user interaction data that, for different past users, indicates a sequence of rotation operations or zoom operations that the past user performed when viewing the three-dimensional model;

determining, based on the historical user interaction data, that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical user interaction data than one or more other portions of the three-dimensional model of the object;

in response to determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data than one or more other portions of the three-dimensional model of the object, generating an updated image for the particular portion that has a reduced image resolution in comparison to the initial image resolution of the particular image;

generating, then storing, in the database, an optimized three-dimensional model that includes the updated image for the particular portion that has the reduced image resolution instead of the particular image that has the initial image resolution, the optimized three-dimensional model being stored in a file that has a second file size that is smaller than the first file size; and

providing, in response to a user device requesting the three-dimensional model of the object, the optimized three-dimensional model for an initial presentation, by the user device, of one or more portions of the optimized three-dimensional model other than the particular portion while the particular portion, having a lower likelihood of being associated with a rotation operation or a zoom operation than the one or more portions of the optimized three-dimensional model, is not presented.

18. The medium of claim 17 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have rotated the three-dimensional model to place the particular portion into view.

19. The medium of claim 17 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that fewer than a threshold number of the different past users have zoomed in on the particular portion of the three-dimensional model.

20. The medium of claim 17 , wherein the updated image shows a texture of the particular portion of the three-dimensional model with less detail than the particular image.

21. The medium of claim 17 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

determining that the particular portion of the three-dimensional model was not an area of focus for most of the different past users.

22. The medium of claim 17 , wherein determining that the particular portion of the three-dimensional model has a lower likelihood of being associated with a rotation operation or a zoom operation in the historical interaction data comprises:

generating a heat map for various portions of the three-dimensional model, and

determining, based on the heat map, that the particular portion of the three-dimensional model is an area of the three-dimensional model which the different past users infrequently viewed.

23. The medium of claim 17 , wherein, for each of the different past users, the historical user interaction data further indicates an amount of time associated with each rotation operation or zoom operation.

24. The medium of claim 17 , wherein providing the optimized three-dimensional model for the initial presentation comprises providing the optimized three-dimensional model for presentation at an orientation in which the particular portion of the optimized three-dimensional model is occluded by one or more portions of the optimized three-dimensional model other than the particular portion.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2021
From: VERTEBRAE INC.
To: SNAP INC.
Reel/Frame 058016/0860 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2019
From: EASTHAM, GARRETT; LINDBERG, TYLER JOHN; RIVES, KEITH CODY; CHOY, KWUN YIN; CACACE, VINCENT THOMAS
To: VERTEBRAE INC.
Reel/Frame 050206/0898 →
Continuity (2)
Continuation 16395722 · Apr 26, 2019
Related Publication 20200342665A1 · Oct 29, 2020