IP Library Granted Patent US 10,930,066
Granted Patent B1
US 10,930,066 · App. 16/948,294 · Granted Feb 23, 2021

Systems and methods for using natural language processing (NLP) to automatically generate three-dimensional objects in a virtual space

Inventors: Cameron Thacker (Sherman Oaks, CA); John Linden (Sherman Oaks, CA)
Assignee: Mythical, Inc.
G06T17/10G06F40/14G06F40/40G06T9/00G06T2200/24
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,930,066
App. No.
16/948,294
Granted
Feb 23, 2021
Kind
B1
Abstract

Systems and methods for using natural language processing (NLP) to automatically generate three-dimensional objects in a virtual space are disclosed. Exemplary implementations may: obtain three-dimensional objects using a three-dimensional voxelized format; encode those objects, using a variational autoencoder, into pairs of vectors that are subsequently sampled; decode the sampled vectors; determine loss information for the decoded voxelized three-dimensional objects; use the loss information to train the variational autoencoder; fine-tune a pretrained text-based system; receive user input describing a three-dimensional object; generate a vector from the user input; decode the vector into a voxelized three-dimensional object; present the voxelized three-dimensional object to the user.

Claims (46)

1. A system configured to use natural language processing (NLP) to automatically generate three-dimensional objects in a virtual space, the system comprising:

electronic storage configured to electronically store information, wherein the stored information includes a set of three-dimensional objects, wherein the set includes an annotated object that includes a textual description of the annotated object and an unannotated object that lacks a description, wherein the annotated object uses a first three-dimensional format, wherein the unannotated object uses a second three-dimensional format;

one or more hardware processors configured by machine-readable instructions to:

obtain the set of three-dimensional objects;

convert one or more three-dimensional objects in the set into one or more objects using a three-dimensional voxelized format that natively supports voxels, responsive to using three-dimensional formats that fail to support voxels, such that the set includes voxelized three-dimensional objects, wherein the voxelized three-dimensional objects include a first voxelized object based on the annotated object;

encode, using a variational autoencoder that includes an encoder and a decoder, the voxelized three-dimensional objects into pairs of multi-dimensional vectors, wherein individual pairs include a vector of means and a vector of standard deviations;

create sampled multi-dimensional vectors having a particular dimensionality by sampling from the individual pairs of multi-dimensional vectors such that a first sampled multi-dimensional vector is created based on an encoding of the first voxelized object;

decode, using the decoder, the sampled multi-dimensional vectors into decoded voxelized three-dimensional objects;

determine loss information for the decoded voxelized three-dimensional objects by comparing the decoded voxelized three-dimensional objects to corresponding individual voxelized three-dimensional objects;

use the loss information to train the variational autoencoder;

fine-tune a pretrained text-based system to generate multi-dimensional vectors having the particular dimensionality from textual descriptions included in annotated objects in the set of three-dimensional objects, wherein one or more prompts for the pretrained text-based system are based on a combination of the textual description of the annotated object and the first sampled multi-dimensional vector;

receive, from a user, a user input, wherein the user input includes user-provided text describing a three-dimensional object;

generate, using the fine-tuned pretrained text-based system, a user-provided multi-dimensional vector from the user-provided text in the user input;

decode, using the decoder, the user-provided multi-dimensional vector into a user-provided voxelized three-dimensional object; and

present, to the user, the user-provided voxelized three-dimensional object.

2. The system of claim 1 , wherein the three-dimensional formats that fail to support voxels include one or both of a vector-based three-dimensional format and a polygon-based three-dimensional format.

3. The system of claim 1 , wherein the set of three-dimensional objects includes an annotated subset of annotated objects including the annotated object and an unannotated subset of unannotated objects including the unannotated object.

4. The system of claim 1 , wherein the three-dimensional voxelized format that natively supports voxels is selected from one of .OBJ, .JSON, .XML, .SCHEMATIC, .SCAD, .STL, .QB, and .VOX.

5. The system of claim 1 , wherein the loss information includes reconstruction loss and Kullback-Leibler loss, wherein the Kullback-Leibler loss is based on a sum of Kullback-Leibler divergences.

6. The system of claim 1 , wherein the sampled multi-dimensional vectors are decoded using a Generative Adversarial Network that includes a generator and a discriminator.

7. The system of claim 6 , wherein the decoder is used as the generator of the Generative Adversarial Network.

8. The system of claim 7 , wherein the discriminator of the Generative Adversarial Network distinguishes between objects from the set of three-dimensional objects and the decoded voxelized three-dimensional objects as decoded by the decoder.

9. The system of claim 1 , wherein the pretrained text-based system is Generative Pretrained Transformer 3 (GPT-3).

10. The system of claim 1 , wherein the user input is received through a user interface, and wherein the user-provided voxelized three-dimensional object is presented through the user interface.

11. A method to use natural language processing (NLP) to automatically generate three-dimensional objects in a virtual space, the method being implemented in a computer system, the method comprising:

obtaining a set of three-dimensional objects, wherein the set includes an annotated object that includes a textual description of the annotated object and an unannotated object that lacks a description, wherein the annotated object uses a first three-dimensional format, wherein the unannotated object uses a second three-dimensional format;

converting one or more three-dimensional objects in the set into one or more objects using a three-dimensional voxelized format that natively supports voxels, responsive to using three-dimensional formats that fail to support voxels, such that the set includes voxelized three-dimensional objects, wherein the voxelized three-dimensional objects include a first voxelized object based on the annotated object;

encoding, using a variational autoencoder that includes an encoder and a decoder, the voxelized three-dimensional objects into pairs of multi-dimensional vectors, wherein individual pairs include a vector of means and a vector of standard deviations;

creating sampled multi-dimensional vectors having a particular dimensionality by sampling from the individual pairs of multi-dimensional vectors such that a first sampled multi-dimensional vector is created based on an encoding of the first voxelized object;

decoding, using the decoder, the sampled multi-dimensional vectors into decoded voxelized three-dimensional objects;

determining loss information by comparing the decoded voxelized three-dimensional objects to corresponding individual voxelized three-dimensional objects;

using the loss information to train the variational autoencoder, including the decoder;

fine-tuning a pretrained text-based system to generate multi-dimensional vectors having the particular dimensionality from textual descriptions included in annotated objects in the set of three-dimensional objects, wherein one or more prompts for the pretrained text-based system are based on a combination of the textual description of the annotated object and the first sampled multi-dimensional vector;

receiving, from a user, a user input, wherein the user input includes user-provided text describing a three-dimensional object;

generating, using the fine-tuned pretrained text-based system, a user-provided multi-dimensional vector from the user-provided text in the user input;

decoding, using the decoder, the user-provided multi-dimensional vector into a user-provided voxelized three-dimensional object; and

presenting, to the user, the user-provided voxelized three-dimensional object.

12. The method of claim 11 , wherein the three-dimensional formats that fail to support voxels include one or both of a vector-based three-dimensional format and a polygon-based three-dimensional format.

13. The method of claim 11 , wherein the set of three-dimensional objects includes an annotated subset of annotated objects including the annotated object and an unannotated subset of unannotated objects including the unannotated object.

14. The method of claim 11 , wherein the three-dimensional voxelized format that natively supports voxels is selected from one of .OBJ, .JSON, .XML, .SCHEMATIC, .SCAD, .STL, .QB, and .VOX.

15. The method of claim 11 , wherein the loss information includes reconstruction loss and Kullback-Leibler loss, wherein the Kullback-Leibler loss is based on a sum of Kullback-Leibler divergences.

16. The method of claim 11 , wherein the sampled multi-dimensional vectors are decoded using a Generative Adversarial Network that includes a generator and a discriminator.

17. The method of claim 16 , wherein the decoder is used as the generator of the Generative Adversarial Network.

18. The method of claim 17 , wherein the discriminator of the Generative Adversarial Network distinguishes between objects from the set of three-dimensional objects and the decoded voxelized three-dimensional objects as decoded by the decoder.

19. The method of claim 1 , wherein the pretrained text-based system is Generative Pretrained Transformer 3 (GPT-3).

20. The method of claim 1 , wherein the user input is received through a user interface, and wherein the user-provided voxelized three-dimensional object is presented through the user interface.

Assignments (4)
SECURITY INTEREST Recorded May 7, 2026
From: MYTHICAL, INC.
To: LUNA MARKET INC.
Reel/Frame 075567/0905 →
SECURITY INTEREST Recorded Jan 6, 2025
From: MYTHICAL, INC.; DMARKET INC.
To: NFL PROPERTIES LLC (AS COLLATERAL AGENT)
Reel/Frame 069827/0309 →
SECURITY INTEREST Recorded Jan 30, 2024
From: MYTHICAL, INC.; DMARKET INC.
To: RHENIUM SOF I-A MYTHICAL 2023, LP; GALAXY EOS VC FUND, L.P.
Reel/Frame 066381/0852 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2020
From: THACKER, CAMERON; LINDEN, JOHN
To: MYTHICAL, INC.
Reel/Frame 053746/0694 →
Cited By (1)
US 12,315,391