IP Library Granted Patent US 9,235,929
Granted Patent B2
US 9,235,929 · App. 13/774,978 · Granted Jan 12, 2016

Systems and methods for efficiently processing virtual 3-D data

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 9,235,929
App. No.
13/774,978
Granted
Jan 12, 2016
Kind
B2
Abstract

A computer-implemented method for processing virtual 3-D data efficiently is described. An object image data is generated from a scan of an object. Object polygon model data and object texture map data is generated from the object image data. The object polygon model data is saved in a first object file. The object texture map data is encoded. The encoded object texture map data is saved in a second object file. The data format of the second object file is different than the data format of the first object file.

Claims (70)

1. A computer-implemented method for processing virtual 3-D data efficiently, the method comprising:

generating, via a processor of a mobile computing device, user image data from a scan of a user, wherein the scan includes a plurality of images including a portion of a user, the scan being from a first area of the user to a second area of the user captured by relative movement between a camera of the mobile computing device and the portion of the user;

generating, via the processor, object polygon model data and object texture map data from the user image data;

saving, via the processor, the object polygon model data in a first object file;

encoding, via the processor, the object texture map data;

saving, via the processor, the encoded object texture map data in a second object file, wherein a data format of the second object file is different than a data format of the first object file;

encoding the user image data and saving the encoded user image data in a third file;

transferring the encoded user image data file from the mobile computing device to a second computing device;

calculating user polygon model data from the encoded user image data file and generating a plurality of coefficients from the calculated user polygon model data on the second computing device; and

transferring the generated plurality of coefficients from the second computing device to the mobile computing device.

2. The method of claim 1 , further comprising:

creating a black and white version of the user image data; and

processing an image of the black and white version of the user image data.

3. The method of claim 2 , further comprising:

comparing a timestamp of the processed image of the black and white version of the user image data to a timestamp of an image from the encoded user image data;

merging a result of processing the image of the black and white version of the user image data with a corresponding image of the encoded user image data; and

encoding the merged user image data and saving the encoded merged user image data into a user data file.

4. The method of claim 3 , wherein the first object file includes a binary-encoded file, and wherein the second object file and the encoded user data file include compressed video files.

5. The method of claim 1 , further comprising:

saving vertices of a plurality of 3-D models as half-floats in a plurality of vertex files.

6. The method of claim 5 , further comprising:

saving a predetermined order of the vertices of the plurality of 3-D models as half-floats in a single vertex order file.

7. A computing device configured to process virtual 3-D data efficiently, comprising:

a processor of a mobile computing device;

memory in electronic communication with the processor;

instructions stored in the memory, the instructions being executable by the processor to:

generate user image data from a scan of a user, wherein the scan includes a plurality of images including a portion of a user, the scan being from a first area of the user to a second area of the user captured by relative movement between a camera of the mobile computing device and the portion of the user;

generate object polygon model data and object texture map data from the user image data;

save the object polygon model data in a first object file;

encode the object texture map data; and save the encoded object texture map data in a second object file, wherein a data format of the second object file is different than a data format of the first object file;

encode the user image data and saving the encoded user image data in a third object file;

transfer the encoded user image data file from the mobile computing device to a remote computing device;

calculate user polygon model data from the encoded user image data file and generating a plurality of coefficients from the calculated user polygon model data on the remote computing device; and

transfer the generated plurality of coefficients from the remote computing device to the mobile computing device.

8. The computing device of claim 7 , wherein the instructions are executable by the processor to:

create a black and white version of the user image data; and

process an image of the black and white version of the user image data.

9. The computing device of claim 8 , wherein the instructions are executable by the processor to:

compare a timestamp of the processed image of the black and white version of the user image data to a timestamp of an image from the encoded user image data;

merge a result of processing the image of the black and white version of the user image data with a corresponding image of the encoded user image data; and

encode the merged user image data and save the encoded merged user image data into a user data file.

10. The computing device of claim 9 , wherein the first object file includes a binary-encoded file, and wherein the second object file and the encoded user data file include compressed video files.

11. The computing device of claim 7 , wherein the instructions are executable by the processor to:

save vertices of a plurality of 3-D models as half-floats in a plurality of vertex files.

12. The computing device of claim 7 , wherein the instructions are executable by the processor to:

save a predetermined order of the vertices of the plurality of 3-D models as half-floats in a single vertex order file.

13. A computer-program product for processing virtual 3-D data efficiently, the computer-program product comprising a non-transitory computer-readable medium storing instructions thereon, the instructions being executable by a processor of a mobile computing device to:

generate user image data from a scan of a user, wherein the scan includes a plurality of images including a portion of a user, the scan being from a first area of the user to a second area of the user captured by relative movement between a camera of the mobile computing device and the portion of the user;

generate object polygon model data and object texture map data from the user image data;

save the object polygon model data in a first object file;

encode the object texture map data; and

save the encoded object texture map data in a second object file, wherein a data format of the second object file is different than a data format of the first object file;

encode the user image data and saving the encoded user image data in a third object file;

transfer the encoded user image data file from the computing device to a remote computing device;

calculate user polygon model data from the encoded user image data file and generating a plurality of coefficients from the calculated user polygon model data on the remote computing device; and

transfer the generated plurality of coefficients from the remote computing device to the first computing device.

14. The computer-program product of claim 13 , wherein the instructions are executable by the processor to:

create a black and white version of the user image data;

process an image of the black and white version of the user image data;

compare a timestamp of the processed image of the black and white version of the user image data to a timestamp of an image from the encoded user image data;

merge a result of processing the image of the black and white version of the user image data with a corresponding image of the encoded user image data; and

encode the merged user image data and save the encoded merged user image data into a user data file.

15. The computer-implemented method of claim 1 , further comprising:

generating, via the processor of the mobile computing device, a 3-D model of the user with the object polygon model data and the object texture map data;

receiving, via the processor of the mobile computing device, a 3-D model of a product; and

displaying, via the processor of the mobile computing device, the 3-D model of a product on the 3-D model of the user.

16. The computing device of claim 8 , wherein the instructions are executable by the processor to:

generate a 3-D model of the user with the object polygon model data and the object texture map data;

receive a 3-D model of a product; and

display the 3-D model of a product on the 3-D model of the user.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jan 30, 2019
From: GLASSES.COM INC.
To: LUXOTTICA RETAIL NORTH AMERICA INC.
Reel/Frame 048183/0285 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2014
From: ENGLE, RYAN TRAVIS
To: 1-800 CONTACTS, INC.
Reel/Frame 034467/0737 →
NUNC PRO TUNC ASSIGNMENT Recorded Aug 25, 2014
From: 1-800 CONTACTS, INC.
To: GLASSES.COM INC.
Reel/Frame 033599/0307 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2014
From: TURETZKY, DARREN
To: 1-800 CONTACTS, INC.
Reel/Frame 032731/0038 →