IP Library Granted Patent US 10,937,192
Granted Patent B2
US 10,937,192 · App. 16/425,656 · Granted Mar 2, 2021

Resolving incorrect distributed simultaneous localization and mapping (SLAM) data in edge cloud architectures

Inventors: Vivek Viswanathan Iyer (Austin, TX); Michael S. Gatson (Austin, TX)
Assignee: Dell Products, L.P.
G06T7/74G01C21/32G02B27/017G06T7/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 10,937,192
App. No.
16/425,656
Granted
Mar 2, 2021
Kind
B2
Abstract

Embodiments of systems and methods for resolving incorrect distributed Simultaneous Localization and Mapping (SLAM) data in edge cloud architectures are described. In some embodiments, a method may include: receiving a first plurality of landmarks usable to produce a first map of a physical space for a first Head-Mounted Device (HMD) and selecting a first set of golden references; receiving, from an Information Handling System (IHS) coupled to a second HMD, a second set of golden references usable to produce a second map of the physical space for the second HMD; determining that a first instance of a given golden reference in the first set of golden references matches a second instance of the given golden reference in the second set of golden references; and in response to the first and second instances of the given golden reference being distant from each other by a threshold, produce a new first map.

Claims (45)

1. An Information Handling System (IHS), comprising:

a processor; and

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

receive Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the SLAM data comprises a first plurality of landmarks usable to produce a first map of a physical space for the first HMD;

select a first set of golden references among the first plurality of landmarks;

select a second HMD over at least one other co-located HMD based upon at least one of: a latency parameter or a computation parameter associated with a second IHS coupled to the second HMD;

receive, from the second IHS, a second set of golden references selected among a second plurality of landmarks usable to produce a second map of the physical space for the second HMD, wherein the second IHS is a co-located IHS, an edge server, or a cloud server;

determine that a first instance of a given golden reference in the first set of golden references matches a second instance of the given golden reference in the second set of golden references; and

in response to the first and second instances of the given golden reference being distant from each other by a threshold value, produce a new first map of the physical space for the first HMD.

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

3. The IHS of claim 1 , wherein to select the first set of golden references, the program instructions, upon execution, cause the IHS to identify one or more IR markers captured in a Region-of-Interest (ROI) overlap between the first and second HMDs.

4. The IHS of claim 1 , wherein to select the first set of golden references, the program instructions, upon execution, cause the IHS to perform an object recognition operation in a Region-of-Interest (ROI) overlap between the first and second HMDs.

5. The IHS of claim 1 , wherein to determine that the first and second instances of the given golden references match, the program instructions, upon execution, further cause the IHS to transform a position of the second instance of the given golden reference into a coordinate system of the first HMD using a pose of the second HMD.

6. A hardware memory having program instructions stored thereon that, upon execution by an Information Handling System (IHS), cause the IHS to:

receive Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the SLAM data comprises a first plurality of landmarks usable to produce a first map of a physical space for the first HMD;

select a first set of golden references among the first plurality of landmarks;

receive, from a second IHS coupled to a second HMD, a second set of golden references selected among a second plurality of landmarks usable to produce a second map of the physical space for the second HMD;

determine that a first instance of a given golden reference in the first set of golden references matches a second instance of the given golden reference in the second set of golden references;

in response to the first and second instances of the given golden reference being separated from each other by a threshold distance, increase a count of incorrect golden references; and

in response to the count of incorrect golden references being greater than a threshold value, produce a new first map of the physical space for the first HMD.

7. The hardware memory of claim 6 , 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 smaller than the first latency requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third latency requirement smaller than the second latency requirement.

8. The hardware memory of claim 6 , 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 greater than the first compute requirement, or wherein the second IHS is a cloud server in response to the first HMD having a third compute requirement greater than the second compute requirement.

9. The hardware memory of claim 6 , 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 smaller than the first speed, or wherein the second IHS is a cloud server in response to the first HMD moving with a third speed smaller than the second speed.

10. The hardware memory of claim 6 , wherein the second IHS is a co-located server in response to the first instance of the given golden reference having moved with a first speed in previous SLAM data, wherein the second IHS is an edge server in response to the first instance of the given golden reference having moved with a second speed smaller than the first speed in previous SLAM data, or wherein the second IHS is a cloud server in response to the first instance of the given golden reference having moved with a third speed smaller than the second speed in the previous SLAM data.

11. The hardware memory of claim 6 , wherein the program instructions, upon execution, further cause the IHS to:

receive, from a third IHS coupled to a third HMD, a third set of golden references selected among a third plurality of landmarks usable to produce a third map of the physical space for the third HMD;

identify a third instance of the given golden reference in the third set of golden references; and

increase the count of incorrect golden references, in part, in response to the first and third instances of the given golden reference being separated from each other by the threshold distance.

12. The hardware memory of claim 11 , wherein the program instructions, upon execution, further cause the IHS to determine, based upon the second and third sets of golden references, a current position of the first HMD.

13. The hardware memory of claim 11 , wherein the program instructions, upon execution, further cause the IHS to:

determine, a difference between: (i) the current position of the first HMD; and (ii) a position of the first HMD as detected by the first HMD; and

compensate the location of newly selected golden landmarks used to produce the new first map of the physical space based on the difference.

14. A method, comprising:

receiving Simultaneous Localization and Mapping (SLAM) data obtained by a first Head-Mounted Device (HMD), wherein the SLAM data comprises a first plurality of landmarks usable to produce a first map of a physical space for the first HMD;

selecting a first set of golden references among the first plurality of landmarks;

receiving, from a second IHS coupled to a second HMD, a second set of golden references selected among a second plurality of landmarks usable to produce a second map of the physical space for the second HMD;

determining that a first instance of a given golden reference in the first set of golden references matches a second instance of the given golden reference in the second set of golden references;

in response to the first and second instances of the given golden reference being separated from each other by a threshold distance, increasing a count of incorrect golden references;

in response to the count of incorrect golden references being greater than a threshold value, producing a new first map of the physical space for the first HMD;

identifying a difference between: (i) a current position of the first HMD, determined based upon the second and third sets of golden references, and (ii) a position of the first HMD as detected by the first HMD; and

compensating the location of newly selected golden landmarks based on the difference.

15. The method of claim 14 , 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.

16. The method of claim 14 , 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.

17. The method of claim 14 , 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.

18. The method of claim 14 , wherein the second IHS is a co-located server in response to the first instance of the given golden reference having moved with a first speed in previous SLAM data, wherein the second IHS is an edge server in response to the first instance of the given golden reference having moved with a second speed in previous SLAM data, or wherein the second IHS is a cloud server in response to the first instance of the given golden reference having moved with a third speed in 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 29, 2019
From: IYER, VIVEK VISWANATHAN; GATSON, MICHAEL S.
To: DELL PRODUCTS, L.P.
Reel/Frame 049311/0070 →