IP Library Granted Patent US 11,481,960
Granted Patent B2
US 11,481,960 · App. 17/138,414 · Granted Oct 25, 2022

Systems and methods for generating stabilized images of a real environment in artificial reality

Inventors: Alessia Marra (Zurich, CH); Gioacchino Noris (Zurich, CH); Panya Inversin (Gersau, CH)
Assignee: Meta Platforms Technologies, LLC
G06T15/20G06F3/012G06F3/013G06F3/0346G06T7/70H04N13/344G02B27/017G06F3/011G06F3/04815G06F2200/00G06T19/006G06T2207/30244G06V10/25G09G2340/10G09G2340/12H04N5/272
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,481,960
App. No.
17/138,414
Granted
Oct 25, 2022
Kind
B2
Abstract

A method includes a computing system tracking motions performed by a hand of a user, determining one or more anchor locations in a three-dimensional space, and generating a virtual surface anchored in the three-dimensional space. An image of a real environment is captured using a camera worn by the user, and a pose of the camera when the image is captured is determined. The computing system determines a first viewpoint of a first eye of the user and a region in the image that, as viewed from the camera, corresponds to the virtual surface. The computing system renders an output image based on (1) the first viewpoint relative to the virtual surface and (2) the image region corresponding to the virtual surface, and displays the output image on a first display of the device, the first display being configured to be viewed by the first eye of the user.

Claims (55)

1. A method comprising, by a computing device:

displaying a first image of a real environment to a user captured using a camera worn by the user;

tracking motions performed by a hand of the user in response to the displayed first image;

determining, based on the tracked motions, one or more anchor locations in a three-dimensional virtual reality space;

generating, based on the one or more anchor locations, a virtual surface fixed in the three-dimensional virtual reality space;

capturing a second image of the real environment using the camera worn by the user;

determining a pose of the camera when the second image is captured;

determining a region in the second image that, as viewed from the pose of the camera, corresponds to the virtual surface;

determining a first viewpoint of a first eye of the user;

rendering a first output image based on (1) the first viewpoint relative to the virtual surface and (2) the image region of the second image corresponding to the virtual surface; and

displaying the first output image on a first display of the computing device, the first display being configured to be viewed by the first eye of the user.

2. The method of claim 1 , wherein the one or more anchor locations correspond to a location of one or more objects in the real environment.

3. The method of claim 1 , wherein the tracking motions comprise designating a first coordinate in the three-dimensional virtual reality space, wherein the one or more anchor locations are based on the first coordinate.

4. The method of claim 1 , wherein the camera worn by the user is associated with a head-mounted device worn by the user that blocks the user from seeing the real environment directly.

5. The method of claim 1 , further comprising determining a horizontal distance of the user from the virtual surface; wherein displaying the first output image is based on the horizontal distance of the user from the virtual surface exceeding a minimum threshold distance.

6. The method of claim 1 , further comprising determining a vertical distance of the user from the virtual surface; wherein displaying the first output image is based on the vertical distance of the user from the virtual surface exceeding a minimum threshold distance.

7. The method of claim 1 , wherein the computing device is an artificial reality device, further comprising determining an orientation of the artificial reality device relative to the virtual surface; wherein displaying the first output image is based on the orientation of the artificial reality device.

8. The method of claim 1 , further comprising:

determining a second viewpoint of a second eye of the user;

rendering a second output image based on (1) the second viewpoint relative to the virtual surface and (2) the image region corresponding to the virtual surface; and

displaying the second output image on a second display of the device, the second display being configured to be viewed by the second eye of the user.

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

display a first image of a real environment to a user captured using a camera worn by the user;

track motions performed by a hand of the user in response to the displayed first image;

determine, based on the tracked motions, one or more anchor locations in a three-dimensional virtual reality space;

generate, based on the one or more anchor locations, a virtual surface fixed in the three-dimensional virtual reality space;

capture a second image of the real environment using the camera worn by the user;

determine a pose of the camera when the second image is captured;

determine a region in the second image that, as viewed from the pose of the camera, corresponds to the virtual surface;

determine a first viewpoint of a first eye of the user;

render a first output image based on (1) the first viewpoint relative to the virtual surface and (2) the image region of the second image corresponding to the virtual surface; and

display the first output image on a first display of the device, the first display being configured to be viewed by the first eye of the user.

10. The media of claim 9 , wherein the one or more anchor locations correspond to a location of one or more objects in the real environment.

11. The media of claim 9 , wherein the tracking motions comprise designating a first coordinate in the three-dimensional virtual reality space, wherein the one or more anchor locations are based on the first coordinate.

12. The media of claim 9 , wherein the computing device is a head-mounted device that blocks the user from seeing the real environment directly.

13. The media of claim 9 , wherein the software is further operable when executed to determine a horizontal distance of the user from the virtual surface; wherein displaying the first output image is based on the horizontal distance of the user from the virtual surface.

14. The media of claim 9 , wherein the software is further operable when executed to determine a vertical distance of the user from the virtual surface; wherein displaying the first output image is based on the vertical distance of the user from the virtual surface.

15. The media of claim 9 , wherein the device is an artificial reality device, wherein the software is further operable when executed to determine an orientation of the artificial reality device relative to the virtual surface; wherein displaying the first output image is based on the orientation of the artificial reality device.

16. 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:

display a first image of a real environment to a user captured using a camera worn by the user;

track motions performed by a hand of the user in response to the displayed first image;

determine, based on the tracked motions, one or more anchor locations in a three-dimensional virtual reality space;

generate, based on the one or more anchor locations, a virtual surface fixed in the three-dimensional virtual reality space;

capture a second image of the real environment using the camera worn by the user;

determine a pose of the camera when the second image is captured;

determine a region in the second image that, as viewed from the pose of the camera, corresponds to the virtual surface;

determine a first viewpoint of a first eye of the user;

render a first output image based on (1) the first viewpoint relative to the virtual surface and (2) the image region of the second image corresponding to the virtual surface; and

display the first output image on a first display of the device, the first display being configured to be viewed by the first eye of the user.

17. The system of claim 16 , wherein the one or more anchor locations correspond to a location of one or more objects in the real environment.

18. The system of claim 16 , wherein the tracking motions comprise designating a first coordinate in the three-dimensional virtual reality space, wherein the one or more anchor locations are based on the first coordinate.

19. The system of claim 16 , wherein the computing device is a head-mounted device that blocks the user from seeing the real environment directly.

20. The system of claim 16 , wherein the instructions further cause the system to determine a horizontal distance of the user from the virtual surface; wherein the first output image is displayed based on the horizontal distance of the user from the virtual surface exceeding a minimum threshold distance.

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 Jan 22, 2021
From: MARRA, ALESSIA; NORIS, GIOACCHINO; INVERSIN, PANYA
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 055010/0112 →
Continuity (1)
Related Publication 20220207816A1 · Jun 30, 2022
Cited By (7)
US 12,206,830 US 12,495,132 US 12,547,244 US 12,554,320 US 12,579,747 US 12,586,294 US 12,651,413