IP Library Granted Patent US 10,304,239
Granted Patent B2
US 10,304,239 · App. 15/655,762 · Granted May 28, 2019

Extended reality virtual assistant

Inventors: Pushkar Gorur Sheshagiri (Bengaluru, IN); Pawan Kumar Baheti (Bangalore, IN); Ajit Deepak Gupte (Bangalore, IN); Sandeep Kanakapura Lakshmikantha (Ramanagar District, IN)
Assignee: QUALCOMM Incorporated
G06T15/20G06T7/70G06T13/40G06T19/006G06F3/017G06F3/167G06T3/20G06T7/60G06T2219/024
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,304,239
App. No.
15/655,762
Granted
May 28, 2019
Kind
B2
Abstract

Methods, devices, and apparatuses are provided to facilitate a positioning of an item of virtual content in an extended reality environment. For example, a first user may access the extended reality environment through a display of a mobile device, and in some examples, the methods may determine positions and orientations of the first user and a second user within the extended reality environment. The methods may also determine a position for placement of the item of virtual content in the extended reality environment based on the determined positions and orientations of the first user and the second user, and perform operations that insert the item of virtual content into the extended reality environment at the determined placement position.

Claims (103)

1. A computer-implemented extended reality method, comprising:

obtaining, by one or more processors of a computing system, a position and an orientation of a first user in an extended reality environment, the computing system being in communication with one or more of a first device of the first user and a second device of a second user across a communications network;

obtaining, by the one or more processors of the computing system, a position and an orientation of the second user in the extended reality environment;

determining, by the one or more processors of the computing system, one or more placement positions for an item of virtual content in the extended reality environment at least partially based on the positions and orientations of the first user and the second user, wherein a first placement position associated with the first device is based at least on the position and the orientation of the first user, and wherein a second placement position associated with the second device is based at least on the position and the orientation of the second user; and

transmitting, by the one or more processors of the computing system, the first placement position or the second placement position to one or more of the first device and the second device across the communications network, wherein the item of virtual content is inserted into the extended reality environment at a placement position determined from the first placement position or the second placement position.

2. The computer-implemented extended reality method of claim 1 , wherein:

the computing system comprises the first device of the first user;

obtaining the position and the orientation of the second user comprises receiving the position and the orientation of the second user; and

the method further comprising displaying, on the first device, the item of virtual content within the extended reality environment at the placement position.

3. The computer-implemented extended reality method of claim 2 , wherein:

the first device of the first user comprises a display;

the method further comprises displaying digital content that establishes the extended reality environment on the display; and

displaying the item of virtual content within the extended reality environment comprises displaying the item of virtual content on the display at the placement position.

4. The computer-implemented extended reality method of claim 1 , wherein:

the orientation of the first user comprises one or more of an orientation of at least a portion of a body of the first user and an orientation of the first device of the first user; and

the orientation of the second user comprises one or more of an orientation of at least a portion of a body of the second user and an orientation of the second device of the second user.

5. The computer-implemented extended reality method of claim 1 , wherein the item of virtual content comprises a virtual assistant, the virtual assistant comprising one or more of an avatar and an item of animated digital content.

6. The computer-implemented extended reality method of claim 1 , wherein determining the one or more placement positions for the item of virtual content in the extended reality environment comprises:

identifying a plurality of candidate positions for placement of the item of virtual content within the extended reality environment;

computing a respective placement score for each of the plurality of candidate positions based on the positions and orientations of the first user and the second user; and

based on the respective placement score for each of the plurality of candidate positions, establishing one of the plurality of candidate positions as the first placement position or the second placement position.

7. The computer-implemented extended reality method of claim 6 , further comprising:

obtaining data that characterizes an object disposed within the extended reality environment, the obtained data comprising a type of the object and one or more of a position and a dimension of the object within the extended reality environment; and

computing the respective placement score for each of the plurality of candidate positions based on the positions and orientations of the first user and the second user, and based on one or more of the type, the position, and the dimension of the object within the extended reality environment.

8. The computer-implemented extended reality method of claim 6 , wherein computing the respective placement score comprises computing, for a corresponding one of the plurality of candidate positions, the respective placement score based on: displacements between the corresponding one of the plurality of candidate positions and the positions of the first user and the second user within the extended reality environment.

9. The computer-implemented extended reality method of claim 6 , wherein computing the respective placement score is further based on one or more of: viewing angles of the item of virtual content relative to the orientations of the first and second users; and displacements between a corresponding one of the plurality of candidate positions and the position of the first user and the position of the second user within the extended reality environment.

10. The computer-implemented extended reality method of claim 6 , further comprising:

obtaining depth map data characterizing a depth map of a visible portion of the extended reality environment that is visible to the first user;

obtaining semantic data indicative of an output of a semantic scene analysis of the visible portion of the extended reality environment, the semantic data identifying one or more of a type, a position, and a dimension of a physical object disposed within the visible portion of the extended reality environment; and

identifying the plurality of candidate positions for placement of the item of virtual content within the extended reality environment based on one or more of the obtained depth map data and the obtained semantic data.

11. The computer-implemented extended reality method of claim 1 , further comprising:

detecting a gestural input of the first user; and

performing operations that modify the placement position of the item of virtual content within the extended reality environment based on the detected gestural input.

12. The computer-implemented extended reality method of claim 1 , further comprising:

detecting a gestural input of the first user;

in response to the detected gestural input, projecting a gestural vector onto a depth map of a visible portion of the extended reality environment that is visible to the first user;

identifying an object associated with the projected gestural vector; and

performing operations that present digital content associated with the identified object to the first user.

13. The computer-implemented extended reality method of claim 1 , further comprising:

detecting one or more of a gestural input and a spoken input of the first user, the one or more of the gestural input and the spoken input requesting a performance of an action by the item of virtual content;

identifying an action requested by the first user based on the one or more of the gestural input and the spoken input; and

performing operations consistent with the identified action.

14. The computer-implemented extended reality method of claim 1 , wherein the computing system is in communication with the first device and the second device.

15. The computer-implemented extended reality method of claim 1 , wherein the computing system comprises the second device.

16. An apparatus for providing an extended reality environment, the apparatus in communication with one or more of a first device of a first user and a second device of a second user across a communications network, comprising:

a non-transitory, machine-readable storage medium storing instructions; and

at least one processor configured to execute the instructions to:

obtain a position and an orientation of the first user in an extended reality environment;

obtain a position and an orientation of the second user in the extended reality environment;

determine one or more positions for placement of an item of virtual content in the extended reality environment at least partially based on the positions and orientations of the first user and the second user, wherein a first placement position associated with the first device is based at least on the position and the orientation of the first user, and wherein a second placement position associated with the second device is based at least on the position and the orientation of the second user; and

perform operations that cause transmission of the first placement position or the second placement position to one or more of the first device and the second device across the communications network, wherein the item of virtual content is inserted into the extended reality environment at a placement position determined from the first placement position or the second placement position.

17. The apparatus of claim 16 , wherein:

the apparatus comprises the first device of the first user; and

the at least one processor is further configured to execute the instructions to:

receive the position and orientation of the second user; and

display, to the first user, the item of virtual content within the extended reality environment at the determined placement position.

18. The apparatus of claim 17 , wherein:

the first device comprises a display coupled to the at least one processor; and

the at least one processor is further configured to execute the instructions to:

display digital content that establishes the extended reality environment on the display; and

display the item of virtual content on the display at the placement position.

19. The apparatus of claim 16 , wherein:

the orientation of the first user comprises one or more of an orientation of at least a portion of a body of the first user and an orientation of the first device of the first user; and

the orientation of the second user comprises one or more of an orientation of at least a portion of a body of the second user and an orientation of the second device of by the second user.

20. The apparatus of claim 16 , wherein the item of virtual content comprises a virtual assistant, the virtual assistant comprising one or more of an avatar and an item of animated digital content.

21. The apparatus of claim 16 , wherein the at least one processor is further configured to:

identify a plurality of candidate positions for placement of the item of virtual content within the extended reality environment;

compute a respective placement score for each of the plurality of candidate positions based on the positions and orientations of the first user and the second user; and

based on respective placement score for each of the plurality of candidate positions, select one of the plurality of candidate positions as the first placement position or the second placement position.

22. The apparatus of claim 21 , wherein the at least one processor is further configured to:

obtain data that identifies and characterizes an object disposed within the extended reality environment, the obtained data comprising a type of the object and one or more of a position and a dimension of the object within the extended reality environment; and

compute the respective placement score for each of the plurality of candidate positions based on the positions and orientations of the first user and the second user, and based on one or more of the type, the position, and the dimension of the object within the extended reality environment.

23. The apparatus of claim 21 , wherein the at least one processor is further configured to compute, for a corresponding one of the candidate positions, the respective placement score based on: a displacement between the corresponding candidate position and the position of the first user within the extended reality environment.

24. The apparatus of claim 21 , wherein the at least one processor is further configured to:

compute, for a corresponding one of the candidate positions, the respective placement score based on one or more of: viewing angles of the item of virtual content relative to the orientations of the first and second users; and displacements between a corresponding one of the plurality of candidate positions and the position of the first user and the position of the second user within the extended reality environment.

25. The apparatus of claim 21 , wherein the at least one processor is further configured to:

obtain depth map data characterizing a depth map of a visible portion of the extended reality environment that is visible to the first user;

obtain semantic data indicative of an output of a semantic scene analysis of the visible portion of the extended reality environment, the semantic data identifying one or more of a type, a position, and a dimension of a physical object disposed within the visible portion of the extended reality environment; and

identify the plurality of candidate positions for placement of the item of virtual content within the extended reality environment based on one or more of the obtained depth map data and the obtained semantic data.

26. The apparatus of claim 16 , wherein the at least one processor is further configured to:

detect a gestural input of the first user; and

perform operations that modify the placement position of the item of virtual content within the extended reality environment based on the detected gestural input.

27. The apparatus of claim 16 , wherein the at least one processor is further configured to:

detect a gestural input of the first user;

in response to the detected gestural input, project a gestural vector onto a depth map of a visible portion of the extended reality environment that is visible to the first user;

identify an object associated with the projected gestural vector; and

perform operations that present content associated with the identified object to the first user.

28. The apparatus of claim 16 , wherein the at least one processor is further configured to:

detect one or more of a gestural input and a spoken input of the first user, the one or more of the gestural input and the spoken input requesting a performance of an action by the item of virtual content;

identify an action requested by the first user based on the one or more of the gestural input and the spoken input; and

perform operations consistent with the identified action.

29. An apparatus for providing an extended reality environment, the apparatus in communication with one or more of a first device of a first user and a second device of a second user across a communications network, comprising:

means for obtaining a position and an orientation of the first user in an extended reality environment;

means for determining a position and an orientation of the second user in the extended reality environment;

means for determining one or more positions for placement of an item of virtual content in the extended reality environment at least partially based on the positions and orientations of the first user and the second user, wherein a first placement position associated with the first device is based at least on the position and the orientation of the first user, and wherein a second placement position associated with the second device is based at least on the position and the orientation of the second user; and

means for transmitting the first placement position or the second placement position to one or more of the first device and the second device across the communications network, wherein the item of virtual content is inserted into the extended reality environment at a placement position determined from the first placement position or the second placement position.

30. A non-transitory, computer-readable storage medium of an apparatus in communication with one or more of a first device of a first user and a second device of a second user across a communications network, the computer-readable storage medium being encoded with processor-executable program code comprising:

program code for obtaining a position and an orientation of the first user in an extended reality environment;

program code for obtaining a position and an orientation of the second user in the extended reality environment;

program code for determining one or more placement positions for placement of an item of virtual content in the extended reality environment at least partially based on the positions and orientations of the first user and the second user, wherein a first placement position associated with the first device is based at least on the position and the orientation of the first user, and wherein a second placement position associated with the second device is based at least on the position and the orientation of the second user; and

program code for transmitting the first placement position or the second placement position to one or more of the first device and the second device across the communications network, wherein the item of virtual content is inserted into the extended reality environment at a placement position determined from the first placement position or the second placement position.

31. The apparatus of claim 16 , wherein the apparatus is in communication with the first device and the second device.

32. The apparatus of claim 16 , wherein the apparatus comprises the second device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2021
From: GORUR SHESHAGIRI, PUSHKAR; BAHETE, PAWAN KUMAR; GUPTE, AJIT DEEPAK; LAKSHMIKANTHA, SANDEEP KANAKAPURA
To: QUALCOMM INCORPORATED
Reel/Frame 055554/0727 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2017
From: GORUR SHESHAGIRI, PUSHKAR; BAHETI, PAWAN KUMAR; GUPTE, AJIT DEEPAK; LAKSHMIKANTHA, SANDEEP KANAKAPURA
To: QUALCOMM INCORPORATED
Reel/Frame 043058/0993 →
Continuity (1)
Related Publication 20190026936A1 · Jan 24, 2019
Cited By (4)
US 12,340,461 US 12,368,821 US 12,603,971 US 12,634,413