IP Library Granted Patent US 11,043,004
Granted Patent B2
US 11,043,004 · App. 16/419,963 · Granted Jun 22, 2021

Resolving region-of-interest (ROI) overlaps for distributed simultaneous localization and mapping (SLAM) in edge cloud architectures

Inventors: Vivek Viswanathan Iyer (Austin, TX); Michael S. Gatson (Austin, TX)
Assignee: Dell Products, L.P.
G06T7/74G02B27/017G06T7/11G06T7/337G06T17/05G06T2207/30244
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,043,004
App. No.
16/419,963
Granted
Jun 22, 2021
Kind
B2
Abstract

An illustrative, non-limiting method for resolving Region-On-Interest (ROI) overlaps includes receiving Simultaneous Localization and Mapping (SLAM) data obtained by a plurality of co-located Head-Mounted Devices (HMD), where the SLAM data comprises a plurality of landmarks and each HMD has an Information Handling System (IHS) in communication therewith. Each IHS may produce a subset of the plurality of landmarks based upon a respective HMD's SLAM data, and each IHS is: local with respect to the plurality of HMDs, at an edge of a network serving an HMD, or on a cloud. The method may include identifying an overlap between a first landmark produced by a first IHS and a second landmark produced by a second IHS, selecting between the first and second landmarks, at least in part, based upon the locations of the first and second IHSs, and rendering a map for display by a given HMD using the selected landmark.

Claims (34)

1. A first Information Handling System (IHS), comprising:

a processor; and

a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution by the processor, cause the first IHS to:

receive first Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the first SLAM data comprises a first plurality of landmarks;

in response to a determination that a first landmark of the first plurality of landmarks has a first confidence value below a threshold, receive second SLAM data obtained by a second HMD co-located with the first HMD, wherein the second SLAM data comprises a second plurality of landmarks, and wherein the second HMD is selected among a plurality of co-located HMDs, at least in part, based upon a location of a second IHS processing the second SLAM data;

identify an overlap between the first landmark and a second landmark of the second plurality of landmarks; and

in response to a determination that the second landmark has a second confidence value greater than the threshold, and in response to a determination that the second landmark has been generated within a selected time interval of the first landmark, apply a transform matrix to the second landmark to produce a transformed second landmark in a common coordinate system with respect to the first SLAM data, and render at least a partial map for display by the first HMD using the second transformed landmark instead of the first landmark.

2. The first IHS of claim 1 , wherein the first SLAM data comprises landmark data found in a Region of Interest (ROI) within an infrared (IR) or near-IR (NIR) frame captured via a first camera mounted on the first HMD, and wherein the second SLAM data comprises landmark data found in another ROI within another IR or NIR frame captured via a second camera mounted on the second HMD.

3. The first IHS of claim 1 , wherein the first confidence value comprises a first Kalman Gain, and wherein the second confidence value comprises a second Kalman Gain.

4. The first IHS of claim 1 , wherein to identify the overlap, the program instructions, upon execution, further cause the first IHS to determine that the first landmark and the second landmark are separated by a threshold distance.

5. The first IHS of claim 1 , wherein to determine the distance between the first landmark and the second landmark, the program instructions, upon execution, further cause the first IHS to receive at least one of: a first absolute pose of the first HMD or a second absolute pose of the second HMD.

6. The first IHS of claim 5 , wherein the program instructions, upon execution, further cause the first IHS to transform the coordinates of at least one of: the first landmark or the second landmark, into a common coordinate system using at least one of: the first or second absolute poses.

7. The first IHS of claim 1 , wherein the second IHS comprises one of: a co-located server, an edge server, or a cloud server.

8. The first IHS of claim 6 , wherein the second IHS is an edge server in response to the first HMD having a first latency requirement, or wherein the second IHS is a cloud server in response to the first HMD having a second latency requirement.

9. The first IHS of claim 6 , wherein the second IHS is an edge server in response to the first HMD having a first compute requirement, or wherein the second IHS is a cloud server in response to the first HMD having a second compute requirement.

10. The first IHS of claim 6 , wherein the second IHS is an edge server in response to the first HMD moving with a first speed, or wherein the second IHS is a cloud server in response to the first HMD moving with a second speed.

11. The first IHS of claim 6 , wherein the second IHS is an edge server in response to the first landmark having moved with a first speed in previous SLAM data, or wherein the second IHS is a cloud server in response to the first landmark having moved with a second speed in the previous SLAM data.

12. A hardware memory of a Head-Mounted Device (HMD), the hardware memory having program instructions stored thereon that, upon execution by a processor of the HMD, cause the HMD to:

receive first Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the first SLAM data comprises a first plurality of landmarks;

receive second SLAM data obtained by a second HMD co-located with the first HMD, wherein the second SLAM data comprises a second plurality of landmarks, wherein the second HMD is selected among a plurality of co-located HMDs based upon location of a second IHS processing the second SLAM data, and wherein the location is one of: co-located with respect to a first IHS, at a network edge, or on a cloud;

identify an overlap between a first landmark of the first plurality of landmarks and a second landmark of the second plurality of landmarks; and

in response to a determination that the second landmark has a second confidence value greater than a first confidence value of the first landmark, produce a transformed second landmark, and render a map for display by the first HMD using the second transformed landmark.

13. The hardware memory of claim 12 , wherein the second IHS is a co-located server in response to the first HMD having a first latency requirement, wherein the second IHS is an edge server in response to the first HMD having a second latency requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third latency requirement.

14. The hardware memory of claim 12 , wherein the second IHS is a co-located server in response to the first HMD having a first compute requirement, wherein the second IHS is an edge server in response to the first HMD having a second compute requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third compute requirement.

15. The hardware memory of claim 12 , wherein the second IHS is a co-located server in response to the first HMD moving with a first speed, wherein the second IHS is an edge server in response to the first HMD moving with a second speed, or wherein the second IHS is a cloud server in response to the first HMD moving with a third speed.

16. The hardware memory of claim 12 , wherein the second IHS is a co-located server in response to the first landmark having moved with a first speed in previous SLAM data, wherein the second IHS is an edge server in response to the first landmark having moved with a second speed in previous SLAM data, or wherein the second IHS is a cloud server in response to the first landmark having moved with a third speed in the previous SLAM data.

17. A method, comprising:

receiving first Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the first SLAM data comprises a first plurality of landmarks;

receiving second SLAM data obtained by a second HMD co-located with the first HMD, wherein the second SLAM data comprises a second plurality of landmarks, wherein the second HMD is selected among a plurality of co-located HMDs based upon location of a second IHS processing the second SLAM data, and wherein the location is one of: co-located with respect to a first Information Handling System (IHS), at a network edge, or on a cloud;

identifying an overlap between a first landmark of the first plurality of landmarks and a second landmark of the second plurality of landmarks; and

in response to a determination that the second landmark has a second confidence value greater than a first confidence value of the first landmark, producing a transformed second landmark, and rendering a map for display by the first HMD using the second transformed landmark.

18. The method of claim 17 , wherein the second IHS is a co-located server in response to the first HMD having a first latency requirement, wherein the second IHS is an edge server in response to the first HMD having a second latency requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third latency requirement.

19. The method of claim 17 , wherein the second IHS is a co-located server in response to the first HMD having a first compute requirement, wherein the second IHS is an edge server in response to the first HMD having a second compute requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third compute requirement.

20. The method of claim 17 , wherein the second IHS is a co-located server in response to the first HMD moving with a first speed, wherein the second IHS is an edge server in response to the first HMD moving with a second speed, wherein the second IHS is a cloud server in response to the first HMD moving with a third speed, wherein the second IHS is a co-located server in response to the first landmark having moved with a first speed in previous SLAM data, wherein the second IHS is an edge server in response to the first landmark having moved with a second speed in previous SLAM data, or wherein the second IHS is a cloud server in response to the first landmark having moved with a third speed in the previous SLAM data.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2019
From: IYER, VIVEK VISWANATHAN; GATSON, MICHAEL S.
To: DELL PRODUCTS, L.P.
Reel/Frame 049259/0226 →