IP Library Granted Patent US 11,686,941
Granted Patent B2
US 11,686,941 · App. 16/875,499 · Granted Jun 27, 2023

Methods and apparatuses for corner detection using neural network and corner detector

Inventors: Anush Mohan (San Jose, CA); Guy Rosenthal (Tel Aviv, IL); Adi Perry (Tel Aviv, IL); Gilboa Sheveki (Shoham, IL)
Assignee: Magic Leap, Inc.
G02B27/017G06F18/214G06N3/08G06T3/0093G06T7/13G06V10/25G06V10/44G06V10/454G06V10/764G06V10/7753G06V10/82G06V20/20G02B2027/014G02B2027/0138
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,686,941
App. No.
16/875,499
Granted
Jun 27, 2023
Kind
B2
Abstract

An apparatus configured to be head-worn by a user, includes: a screen configured to present graphics for the user; a camera system configured to view an environment in which the user is located; and a processing unit coupled to the camera system, the processing unit configured to: obtain locations of features for an image of the environment, wherein the locations of the features are identified by a neural network; determine a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image; and perform a corner detection using a corner detection algorithm to identify a corner in the region of interest.

Claims (89)

1. An apparatus configured to be head-worn by a user, comprising:

a screen configured to present graphics for the user;

a camera system configured to view an environment in which the user is located; and

a processing unit coupled to the camera system, the processing unit configured to:

obtain locations of features for image data associated with the environment, wherein the locations of the features are identified by a neural network;

determine a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image; and

perform a corner detection using a corner detection algorithm to identify a corner in the region of interest,

wherein the image data includes at least one low resolution image that is reduced in resolution from at least one high resolution image generated by the camera system.

2. The apparatus of claim 1 , wherein the processing unit is configured to determine the region of interest as having a position that is based on at least one of the locations identified by the neural network, and wherein the position is with respect to the image.

3. The apparatus of claim 1 , wherein the image data is associated with at least one image that is generated by the camera system and transmitted to the neural network.

4. The apparatus of claim 1 , wherein the neural network is in a module of the apparatus.

5. The apparatus of claim 1 , wherein the neural network is implemented in one or more computing devices that are remote from the apparatus.

6. The apparatus of claim 1 , wherein the neural network has machine learning capability.

7. The apparatus of claim 1 , wherein the processing unit is configured to obtain the locations of the features by obtaining a heatmap generated by the neural network, the heatmap indicating the locations of the features.

8. The apparatus of claim 1 , wherein the region of interest comprises a N×N patch, and the processing unit is configured to perform the corner detection on the N×N patch, and wherein N is an integer larger than 1.

9. The apparatus of claim 1 , wherein the region of interest comprises a patch having 144 pixels or less, and the processing unit is configured to perform the corner detection on the patch.

10. The apparatus of claim 1 , wherein the region of interest comprises a 8×8 patch, and the processing unit is configured to perform the corner detection on the 8×8 patch.

11. The apparatus of claim 1 , wherein the processing unit is also configured to convert the image with the first resolution to the other image with the second resolution.

12. The apparatus of claim 1 , wherein the first resolution comprises a VGA resolution.

13. The apparatus of claim 1 , wherein the second resolution comprises a QVGA resolution.

14. The apparatus of claim 1 , further comprising the neural network.

15. The apparatus of claim 14 , wherein the neural network has been trained using a reference dataset.

16. The apparatus of claim 14 , wherein the neural network comprises a convolutional neural network.

17. The apparatus of claim 14 , wherein the neural network is configured to compute interest point locations and descriptors.

18. The apparatus of claim 14 , wherein the neural network comprises an encoder configured to down sample an input image spatially.

19. The apparatus of claim 18 , wherein the neural network also comprises:

an interest point decoder configured to operate on an encoder output from the encoder, and produce a score for each pixel in the input image; and

a descriptor decoder configured to operate on the encoder output, upsample the encoder output to a higher resolution, and produce a vector for each pixel in the input image.

20. The apparatus of claim 14 , wherein the neural network is configured to use homographic adaptation for improving geometric consistency of an interest point detector.

21. The apparatus of claim 20 , wherein the neural network comprises a convolutional neural network configured to train the interest point detector.

22. The apparatus of claim 20 , wherein the neural network is configured to perform image warping to create one or more warped images in the homographic adaptation.

23. The apparatus of claim 1 , wherein the neural network is a part of the processing unit.

24. The apparatus of claim 1 , further comprising the neural network, the neural network being communicatively coupled to the processing unit.

25. An apparatus configured to be head-worn by a user, comprising:

a screen configured to present graphics for the user;

a camera system configured to view an environment in which the user is located; and

a processing unit coupled to the camera system, the processing unit configured to:

obtain locations of features for image data associated with the environment, wherein the locations of the features are identified by a neural network;

determine a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image; and

perform a corner detection using a corner detection algorithm to identify a corner in the region of interest,

wherein the processing unit is configured to determine a position of the corner in the image based at least in part on a position of the corner in the region of interest.

26. An apparatus configured to be head-worn by a user, comprising:

a screen configured to present graphics for the user;

a camera system configured to view an environment in which the user is located; and

a processing unit coupled to the camera system, the processing unit configured to:

obtain locations of features for image data associated with the environment, wherein the locations of the features are identified by a neural network;

determine a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image; and

perform a corner detection using a corner detection algorithm to identify a corner in the region of interest,

wherein the processing unit is configured to determine a score for each pixel in the region of interest.

27. A method performed by a head-worn image display device, comprising:

obtaining locations of features in an image, wherein the locations of the features are identified by a neural network;

determining a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image; and

performing a corner detection using a corner detection algorithm to identify a corner in the region of interest,

wherein the image has a first resolution, and wherein the locations of the features are identified by the neural network based on another image having a second resolution that is less than the first resolution.

28. The method of claim 27 , wherein the region of interest is determined as having a position that is based on at least one of the locations identified by the neural network, and wherein the position is with respect to the image.

29. The method of claim 27 , further comprising

generating the image; and

transmitting the image to the neural network.

30. The method of claim 27 , wherein the neural network is in a module of the head-worn image display device.

31. The method of claim 27 , wherein the neural network is implemented in one or more computing devices that are remote from the head-worn image display device.

32. The method of claim 27 , wherein the neural network has machine learning capability.

33. The method of claim 27 , wherein the locations of the features are obtained by receiving a heatmap from the neural network, wherein the heatmap indicates the locations of the features.

34. The method of claim 27 , wherein the region of interest comprises a N×N patch, and the corner detection is performed on the N×N patch, and wherein N is an integer larger than 1.

35. The method of claim 27 , wherein the region of interest comprises a patch having 144 pixels or less, and the corner detection is performed on the patch.

36. The method of claim 27 , wherein the region of interest comprises a 8×8 patch, and the corner detection is performed on the 8×8 patch.

37. The method of claim 27 , further comprising converting the image with the first resolution to the other image with the second resolution.

38. The method of claim 27 , wherein the first resolution comprises a VGA resolution.

39. The method of claim 29 , wherein the second resolution comprises a QVGA resolution.

40. The method of claim 27 , further comprising the neural network.

41. The method of claim 40 , wherein the neural network has been trained using a reference dataset.

42. The method of claim 40 , wherein the neural network comprises a convolutional neural network.

43. The method of claim 40 , wherein the neural network is configured to compute interest point locations and descriptors.

44. The method of claim 40 , wherein the neural network comprises an encoder configured to down sample an input image spatially.

45. The method of claim 44 , wherein the neural network also comprises:

an interest point decoder configured to operate on an encoder output from the encoder, and produce a score for each pixel in the input image; and

a descriptor decoder configured to operate on the encoder output, upsample the encoder output to a higher resolution, and produce a vector for each pixel in the input image.

46. The method of claim 40 , wherein the neural network is configured to use homographic adaptation for improving geometric consistency of an interest point detector.

47. The method of claim 46 , wherein the neural network comprises a convolutional neural network, and wherein the interest point detector is trained with the convolutional neural network.

48. The method of claim 46 , wherein the neural network is configured to perform image warping to create one or more warped images in the homographic adaptation.

49. A method performed by a head-worn image display device, comprising:

obtaining locations of features in an image, wherein the locations of the features are identified by a neural network;

determining a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image;

performing a corner detection using a corner detection algorithm to identify a corner in the region of interest; and

determining a position of the corner in the image based at least in part on a position of the corner in the region of interest.

50. A method performed by a head-worn image display device, comprising:

obtaining locations of features in an image, wherein the locations of the features are identified by a neural network;

determining a region of interest for one of the features in the image, the region of interest having a size that is less than a size of the image;

performing a corner detection using a corner detection algorithm to identify a corner in the region of interest; and

determining a score for each pixel in the region of interest.

Assignments (4)
SECURITY INTEREST Recorded Oct 15, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073109/0238 →
SECURITY INTEREST Recorded May 24, 2022
From: MOLECULAR IMPRINTS, INC.; MENTOR ACQUISITION ONE, LLC; MAGIC LEAP, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 060338/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2021
From: MOHAN, ANUSH; ROSENTHAL, GUY; PERRY, ADI; SHEVEKI, GILBOA
To: MAGIC LEAP, INC.
Reel/Frame 058066/0291 →
SECURITY INTEREST Recorded May 21, 2020
From: MAGIC LEAP, INC.; MOLECULAR IMPRINTS, INC.; MENTOR ACQUISITION ONE, LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 052729/0791 →
Continuity (2)
Provisional Application 62849386 · May 17, 2019
Related Publication 20200364876A1 · Nov 19, 2020
Cited By (1)
US 12,632,967