IP Library Granted Patent US 10,043,319
Granted Patent B2
US 10,043,319 · App. 15/406,652 · Granted Aug 7, 2018

Optimizing head mounted displays for augmented reality

Inventors: Anna Petrovskaya (Los Altos, CA); Peter Varvak (Los Altos, CA)
Assignee: Eonite Perception Inc.
G06T19/006G02B27/0101G06F1/163G06F3/005G06F3/012G06F3/017G06F3/0308G06F3/0346G06T15/04G06T17/20G02B2027/014
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 10,043,319
App. No.
15/406,652
Granted
Aug 7, 2018
Kind
B2
Abstract

While many augmented reality systems provide “see-through” transparent or translucent displays upon which to project virtual objects, many virtual reality systems instead employ opaque, enclosed screens. Indeed, eliminating the user's perception of the real-world may be integral to some successful virtual reality experiences. Thus, head mounted displays designed exclusively for virtual reality experiences may not be easily repurposed to capture significant portions of the augmented reality market. Various of the disclosed embodiments facilitate the repurposing of a virtual reality device for augmented reality use. Particularly, by anticipating user head motion, embodiments may facilitate scene renderings better aligned with user expectations than naïve renderings generated within the enclosed field of view. In some embodiments, the system may use procedural mapping methods to generate a virtual model of the environment. The system may then use this model to supplement the anticipatory rendering.

Claims (52)

1. A computer system for causing a head mounted display (HMD) to render an augmented reality image, comprising:

at least one processor; and

at least one memory comprising instructions configured to cause the at least one processor to perform a method comprising:

receiving visual data associated with a first orientation of the HMD;

receiving depth frame data associated with the first orientation of the HMD;

receiving IMU data associated with the first orientation of the HMD;

receiving localization results associated with the first orientation of the HMD;

determining a future rendering time when the HMD will present an image to a user;

determining a second, predicted orientation associated with the HMD at the future rendering time based upon the IMU data, the localization results, and the future rendering time;

generating a three-dimensional (3D) mesh from the depth frame data associated with the first orientation and specifying the texture for the 3D mesh from the visual data associated with the first orientation;

determining a transform between the first orientation and the second orientation;

applying the transform to the generated 3D mesh; and

causing at least a portion of the resulting textured 3D mesh to be rendered in the HMD to the user as a final image.

2. The computer system of claim 1 , wherein the method further comprises determining pixel stretch distances based upon vertices of the transformed 3D mesh.

3. The computer system of claim 2 , wherein the method further comprises blurring pixels in the final image based upon the pixel stretch distances.

4. The computer system of claim 3 , wherein the method further comprises creating parts of the final image from at least a portion of a previously created model of an environment surrounding the HMD based upon the pixel stretch distances.

5. The computer system of claim 4 , the method further comprising creating the model using a Scaling Series mapping process.

6. The computer system of claim 1 , wherein the method further comprises computing Nearest Visible Projected Pixel (NVPP) distances based upon vertices of the transformed 3D mesh.

7. The computer system of claim 6 , wherein the method further comprises causing pixels of the final image to be blurred based upon NVPP distances.

8. The computer system of claim 1 , wherein the method further comprises reconstructing parts of the final image from at least a portion of a previously created model of an environment surrounding the HMD based upon the NVPP distances.

9. A computer-implemented method for rendering an augmented reality image in a head mounted display (HMD), comprising:

receiving visual data associated with a first orientation of the HMD;

receiving depth frame data associated with the first orientation of the HMD;

receiving IMU data associated with the first orientation of the HMD;

receiving localization results associated with the first orientation of the HMD;

determining a future rendering time when the HMD will present an image to a user;

determining a second, predicted orientation associated with the HMD at the future rendering time based upon the IMU data, the localization results, and the future rendering time;

generating a three-dimensional (3D) mesh from the depth frame data associated with the first orientation and specifying the texture for the 3D mesh from the visual data associated with the first orientation;

determining a transform between the first orientation and the second orientation;

applying the transform to the generated 3D mesh; and

causing at least a portion of the resulting textured 3D mesh to be rendered in the HMD to the user as a final image.

10. The computer-implemented method of claim 9 , wherein the method further comprises determining pixel stretch distances based upon vertices of the transformed 3D mesh.

11. The computer-implemented method of claim 10 , wherein the method further comprises blurring pixels in the final image based upon the pixel stretch distances.

12. The computer-implemented method of claim 11 , wherein the method further comprises creating parts of the final image from at least a portion of a previously created model of an environment surrounding the HMD based upon the pixel stretch distances.

13. The computer-implemented method of claim 12 , wherein the method further comprises creating the model using a Scaling Series mapping process.

14. The computer-implemented method of claim 9 , wherein the method further comprises computing Nearest Visible Projected Pixel (NVPP) distances based upon vertices of the transformed 3D mesh.

15. A non-transitory computer-readable medium comprising instructions configured to cause a computer system to perform a method for rendering an augmented reality image in a head mounted display (HMD), comprising:

receiving visual data associated with a first orientation of the HMD;

receiving depth frame data associated with the first orientation of the HMD;

receiving IMU data associated with the first orientation of the HMD;

receiving localization results associated with the first orientation of the HMD;

determining a future rendering time when the HMD will present an image to a user;

determining a second, predicted orientation associated with the HMD at the future rendering time based upon the IMU data, the localization results, and the future rendering time;

generating a three-dimensional (3D) mesh from the depth frame data associated with the first orientation and specifying the texture for the 3D mesh from the visual data associated with the first orientation;

determining a transform between the first orientation and the second orientation;

applying the transform to the generated 3D mesh; and

causing at least a portion of the resulting textured 3D mesh to be rendered in the HMD to the user as a final image.

16. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises determining pixel stretch distances based upon vertices of the transformed 3D mesh.

17. The non-transitory computer-readable medium of claim 16 , wherein the method further comprises blurring pixels in the final image based upon the pixel stretch distances.

18. The non-transitory computer-readable medium of claim 17 , wherein the method further comprises creating parts of the final image from at least a portion of a previously created model of an environment surrounding the HMD based upon the pixel stretch distances.

19. The non-transitory computer-readable medium of claim 18 , wherein the method further comprises creating the model using a Scaling Series mapping process.

20. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises computing Nearest Visible Projected Pixel (NVPP) distances based upon vertices of the transformed 3D mesh.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2018
From: EONITE PERCEPTION INC.
To: INTEL CORPORATION
Reel/Frame 047817/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2017
From: PETROVSKAYA, ANNA; VARVAK, PETER
To: EONITE PERCEPTION INC.
Reel/Frame 040965/0750 →
Continuity (3)
Provisional Application 62279604 · Jan 15, 2016
Provisional Application 62279615 · Jan 15, 2016
Related Publication 20170206712A1 · Jul 20, 2017
Cited By (2)
US 12,340,143 US 12,525,170