IP Library › Granted Patent US 10,872,464
Granted Patent B2
US 10,872,464 · App. 16/176,510 · Granted Dec 22, 2020

Aligned augmented reality views

Inventors: Manu Parmar (Sunnyvale, CA); Brook Seaton (Oakland, CA); Clarence Chui (Los Altos Hills, CA)
Assignee: Outward, Inc.
G06T17/00G06T7/70G06T19/006G06T2210/04
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,872,464
App. No.
16/176,510
Filed
Oct 31, 2018
Granted
Dec 22, 2020
Kind
B2
Art Unit
2616
USPC
345/419
Abstract

Techniques for generating aligned, augmented reality views are disclosed. In some embodiments, an estimate of a floorplan of a three-dimensional space is first generated based on one or more views of the three-dimensional space from a camera of a device located in the three-dimensional space. A cost function is next minimized with respect to the estimate of the floorplan to generate a corrected floorplan having less error than the estimated floorplan, and a camera pose corresponding to the corrected floorplan is determined. Display of a rendering having the determined camera pose is facilitated in an actual view of the camera, resulting in an aligned, augmented reality view.

Claims (71)

1. A method, comprising:

receiving user input from a user comprising one or more lines specifying where one or more walls of a three-dimensional space meet a floor of the three-dimensional space;

generating an estimate of a floorplan of the three-dimensional space based on the received user input and one or more views of the three-dimensional space from a camera of a client device of the user located in the three-dimensional space;

minimizing a cost function with respect to the estimate of the floorplan to generate a corrected floorplan having less error than the estimated floorplan;

determining a pose of the camera with respect to the corrected floorplan; and

facilitating display of a rendering provided by a server that has the determined camera pose in an actual view of the camera of the client device of the user.

2. The method of claim 1 , wherein facilitating display of the rendering in the actual view comprises facilitating real time display of the rendering in the actual view.

3. The method of claim 1 , wherein the rendering and the actual view are aligned.

4. The method of claim 1 , wherein the rendering and the actual view comprise a composite view.

5. The method of claim 1 , wherein the rendering and the actual view comprise an augmented reality view.

6. The method of claim 1 , wherein the rendering is displayed on top of the actual view.

7. The method of claim 1 , wherein the rendering is overlaid on the actual view.

8. The method of claim 1 , wherein the rendering is superimposed on the actual view.

9. The method of claim 1 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan properties.

10. The method of claim 1 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan geometries.

11. The method of claim 1 , wherein the cost function includes a set of one or more constraints that are based on a known floorplan specification of the three-dimensional space.

12. The method of claim 1 , wherein the cost function comprises a constraint that floorplan walls meet at right angles.

13. The method of claim 1 , wherein the cost function comprises an error function.

14. The method of claim 1 , wherein the three-dimensional space comprises an enclosed, indoor space.

15. The method of claim 1 , wherein the three-dimensional space comprises a room.

16. The method of claim 1 , wherein the three-dimensional space comprises a building.

17. The method of claim 1 , wherein the one or more lines are drawn by the user on a display of the client device displaying the actual view of the camera.

18. The method of claim 1 , further comprising extracting textures from camera images for three-dimensional model rendering.

19. A system, comprising:

a processor configured to:

receive user input from a user comprising one or more lines specifying where one or more walls of a three-dimensional space meet a floor of the three-dimensional space;

generate an estimate of a floorplan of the three-dimensional space based on the received user input and one or more views of the three-dimensional space from a camera of a client device of the user located in the three-dimensional space;

minimize a cost function with respect to the estimate of the floorplan to generate a corrected floorplan having less error than the estimated floorplan;

determine a pose of the camera with respect to the corrected floorplan; and

facilitate display of a rendering provided by a server that has the determined camera pose in an actual view of the camera of the client device of the user; and

a memory coupled to the processor and configured to provide the processor with instructions.

20. The system of claim 19 , wherein to facilitate display of the rendering in the actual view comprises to facilitate real time display of the rendering in the actual view.

21. The system of claim 19 , wherein the rendering and the actual view are aligned.

22. The system of claim 19 , wherein the rendering and the actual view comprise a composite view.

23. The system of claim 19 , wherein the rendering and the actual view comprise an augmented reality view.

24. The system of claim 19 , wherein the rendering is displayed on top of the actual view.

25. The system of claim 19 , wherein the rendering is overlaid on the actual view.

26. The system of claim 19 , wherein the rendering is superimposed on the actual view.

27. The system of claim 19 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan properties.

28. The system of claim 19 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan geometries.

29. The system of claim 19 , wherein the cost function includes a set of one or more constraints that are based on a known floorplan specification of the three-dimensional space.

30. The system of claim 19 , wherein the cost function comprises a constraint that floorplan walls meet at right angles.

31. The system of claim 19 , wherein the cost function comprises an error function.

32. The system of claim 19 , wherein the three-dimensional space comprises an enclosed, indoor space.

33. The system of claim 19 , wherein the three-dimensional space comprises a room.

34. The system of claim 19 , wherein the three-dimensional space comprises a building.

35. The system of claim 19 , wherein the one or more lines are drawn by the user on a display of the client device displaying the actual view of the camera.

36. The system of claim 19 , wherein the processor is further configured to extract textures from camera images for three-dimensional model rendering.

37. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving user input from a user comprising one or more lines specifying where one or more walls of a three-dimensional space meet a floor of the three-dimensional space;

generating an estimate of a floorplan of the three-dimensional space based on the received user input and one or more views of the three-dimensional space from a camera of a client device of the user located in the three-dimensional space;

minimizing a cost function with respect to the estimate of the floorplan to generate a corrected floorplan having less error than the estimated floorplan;

determining a pose of the camera with respect to the corrected floorplan; and

facilitating display of a rendering provided by a server that has the determined camera pose in an actual view of the camera of the client device of the user.

38. The computer program product of claim 37 , wherein facilitating display of the rendering in the actual view comprises facilitating real time display of the rendering in the actual view.

39. The computer program product of claim 37 , wherein the rendering and the actual view are aligned.

40. The computer program product of claim 37 , wherein the rendering and the actual view comprise a composite view.

41. The computer program product of claim 37 , wherein the rendering and the actual view comprise an augmented reality view.

42. The computer program product of claim 37 , wherein the rendering is displayed on top of the actual view.

43. The computer program product of claim 37 , wherein the rendering is overlaid on the actual view.

44. The computer program product of claim 37 , wherein the rendering is superimposed on the actual view.

45. The computer program product of claim 37 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan properties.

46. The computer program product of claim 37 , wherein the cost function includes a set of one or more constraints that are based on foreknowledge of floorplan geometries.

47. The computer program product of claim 37 , wherein the cost function includes a set of one or more constraints that are based on a known floorplan specification of the three-dimensional space.

48. The computer program product of claim 37 , wherein the cost function comprises a constraint that floorplan walls meet at right angles.

49. The computer program product of claim 37 , wherein the cost function comprises an error function.

50. The computer program product of claim 37 , wherein the three-dimensional space comprises an enclosed, indoor space.

51. The computer program product of claim 37 , wherein the three-dimensional space comprises a room.

52. The computer program product of claim 37 , wherein the three-dimensional space comprises a building.

53. The computer program product of claim 37 , wherein the one or more lines are drawn by the user on a display of the client device displaying the actual view of the camera.

54. The computer program product of claim 37 , further comprising computer instructions for extracting textures from camera images for three-dimensional model rendering.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2019
From: PARMAR, MANU; SEATON, BROOK; CHUI, CLARENCE
To: OUTWARD, INC.
Reel/Frame 048104/0347 →
Continuity (2)
Provisional Application 62579790 · Oct 31, 2017
Related Publication 20190130637A1 · May 2, 2019