IP Library Granted Patent US 12,033,270
Granted Patent B2
US 12,033,270 · App. 17/972,269 · Granted Jul 9, 2024

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 12,033,270
App. No.
17/972,269
Granted
Jul 9, 2024
Kind
B2
Abstract

A method includes detecting an object of interest in a real environment and depth information of the object; determining one or more anchor locations in a three-dimensional space that correspond to a position of the object in the three-dimensional space; and generating a virtual surface anchored in the three-dimensional space. The method may further determine a pose of a camera when an image is captured and determine a region in the image that corresponds to the virtual surface. The method may further 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 corresponding to the virtual surface; and display 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.

Claims (49)

1. A method comprising, by a computing device:

detecting an object of interest in a real environment and depth information of the object;

determining, based on the depth information, one or more anchor locations in a three-dimensional space that correspond to a position of the object of interest in the three-dimensional space;

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

determining a pose of a camera when an image is captured;

determining a region in the 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 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 object of interest in the real environment is detected using a computer vision technique.

3. The method of claim 1 , wherein the one or more anchor locations are further determined based on one or more tracked motions of a hand of the user.

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

5. The method of claim 1 , wherein the three-dimensional space is a virtual reality environment.

6. 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.

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

8. 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.

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

10. 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 computing device, the second display being configured to be viewed by the second eye of the user.

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

detect an object of interest in a real environment and depth information of the object;

determine, based on the depth information, one or more anchor locations in a three-dimensional space that correspond to a position of the object of interest in the three-dimensional space;

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

determine a pose of a camera when an image is captured;

determine a region in the 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 corresponding to the virtual surface; and

display 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.

12. The media of claim 11 , wherein the object of interest in the real environment is detected using a computer vision technique.

13. The media of claim 11 , wherein the one or more anchor locations are further determined based on one or more tracked motions of a hand of the user.

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

15. The media of claim 11 , wherein the three-dimensional space is a virtual reality environment.

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

17. The media of claim 11 , 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.

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:

detect an object of interest in a real environment and depth information of the object;

determine, based on the depth information, one or more anchor locations in a three-dimensional space that correspond to a position of the object of interest in the three-dimensional space;

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

determine a pose of a camera when an image is captured;

determine a region in the 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 corresponding to the virtual surface; and

display 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.

19. The system of claim 18 , wherein the object of interest in the real environment is detected using a computer vision technique.

20. The system of claim 18 , wherein the one or more anchor locations are further determined based on one or more tracked motions of a hand of the user.

Continuity (2)
Continuation 17138414 · Dec 30, 2020
Related Publication 20230037750A1 · Feb 9, 2023
Cited By (2)
US 12,579,747 US 12,586,294