IP Library Granted Patent US 12,229,331
Granted Patent B2
US 12,229,331 · App. 18/046,636 · Granted Feb 18, 2025

Six degree of freedom tracking with scale recovery and obstacle avoidance

Inventors: Jeffrey Roger Powers (San Francisco, CA); Vikas Reddy (Boulder, CO); Yuping Lin (Boulder, CO)
Assignee: XRPro, LLC
G06F3/011G06F3/0346G06T7/13G06T7/181G06T7/50G06T7/73G06T7/90G06T19/006G06T19/20G06T2207/10024G06T2219/2004
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,229,331
App. No.
18/046,636
Granted
Feb 18, 2025
Kind
B2
Abstract

A virtual reality or mixed reality system configured to preform object detection using a monocular camera. The system configured to make the user aware of the detected objects by showing edges or lines of the object within a virtual scene. Thus, the user the user is able to avoid injury or collision while immersed in the virtual scene. In some cases, the system may also detect and correct for drift in the six degree of freedom pose of the user using corrections based on the current motion of the users.

Claims (79)

1. A method comprising:

presenting, on a display of a virtual reality or mixed reality system, a virtual scene to a user;

detecting an edge of a physical object within a physical environment from one or more images captured by the virtual reality or mixed reality system, the physical object excluded from the virtual scene;

determining a six degree of freedom pose associated with a user;

determining the user is within a threshold distance from the physical object; and

determining a field of view of the user based at least in part on the six degree of freedom pose of the user;

determining the edge is not within the field of view; and

displaying the edge of the physical object and an indicator of the edge of the physical object within a field of view of the user within the virtual scene being presented to the user.

2. The method as recited in claim 1 , wherein detecting the edge of the physical object includes:

detecting a first line segment based on a first color gradient within the one or more images;

detecting a second line segment based on a second color gradient within the one or more images;

merging the first line segment to the second line segment into the edge based at least in part on a similarly of the first color gradient to the second color gradient; and

locating the edge within a three-dimensional model of the physical environment.

3. The method as recited in claim 2 , wherein detecting the edge of the physical object further comprises adjusting location of the edge within the three-dimensional model.

4. The method as recited in claim 1 , wherein detecting the edge of the physical object includes:

detecting a first edgelet from the one or more images;

detecting a second edgelet from the one or more images;

detecting a continuous gradient between the first edgelet and the second edgelet;

joining the first edgelet with the second edgelet into a joined edgelet based at least in part on the continues gradient;

estimating a contour based at least in part on the joined edgelet; and

determining a surface based at least in part on the contour; and

wherein the edge is an edge of the surface.

5. The method as recited in claim 1 , wherein the one or more images are captured by a monocular camera.

6. The method as recited in claim 1 , further comprising:

determining a direction of movement associated with the user based at least in part on inertial measurement unit data collected by a inertial measurement unit of the virtual reality or mixed reality system;

determining a collision risk between the user and the physical object based at least in part on a direction of movement of the user, the six degree of freedom pose of the user, and a location of the edge; and

wherein displaying the edge of the physical object within a virtual scene is based at least in part on the collision risk being greater than a threshold.

7. The method as recited in claim 1 , wherein the indicator of the edge within the field of view of the user is a line projected from the edge of the physical object.

8. The method as recited in claim 1 , wherein the indicator is at least one of a ray projecting from the edge or the edge into a field of view of the user.

9. One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform operations comprising:

presenting, on a display of a virtual reality or mixed reality system, a virtual scene to a user;

detecting an edge of a physical object within a physical environment from one or more images captured by a virtual reality or mixed reality system, the physical object excluded from the virtual scene;

determining a six degree of freedom pose associated with a user;

determining, based at least in part on the six degree of freedom pose and an accumulated drift, that the user is within a threshold distance from the physical object; and

displaying the edge of the physical object within a virtual scene being presented to the user.

10. The one or more non-transitory computer-readable media as recited in claim 9 , wherein detecting the edge of the physical object includes:

detecting a first line segment based on a first color gradient within the one or more images;

detecting a second line segment based on a second color gradient within the one or more images;

merging the first line segment to the second line segment into the edge based at least in part on a similarly of the first color gradient to the second color gradient; and

locating the edge within a three-dimensional model of the physical environment.

11. The one or more non-transitory computer-readable media as recited in claim 10 , wherein detecting the edge of the physical object further comprises adjusting location of the edge within the three-dimensional model.

12. The one or more non-transitory computer-readable media as recited in claim 9 , wherein detecting the edge of the physical object includes:

detecting a first edgelet from the one or more images;

detecting a second edgelet from the one or more images;

detecting a continuous gradient between the first edgelet and the second edgelet;

joining the first edgelet with the second edgelet into a joined edgelet based at least in part on the continues gradient;

estimating a contour based at least in part on the joined edgelet; and

determining a surface based at least in part on the contour; and

wherein the edge is an edge of the surface.

13. The one or more non-transitory computer-readable media as recited in claim 9 , wherein the one or more images are captured by a monocular camera.

14. The one or more non-transitory computer-readable media as recited in claim 9 , the operations further comprising:

determining a direction of movement associated with the user based at least in part on inertial measurement unit data collected by a inertial measurement unit of the virtual reality or mixed reality system;

determining a collision risk between the user and the physical object based at least in part on a direction of movement of the user, the six degree of freedom pose of the user, and a location of the edge; and

wherein displaying the edge of the physical object within a virtual scene is based at least in part on the collision risk being greater than a threshold.

15. The one or more non-transitory computer-readable media as recited in claim 9 , wherein displaying the edge of the physical object within a virtual scene includes:

determining a field of view of the user based at least in part on the six degree of freedom pose of the user;

determining the edge is not within the field of view; and

displaying an indicator of the edge within a field of view of the user.

16. A system comprising:

one or more sensors for capturing one or more images of a physical environment;

one or more processors; and

one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

detecting an edge of a physical object within the physical environment within the one or more images, the physical object excluded from the virtual scene;

determining a six degree of freedom pose associated with a user;

determining the user is within a threshold distance from the physical object;

determining a field of view of the user based at least in part on the six degree of freedom pose of the user;

determining the edge is not within the field of view; and

displaying the edge of the physical object within a virtual scene being presented to the user.

17. The method as recited in claim 16 , wherein detecting the edge of the physical object includes:

detecting a first line segment based on a first color gradient within the one or more images;

detecting a second line segment based on a second color gradient within the one or more images;

merging the first line segment to the second line segment into the edge based at least in part on a similarly of the first color gradient to the second color gradient; and

locating the edge within a three-dimensional model of the physical environment.

18. The method as recited in claim 16 , wherein the operations further comprise:

determining a direction of movement associated with the user based at least in part on inertial measurement unit data collected by a inertial measurement unit of the virtual reality or mixed reality system;

determining a collision risk between the user and the physical object based at least in part on a direction of movement of the user, the six degree of freedom pose of the user, and a location of the edge; and

wherein displaying the edge of the physical object within a virtual scene is based at least in part on the collision risk being greater than a threshold.

19. The method as recited in claim 16 , wherein the indicator is at least one of a ray projecting from the edge or the edge into a field of view of the user.

20. The method as recited in claim 16 , wherein the one or more sensors are one or more monocular cameras.

Assignments (2)
SECURITY INTEREST Recorded Apr 21, 2026
From: XRPRO, LLC
To: DANLAW, INC.
Reel/Frame 075436/0662 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2022
From: OCCIPITAL, INC.
To: XRPRO, LLC
Reel/Frame 061682/0359 →
Continuity (5)
Continuation 17073550 · Oct 19, 2020
Division 15994448 · May 31, 2018
Provisional Application 62516183 · Jun 7, 2017
Provisional Application 62512779 · May 31, 2017
Related Publication 20230116849A1 · Apr 13, 2023
References Cited (30)
US 9511711B2 · Petrillo · 2016 [cited by applicant]
US 9613420B2 · Tamaazousti et al. · 2017 [cited by applicant]
US 9824450B2 · Martini · 2017 [cited by applicant]
US 9891049B2 · Brown · 2018 [cited by applicant]
US 10269148B2 · Jones · 2019 [cited by applicant]
US 10388041B2 · Birchfield et al. · 2019 [cited by applicant]
US 10521952B2 · Ackerson et al. · 2019 [cited by applicant]
US 11481024B2 · Powers · 2022 [cited by examiner]
US 20070010938A1 · Kubota · 2007 [cited by examiner]
US 20140139669A1 · Petrillo · 2014 [cited by applicant]
US 20180348854A1 · Powers et al. · 2018 [cited by applicant]
US 20210034144A1 · Powers · 2021 [cited by examiner]
US 20210213877A1 · Petrillo · 2021 [cited by applicant]
Crnokić B, Rezić S, Pehar S. Comparision of Edge Detection Methods for Obstacles Detection in a Mobile Robot Environment. Annals of DAAAM & Proceedings. Jan. 1, 2016;27. [cited by examiner]
Mohareri O, Rad AB. Autonomous humanoid robot navigation using augmented reality technique. In2011 IEEE International Conference on Mechatronics Apr. 13, 2011 (pp. 463-468). IEEE. [cited by examiner]
Lo Valvo A, Croce D, Garlisi D, Giuliano F, Giarre L, Tinnirello I. A navigation and augmented reality system for visually impaired people. Sensors. Apr. 28, 2021;21(9):3061. [cited by examiner]
Alismail, Hatem, “Direct Pose Estimation and Refinement”, Carnegie Mellon Institute, Aug. 2016, 235 pages. [cited by applicant]
Briskin, Gil “Estimating Pose and Motion Using Bundle Adjustment and Digital Elevation Model Constraints”, Master Thesis, Israel Institute of Technology, May 2013, 78 pages. [cited by applicant]
Mur-Artal, R. et al. “ORB-SLAM: A Versatile and Accurate Monocular SLAM System”, IEEE Transactions on Robotics, Aug. 24, 2015, 17 pages. [cited by applicant]
Mur-Artal, et al, “Probabilistic Semi-Dense Mapping from Highly Accurate Feature-Based Monocular SLAM”, InRobotics: Science and Systems, vol. 2015, Jul. 13, 2015, 10 pages. [cited by applicant]
Non Final Office Action dated Jan. 27, 2020 for U.S. Appl. No. 15/994,448 “Six Degree of Freedom Tracking With Scale Recovery and Obstacle Avoidance” Powers, 10 pages. [cited by applicant]
Sibley, Gabe, “Relative Bundle Adjustment”, Department of Engineering Science, Oxford University, Technological Report Jan. 27, 2009, 26 pages. [cited by applicant]
Strasdat, Hauke “Local Accuracy and Global Consistency for Efficient Visual SLAM”, Doctoral Dissertation, Department of Computing, Imperial College London, 213 pages. [cited by applicant]
Marder-Eppstein, E., Berger, E., Foote, T., Gerkey, B. and Konolige, K., May 2010. The office marathon: Robust navigation in an indoor office environment. In 2010 IEEE international conference on robotics and automation… [cited by applicant]
Koschan, Andreas, and Mongi Abidi. “Detection and classification of edges in color images.” IEEE Signal Processing Magazine 22, No. 1 (2005): 64-73. [cited by applicant]
Qasim, M.S., 2016. Autonomous collision avoidance for a teleoperated UAV based on a super-ellipsoidal potential function ( Doctoral dissertation, University of Denver). [cited by applicant]
Wang X, Zhao X, Gnawali 0, Shi W. Enhancing independence for people with low vision to use daily panel-interface machines. In6th International Conference on Mobile Computing, Applications and Services Nov. 6, 2014 (pp. … [cited by applicant]
Grewe L, Overell W. Road following for blindBike: an assistive bike navigation system for low vision persons. InSignal Processing, Sensor/Information Fusion, and Target Recognition XXVI May 2, 2017 (vol. 10200, p. 10200… [cited by applicant]
Rao H, Fu WT. Combining schematic and augmented reality representations in a remote spatial assistance system. InIEEE ISMAR 2013 Workshop on Collaboration in Merging Realities 2013. [cited by applicant]
Chatzopoulos D, Bermejo C, Huang Z, Hui P. Mobile augmented reality survey: From where we are to where we go. Ieee Access. Apr. 26, 2017;5:6917-50. [cited by applicant]
Cited By (1)
US 12,366,914