IP Library Granted Patent US 11,335,070
Granted Patent B2
US 11,335,070 · App. 17/173,125 · Granted May 17, 2022

Dynamic colocation of virtual content

Inventors: Paul Andrew Baier (Bundoora, AU); Domingo Noriega-Padilla (Miami, FL)
Assignee: Magic Leap, Inc.
G06T19/006G02B27/017G06F17/16
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 11,335,070
App. No.
17/173,125
Granted
May 17, 2022
Kind
B2
Abstract

Disclosed herein are systems and methods for colocating virtual content. A method may include receiving first persistent coordinate data, second persistent coordinate data, and relational data. A third persistent coordinate data and a fourth persistent coordinate data may be determined based on input received via one or more sensors of a head-wearable device. It can be determined whether the first persistent coordinate data corresponds to the third persistent coordinate data. In accordance with a determination that the first persistent coordinate data corresponds to the third persistent coordinate data, it can be determined whether the second persistent coordinate data corresponds to the fourth persistent coordinate data. In accordance with a determination that the second persistent coordinate data corresponds to the fourth persistent coordinate data, a virtual object can be displayed using the relational data and the second persistent coordinate data via a display of the head-wearable device. In accordance with a determination that the second persistent coordinate data does not correspond to the fourth persistent coordinate data, the virtual object can be displayed using the relational data and the first persistent coordinate data via the display of the head-wearable device. In accordance with a determination that the first persistent coordinate data does not correspond to the third persistent coordinate data, the method may forgo displaying the virtual object via the display of the head-wearable device.

Claims (71)

1. A system comprising:

a head-wearable device having a display and one or more sensors; and

one or more processors configured to execute a method comprising:

receiving first persistent coordinate data, second persistent coordinate data, and relational data;

determining, based on input received via the one or more sensors, third persistent coordinate data and fourth persistent coordinate data;

determining whether the first persistent coordinate data corresponds to the third persistent coordinate data;

in accordance with a determination that the first persistent coordinate data corresponds to the third persistent coordinate data:

determining whether the second persistent coordinate data corresponds to the fourth persistent coordinate data;

in accordance with a determination that the second persistent coordinate data corresponds to the fourth persistent coordinate data:

displaying a virtual object via the display of the head-wearable device using the relational data and the second persistent coordinate data;

in accordance with a determination that the second persistent coordinate data does not correspond to the fourth persistent coordinate data:

displaying the virtual object via the display of the head-wearable device using the relational data and the first persistent coordinate data; and

in accordance with a determination that the first persistent coordinate data does not correspond to the third persistent coordinate data:

forgoing displaying the virtual object via the display of the head-wearable device.

2. The system of claim 1 , wherein the first persistent coordinate data corresponds to a first location, wherein the second persistent coordinate data corresponds to a second location, and wherein the second location is closer than the first location to a location of the head-wearable device.

3. The system of claim 1 , wherein the head-wearable device is a first head-wearable device, and wherein the first persistent coordinate data is received from a second head-wearable device.

4. The system of claim 1 , wherein the head-wearable device is a first head-wearable device, and wherein the relational data is received from a second head-wearable device.

5. The system of claim 1 , the method further comprising receiving data corresponding to the virtual object.

6. The system of claim 1 , wherein the third persistent coordinate data corresponds to a current location of the head-wearable device.

7. The system of claim 1 , wherein the relational data comprises a transformation matrix.

8. A method comprising:

receiving first persistent coordinate data, second persistent coordinate data, and relational data;

determining, based on input received via one or more sensors of a head-wearable device, third persistent coordinate data and fourth persistent coordinate data;

determining whether the first persistent coordinate data corresponds to the third persistent coordinate data;

in accordance with a determination that the first persistent coordinate data corresponds to the third persistent coordinate data:

determining whether the second persistent coordinate data corresponds to the fourth persistent coordinate data;

in accordance with a determination that the second persistent coordinate data corresponds to the fourth persistent coordinate data:

displaying a virtual object via a display of the head-wearable device using the relational data and the second persistent coordinate data;

in accordance with a determination that the second persistent coordinate data does not correspond to the fourth persistent coordinate data:

displaying the virtual object via the display of the head-wearable device using the relational data and the first persistent coordinate data; and

in accordance with a determination that the first persistent coordinate data does not correspond to the third persistent coordinate data:

forgoing displaying the virtual object via the display of the head-wearable device.

9. The method of claim 8 , wherein the first persistent coordinate data corresponds to a first location, wherein the second persistent coordinate data corresponds to a second location, and wherein the second location is closer than the first location to a location of the head-wearable device.

10. The method of claim 8 , wherein the head-wearable device is a first head-wearable device, and wherein the first persistent coordinate data is received from a second head-wearable device.

11. The method of claim 8 , wherein the head-wearable device is a first head-wearable device, and wherein the relational data is received from a second head-wearable device.

12. The method of claim 8 , further comprising receiving data corresponding to the virtual object.

13. The method of claim 8 , wherein the third persistent coordinate data corresponds to a current location of the head-wearable device.

14. The method of claim 8 , wherein the relational data comprises a transformation matrix.

15. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to execute a method comprising:

receiving first persistent coordinate data, second persistent coordinate data, and relational data;

determining, based on input received via one or more sensors of a head-wearable device, third persistent coordinate data and fourth persistent coordinate data;

determining whether the first persistent coordinate data corresponds to third persistent coordinate data;

in accordance with a determination that the first persistent coordinate data corresponds to the third persistent coordinate data:

determining whether the second persistent coordinate data corresponds to the fourth persistent coordinate data;

in accordance with a determination that the second persistent coordinate data corresponds to the fourth persistent coordinate data:

displaying a virtual object via a display of the head-wearable device using the relational data and the second persistent coordinate data;

in accordance with a determination that the second persistent coordinate data does not correspond to the fourth persistent coordinate data:

displaying a virtual object via the display of the head-wearable device using the relational data and the first persistent coordinate data; and

in accordance with a determination that the first persistent coordinate data does not correspond to the third persistent coordinate data:

forgoing displaying the virtual object via the display of the head-wearable device.

16. The non-transitory computer-readable medium of claim 15 , wherein the first persistent coordinate data corresponds to a first location, wherein the second persistent coordinate data corresponds to a second location, and wherein the second location is closer than the first location to a location of the head-wearable device.

17. The non-transitory computer-readable medium of claim 15 , wherein the head-wearable device is a first head-wearable device, and wherein the first persistent coordinate data is received from a second head-wearable device.

18. The non-transitory computer-readable medium of claim 15 , wherein the head-wearable device is a first head-wearable device, and wherein the relational data is received from a second head-wearable device.

19. The non-transitory computer-readable medium of claim 15 , the method further comprising receiving data corresponding to the virtual object.

20. The non-transitory computer-readable medium of claim 15 , wherein the third persistent coordinate data corresponds to a current location of the head-wearable device.

21. The non-transitory computer-readable medium of claim 15 , wherein the relational data comprises a transformation matrix.

22. A system comprising:

a head-wearable device having a display and one or more sensors; and

one or more processors configured to execute a method comprising:

receiving first persistent coordinate data;

receiving relational data, wherein the relational data relates a position to the first persistent coordinate data;

determining, based on input received via the one or more sensors, second persistent coordinate data;

determining whether the first persistent coordinate data corresponds to the second persistent coordinate data;

in accordance with a determination that the first persistent coordinate data corresponds to the second persistent coordinate data, displaying a virtual object via the display of the head-wearable device based on the first persistent coordinate data and based on the relational data; and

in accordance with a determination that the first persistent coordinate data does not correspond to the second persistent coordinate data, forgoing displaying the virtual object via the display of the head-wearable device.

23. The system of claim 22 , wherein the head-wearable device is a first head-wearable device, and wherein the method further comprises transmitting the second persistent coordinate data to a second head-wearable device.

24. The system of claim 22 , wherein the head-wearable device is a first head-wearable device, and wherein the first persistent coordinate data is received from a second head-wearable device.

25. The system of claim 22 , wherein the head-wearable device is a first head-wearable device, and wherein the relational data is received from a second head-wearable device.

26. The system of claim 22 , the method further comprising receiving data corresponding to the virtual object.

27. The system of claim 22 , wherein the second persistent coordinate data corresponds to a current location of the head-wearable device.

28. The system of claim 22 , wherein the relational data comprises a transformation matrix.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2022
From: BAIER, PAUL ANDREW; NORIEGA-PADILLA, DOMINGO
To: MAGIC LEAP, INC.
Reel/Frame 059998/0759 →
SECURITY INTEREST Recorded May 24, 2022
From: MOLECULAR IMPRINTS, INC.; MENTOR ACQUISITION ONE, LLC; MAGIC LEAP, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 060338/0665 →
Continuity (2)
Continuation 62972541 · Feb 10, 2020
Related Publication 20210248827A1 · Aug 12, 2021
Cited By (3)
US 12,211,145 US 12,315,094 US 12,495,094