IP Library Granted Patent US 12,436,288
Granted Patent B2
US 12,436,288 · App. 17/737,250 · Granted Oct 7, 2025

Generating environmental map by aligning captured scans

Inventors: Oliver Zweigle (Stuttgart, DE); Mark Brenner (Asperg, DE); Aleksej Frank (Kornwestheim, DE); Ahmad Ramadneh (Kornwestheim, DE)
Assignee: FARO Technologies, Inc.
G01S17/89G01S7/484G06V10/7715
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,436,288
App. No.
17/737,250
Filed
May 5, 2022
Granted
Oct 7, 2025
Kind
B2
Art Unit
2682
USPC
382/294
Abstract

A method for performing a simultaneous location and mapping of a scanner device in a surrounding environment includes capturing a scan-data of a portion of a map of the surrounding environment. The scan-data comprises a point cloud. Further, at runtime, a user-interface is used to make, a selection of a feature from the scan-data, and a selection of a submap that was previously captured. The submap includes the same feature. The method further includes determining a first scan position as a present position of the scanner device, and determining a second scan position as a position of the scanner device. The method further includes determining a displacement vector for the map based on the first and the second scan positions. Further, a revised first scan position is computed based on the second scan position and the displacement vector. The scan-data is registered using the revised first scan position.

Claims (46)

1. A system comprising:

a scanner device configured to capture scan-data of a surrounding environment; and

one or more processors operably coupled to the scanner device, wherein the one or more processors are operable to perform simultaneous locating and mapping of the scanner device in the surrounding environment, which comprises:

capturing the scan-data of a portion of a map of the surrounding environment, wherein the scan-data comprises a point cloud;

receiving, at runtime, via a user-interface, a selection of a feature from the scan-data, and a selection of a submap that was previously captured, wherein the submap includes the same feature;

determining a first scan position as a present position of the scanner device, and determine a second scan position as a position of the scanner device;

determining a displacement vector for the map based on a difference between the first scan position and the second scan position;

computing a revised first scan position based on the second scan position and the displacement vector; and

registering the scan-data using the revised first scan position.

2. The system of claim 1 , the one or more processors are operable to assign a unique identifier to the feature.

3. The system of claim 1 , wherein the feature comprises a semantic feature in the map.

4. The system of claim 1 , wherein the feature comprises a predetermined area in the map.

5. The system of claim 1 , wherein the one or more processors are configured to provide, via the user-interface, an identification of one or more features in the scan-data.

6. The system of claim 1 , wherein the one or more processors are configured to provide, via the user-interface, a list of submaps that include the feature that is selected.

7. The system of claim 1 , wherein the scanner device is equipped on a movable platform.

8. The system of claim 1 , wherein the one or more processors are further operable to:

determine a constraint by computing a relationship between a first measurement and a second measurement of the feature, the first measurement captured from the first scan position, and the second measurement captured from a third scan position; and

perform the simultaneous locating and mapping by using the constraint.

9. A method for performing a simultaneous location and mapping of a scanner device in a surrounding environment, the method comprising:

capturing a scan-data of a portion of a map of the surrounding environment, wherein the scan-data comprises a point cloud;

receiving, at runtime, via a user-interface, a selection of a feature from the scan-data, and a selection of a submap that was previously captured, wherein the submap includes the same feature;

determining a first scan position as a present position of the scanner device, and determining a second scan position as a position of the scanner device;

determining a displacement vector for the map based on a difference between the first scan position and the second scan position;

computing a revised first scan position based on the second scan position and the displacement vector; and

registering the scan-data using the revised first scan position.

10. The method of claim 9 , the method further comprises assigning a unique identifier to the feature.

11. The method of claim 9 , wherein the feature comprises a semantic feature in the map.

12. The method of claim 9 , wherein the feature comprises a predetermined area in the map.

13. The method of claim 9 , wherein the method further comprises providing, via the user-interface, an identification of one or more features in the scan-data.

14. The method of claim 9 , wherein the method further comprises providing, via the user-interface, a list of submaps that include the feature that is selected.

15. The method of claim 9 , wherein the scanner device is equipped on a movable platform.

16. The method of claim 9 , wherein the method further comprises:

determining a constraint by computing a relationship between a first measurement and a second measurement of the feature, the first measurement captured from the first scan position, and the second measurement captured from a third scan position; and

performing the simultaneous locating and mapping by using the constraint.

17. A non-transitory computer-readable medium having program instructions embodied therewith, the program instructions readable by a processor to cause the processor to perform a method performing a simultaneous location and mapping of a scanner device in a surrounding environment, the method comprising:

capturing a scan-data of a portion of a map of the surrounding environment, wherein the scan-data comprises a point cloud;

receiving, at runtime, via a user-interface, a selection of a feature from the scan-data, and a selection of a submap that was previously captured, wherein the submap includes the same feature;

determining a first scan position as a present position of the scanner device, and determine a second scan position as a position of the scanner device;

determining a displacement vector for the map based on a difference between the first scan position and the second scan position;

computing a revised first scan position based on the second scan position and the displacement vector; and

registering the scan-data using the revised first scan position.

18. The computer-readable medium of claim 17 , wherein the method further comprises providing, via the user-interface, an identification of one or more features in the scan-data.

19. The computer-readable medium of claim 17 , wherein the method further comprises providing, via the user-interface, a list of submaps that include the feature that is selected.

20. The computer-readable medium of claim 17 , wherein the method further comprises:

determining a constraint by computing a relationship between a first measurement and a second measurement of the feature, the first measurement captured from the first scan position, and the second measurement captured from a third scan position; and

performing the simultaneous locating and mapping by using the constraint.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2025
From: ZWEIGLE, OLIVER; BRENNER, MARK; FRANK, ALEKSEJ; RAMADNEH, AHMAD
To: FARO TECHNOLOGIES, INC.
Reel/Frame 072213/0494 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2025
From: ZWEIGLE, OLIVER; BRENNER, MARK
To: FARO TECHNOLOGIES, INC.
Reel/Frame 071832/0957 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2022
From: ZWEIGLE, OLIVER; BRENNER, MARK; FRANK, ALEKSEJ; RAMADNEH, AHMAD
To: FARO TECHNOLOGIES, INC.
Reel/Frame 059888/0294 →
Continuity (2)
Provisional Application 63187467 · May 12, 2021
Related Publication 20220365217A1 · Nov 17, 2022
References Cited (28)
US 10019677B2 · Gill · 2018 [cited by examiner]
US 10445913B2 · Santos et al. · 2019 [cited by applicant]
US 10819883B2 · Zweigle et al. · 2020 [cited by applicant]
US 10824773B2 · Santos et al. · 2020 [cited by applicant]
US 10891769B2 · Santos et al. · 2021 [cited by applicant]
US 10989532B2 · Buback et al. · 2021 [cited by applicant]
US 11086015B2 · Pompe et al. · 2021 [cited by applicant]
US 11274929B1 · Afrouzi · 2022 [cited by examiner]
US 20030137449A1 · Vashisth et al. · 2003 [cited by applicant]
US 20110123135A1 · Hsieh et al. · 2011 [cited by applicant]
US 20120069352A1 · Ossig et al. · 2012 [cited by applicant]
US 20180204338A1 · Narang · 2018 [cited by examiner]
US 20210073692A1 · Saha · 2021 [cited by examiner]
US 20210136350A1 · Zweigle et al. · 2021 [cited by applicant]
US 20210141061A1 · Zweigle et al. · 2021 [cited by applicant]
US 20210183081A1 · Wohlfeld et al. · 2021 [cited by applicant]
US 20210232800A1 · Wohlfeld et al. · 2021 [cited by applicant]
US 20210373165A1 · Brenner et al. · 2021 [cited by applicant]
US 20210373167A1 · Buback et al. · 2021 [cited by applicant]
US 20210374978A1 · Döring et al. · 2021 [cited by applicant]
US 20220046221A1 · Brenner et al. · 2022 [cited by applicant]
US 20220051422A1 · Parian · 2022 [cited by applicant]
US 20220057518A1 · Brenner et al. · 2022 [cited by applicant]
US 20220137223A1 · Brenner et al. · 2022 [cited by applicant]
US 20220182853A1 · Nagalla et al. · 2022 [cited by applicant]
US 20220207759A1 · Parian · 2022 [cited by applicant]
US 20220318540A1 · Wohlfeld et al. · 2022 [cited by applicant]
European Search Report; Issued: Oct. 10, 2022; Application No. 22172252.3, Filed: May 9, 2022; 12 pages. [cited by applicant]