IP Library Granted Patent US 11,042,749
Granted Patent B2
US 11,042,749 · App. 16/822,828 · Granted Jun 22, 2021

Augmented reality mapping systems and related methods

Inventors: Richard Andrew Newcombe (Seattle, WA); Jakob Julian Engel (Seattle, WA); Julian Straub (Redmond, WA); Thomas John Whelan (Redmond, WA); Steven John Lovegrove (Woodinville, WA); Yuheng Ren (Newcastle, WA)
Assignee: Facebook Technologies, LLC
G06K9/00671G06T19/006H04W4/021H04W4/029H04W4/33
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,042,749
App. No.
16/822,828
Granted
Jun 22, 2021
Kind
B2
Abstract

The disclosed computer-implemented method may include receiving, from devices in an environment, real-time data associated with the environment and determining, from the real-time data, current object data for the environment. The current object data may include both state data and relationship data for objects in the environment. The method may also include determining object deltas between the current object data and prior object data from an event graph. The prior object data may include prior state data and prior relationship data for the objects. The method may include detecting an unknown state for one of the objects, inferring a state for the object based on the event graph, and updating the event graph based on the object deltas and the inferred state. The method may further include sending updated event graph data to the devices. Various other methods, systems, and computer-readable media are also disclosed.

Claims (52)

1. A method comprising:

receiving, from a plurality of devices in an environment, real-time data associated with the environment;

determining, from the real-time data, current object data for the environment, wherein the current object data includes both state data and relationship data for objects in the environment detected by the plurality of devices;

determining object deltas between the current object data and prior object data from an event graph, wherein the prior object data includes prior state data and prior relationship data for objects in the environment and wherein the state data of the event graph includes data on states of the objects in the environment over time and the relationship data of the event graph includes data on transitions between the states based on interactions between the objects in the environment;

detecting an unknown state for at least one of the objects in the environment;

inferring a state for the at least one of the objects by analyzing the event graph by analyzing the prior state data and the relationship data for the at least one of the objects to identify a last known state and which object last interacted with the at least one of the objects;

updating the event graph based on the object deltas and the inferred state; and

sending updated event graph data to the plurality of devices.

2. The method of claim 1 , wherein the state data of the event graph includes data corresponding to respective conditions of the objects in the environment.

3. The method of claim 1 , wherein the relationship data of the event graph includes data corresponding to relationships between the objects in the environment.

4. The method of claim 3 , wherein the relationships between the objects in the environment include status changes caused by objects in the environment.

5. The method of claim 1 , wherein the state data of the event graph includes nodes indicating position data over time of the objects in the environment, the relationship data of the event graph includes edges linking the nodes of the state data, and the edges correspond to transitions between states based on interactions between the objects in the environment.

6. The method of claim 5 , wherein updating the event graph based on the object deltas further comprises:

recognizing an object in the object deltas having a prior node in the event graph;

creating a new node for the recognized object in the event graph based on current state data from the object deltas; and

linking, with a new edge, the new node with the prior node based on relationship data from the object deltas.

7. The method of claim 6 , further comprising creating a new node for each new state of the recognized object.

8. The method of claim 1 , wherein the unknown state corresponds to an unknown current location.

9. The method of claim 8 , wherein the inferred state includes a predicted current location.

10. A system comprising:

one or more processors;

a memory comprising instructions that when executed by the one or more processors cause the system to:

receive, from a plurality of devices in an environment, real-time data associated with the environment;

determine, from the real-time data, current object data for the environment, wherein the current object data includes both state data and relationship data for objects in the environment detected by the plurality of devices;

determine object deltas between the current object data and prior object data from an event graph, wherein the prior object data includes prior state data and prior relationship data for objects in the environment and wherein the state data of the event graph includes data on states of the objects in the environment over time and the relationship data of the event graph includes data on transitions between the states based on interactions between the objects in the environment;

detect an unknown state for at least one of the objects in the environment;

infer a state for the at least one of the objects by analyzing the event graph by analyzing the prior state data and the relationship data for the at least one of the objects to identify a last known state and which object last interacted with the at least one of the objects;

update the event graph based on the object deltas and the inferred state; and

send updated event graph data to the plurality of devices.

11. The system of claim 10 , wherein the state data of the event graph includes data corresponding to respective conditions of the objects in the environment and the relationship data of the event graph includes data corresponding to relationships between the objects in the environment.

12. The system of claim 11 , wherein the relationships between the objects in the environment include status changes caused by objects in the environment.

13. The system of claim 10 , wherein the state data of the event graph includes nodes indicating position data over time of the objects in the environment, the relationship data of the event graph includes edges linking the nodes of the state data, and the edges correspond to transitions between states based on interactions between the objects in the environment.

14. The system of claim 13 , wherein the instructions for updating the event graph based on the object deltas further comprises instructions for:

recognizing an object in the object deltas having a prior node in the event graph;

creating a new node for the recognized object in the event graph based on current state data from the object deltas; and

linking, with a new edge, the new node with the prior node based on relationship data from the object deltas.

15. The system of claim 10 , wherein the unknown state corresponds to an unknown current location and the inferred state includes a predicted current location.

16. A non-transitory computer-readable medium comprising computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

receive, from a plurality of devices in an environment, real-time data associated with the environment;

determine, from the real-time data, current object data for the environment, wherein the current object data includes both state data and relationship data for objects in the environment detected by the plurality of devices;

determine object deltas between the current object data and prior object data from an event graph, wherein the prior object data includes prior state data and prior relationship data for objects in the environment and wherein the state data of the event graph includes data on states of the objects in the environment over time and the relationship data of the event graph includes data on transitions between the states based on interactions between the objects in the environment;

detect an unknown state for at least one of the objects in the environment;

infer a state for the at least one of the objects by analyzing the event graph by analyzing the prior state data and the relationship data for the at least one of the objects to identify a last known state and which object last interacted with the at least one of the objects;

update the event graph based on the object deltas and the inferred state; and

send updated event graph data to the plurality of devices.

17. The non-transitory computer-readable medium of claim 16 , wherein the state data of the event graph includes data corresponding to respective conditions of the objects in the environment and the relationship data of the event graph includes data corresponding to relationships between the objects in the environment.

18. The non-transitory computer-readable medium of claim 16 , wherein the state data of the event graph includes nodes indicating position data over time of the objects in the environment, the relationship data of the event graph includes edges linking the nodes of the state data, and the edges correspond to transitions between states based on interactions between the objects in the environment.

19. The non-transitory computer-readable medium of claim 18 , wherein the instructions for updating the event graph based on the object deltas further comprises instructions for:

recognizing an object in the object deltas having a prior node in the event graph;

creating a new node for the recognized object in the event graph based on current state data from the object deltas; and

linking, with a new edge, the new node with the prior node based on relationship data from the object deltas.

20. The non-transitory computer-readable medium of claim 19 , wherein the unknown state corresponds to an unknown current location and the inferred state includes a predicted current location.

Assignments (3)
CHANGE OF NAME Recorded May 26, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060199/0876 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2020
From: NEWCOMBE, RICHARD ANDREW; ENGEL, JAKOB JULIAN; STRAUB, JULIAN; WHELAN, THOMAS JOHN; LOVEGROVE, STEVEN JOHN; REN, YUHENG
To: OCULUS VR, LLC
Reel/Frame 053016/0029 →
CHANGE OF NAME Recorded Jun 23, 2020
From: OCULUS VR, LLC
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 053019/0833 →
Continuity (2)
Continuation 16131066 · Sep 14, 2018
Related Publication 20200218898A1 · Jul 9, 2020