IP Library Granted Patent US 11,126,850
Granted Patent B1
US 11,126,850 · App. 16/844,913 · Granted Sep 21, 2021

Systems and methods for detecting objects within the boundary of a defined space while in artificial reality

Inventors: Alexandru-Eugen Ichim (Ruschlikon, CH); Sarthak Ray (Santa Clara, CA); Alexander Sorkine Hornung (Zurich, CH); Gioacchino Noris (Zurich, CH); Gaurav Chaurasia (Zurich, CH); Jan Oberländer (Binningen, CH)
Assignee: Facebook Technologies, LLC
G06K9/00671G06F3/013G06T7/74G06T15/205G06T19/006G06T2207/10028
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,126,850
App. No.
16/844,913
Granted
Sep 21, 2021
Kind
B1
Abstract

In one embodiment, a method includes generating a plurality of spatial points based on depth measurements of physical objects within a physical space surrounding a user and determining, based on the spatial points, a location at which a physical object is likely to exist. The method then renders, based on the location of the physical object, a virtual space representing the physical space. This virtual space may include a virtual object representing the physical object. The method displays the virtual space to the user, and, while displaying the virtual space, receives input from the user indicating a boundary of a subspace within the virtual space, and detects that at least a portion of the virtual object is within the subspace. Finally, the method updates the virtual space to indicate that the portion of the virtual object is within the subspace.

Claims (57)

1. A method comprising, by a computing system:

generating a plurality of spatial points based on depth measurements of physical objects within a physical space surrounding a user;

determining, based on the spatial points, a location at which a physical object is likely to exist;

rendering, based on the location of the physical object, a virtual space representing the physical space, wherein the virtual space includes a virtual object representing the physical object;

displaying the virtual space to the user;

while displaying the virtual space:

receiving input from the user creating a boundary of a subspace within the virtual space, and

in response to receiving the input, detecting that at least a portion of the virtual object is within the subspace; and

updating the virtual space to indicate that the portion of the virtual object is within the subspace.

2. The method of claim 1 , wherein the boundary is open.

3. The method of claim 1 , wherein:

the boundary comprises a predicted portion; and

detecting that the portion of the virtual object is within the subspace comprises detecting that the portion of the virtual object intersects the predicted portion of the boundary.

4. The method of claim 1 , further comprising issuing an alert to the user indicating the portion of the virtual object.

5. The method of claim 4 , further comprising receiving, in response to the alert, a second input from the user indicating a revised boundary that excludes the portion of the virtual object from the subspace.

6. The method of claim 4 , further comprising, in response to the alert, detecting a user movement of the physical object to a new location outside the boundary.

7. The method of claim 1 , further comprising storing the location of the physical object in a memory.

8. The method of claim 7 , further comprising:

receiving a second user input indicating that the boundary is completed;

retrieving the location of the physical object from the memory; and

issuing an alert to the user indicating that the portion of the virtual object is within the subspace at the location.

9. The method of claim 1 , further comprising dividing the physical space into a plurality of voxels, each voxel having a respective occupancy state value, wherein a set of voxels corresponding to the location of the physical object have respective occupancy state values of occupied.

10. The method of claim 9 , further comprising determining, for each voxel of the set, a respective occupancy score based on a subset of the plurality of spatial points that is contained within the voxel.

11. The method of claim 10 , further comprising:

detecting a gaze of the user; and

determining whether the detected gaze is directed at the location of the physical object.

12. The method of claim 11 , further comprising:

if the detected gaze is not directed at the location of the physical object, storing the respective occupancy scores of each voxel of the set in memory;

receiving, from the user, a second input indicating that the boundary is completed; and

issuing an alert to the user indicating the location of the physical object.

13. The method of claim 12 , further comprising displaying, to the user, the set of voxels.

14. The method of claim 11 , wherein if the detected gaze is directed at the location of the physical object, decreasing the respective occupancy scores of the voxels of the set.

15. The method of claim 14 , further comprising determining, based on the spatial points, whether the physical object is likely to have moved.

16. The method of claim 15 , wherein:

upon determining that the physical object is likely to have moved, updating the respective occupancy state values of the voxels of the set to non-occupied; and

upon determining that the physical object is not likely to have moved, increasing the respective occupancy scores of the voxels of the set.

17. The method of claim 1 , further comprising:

determining a distance between the user and the portion of the virtual object; and

issuing an alert to the user if the distance is less than a threshold.

18. A system comprising one or more processors and one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

generate a plurality of spatial points based on depth measurements of physical objects within a physical space surrounding a user;

determine, based on the spatial points, a location at which a physical object is likely to exist;

render, based on the location of the physical object, a virtual space representing the physical space, wherein the virtual space includes a virtual object representing the physical object;

display the virtual space to the user;

while displaying the virtual space:

receive input from the user creating a boundary of a subspace within the virtual space, and

in response to receiving the input, detect that at least a portion of the virtual object is within the subspace; and

update the virtual space to indicate that the portion of the virtual object is within the subspace.

19. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

generate a plurality of spatial points based on depth measurements of physical objects within a physical space surrounding a user;

determine, based on the spatial points, a location at which a physical object is likely to exist;

render, based on the location of the physical object, a virtual space representing the physical space, wherein the virtual space includes a virtual object representing the physical object;

display the virtual space to the user;

while displaying the virtual space:

receive input from the user creating a boundary of a subspace within the virtual space, and

in response to receiving the input, detect that at least a portion of the virtual object is within the subspace; and

update the virtual space to indicate that the portion of the virtual object is within the subspace.

Assignments (2)
CHANGE OF NAME Recorded Jul 6, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060591/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2020
From: ICHIM, ALEXANDRU-EUGEN; RAY, SARTHAK; SORKINE HORNUNG, ALEXANDER; NORIS, GIOACCHINO; CHAURASIA, GAURAV; OBERLÄNDER, JAN
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 053100/0073 →