Title:
VERWENDUNG EINES ZWEIDIMENSIONALEN SCANNERS ZUM BESCHLEUNIGEN DER REGISTRIERUNG VON DREIDIMENSIONALEN SCAN-DATEN
Kind Code:
A1


Abstract:

Ein Verfahren und System zum Erzeugen einer dreidimensionalen (3D) Karte einer Umgebung werden bereitgestellt. Ein beispielhaftes Verfahren umfasst das Empfangen eines 3D-Scans der Umgebung durch ein Prozessorsystem über einen 3D-Scanner, der an einer Scanposition angeordnet ist. Das Verfahren umfasst weiter das Empfangen eines Teils einer 2D-Karte der Umgebung durch das Prozessorsystem über ein zweidimensionales (2D) Scanner-Zusatzgerät. Das Verfahren umfasst weiter das Empfangen von Koordinaten der Scanposition in der 2D-Karte als Reaktion auf den Beginn der Erfassung des 3D-Scans durch den 3D-Scanner. Das Verfahren umfasst weiter das Zuordnen der Koordinaten der Scanposition zu dem Teil der 2D-Karte. Das Verfahren umfasst weiter das Bestimmen eines Verschiebungsvektors für die 2D-Karte unter Verwendung eines Regelschleifen-Algorithmus. Das Verfahren umfasst weiter das Berechnen einer revidierten Scanposition basierend auf der Scanposition und dem Verschiebungsvektor, wobei der 3D-Scan unter Verwendung der revidierten Scanposition registriert wird.




Inventors:
Frank, Aleksej (70178, Stuttgart, DE)
Zweigle, Oliver (70374, Stuttgart, DE)
Application Number:
DE102017214377A
Publication Date:
02/22/2018
Filing Date:
08/17/2017
Assignee:
Faro Technologies, Inc. (Fla., Lake Mary, US)
International Classes:



Foreign References:
87050162014-04-22
87050122014-04-22
Other References:
IEEE 802.11
Censi, A., ”An ICP variant using a point-to-line metric”, IEEE International Conference on Robotics and Automation (ICRA) 2008
Attorney, Agent or Firm:
Novagraaf Brevets, Asnières-sur-Seine, FR
Claims:
1. Dreidimensionale (3D) Messvorrichtung mit:
einem Prozessorsystem, umfassend mindestens eines von einem 3D-Scanner-Controller und einem zweidimensionalen (2D) Scanner-Prozessor;
einen 3D-Scanner, der betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 3D-Koordinaten zu ermitteln;
eine 2D-Scanner-Zusatzeinrichtung, umfassend einen 2D-Scanner, der betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 3D-Koordinaten zu bestimmen;
eine bewegliche Plattform, die zum Tragen des 3D-Scanners und des 2D-Scanners betreibbar ist, wobei der 3D-Scanner relativ zum 2D-Scanner fixiert ist;
wobei das Prozessorsystem auf ausführbare Anweisungen reagiert, die bei Ausführung durch das Prozessorsystem betreibbar sind, um:
den an einer Scanposition fixierten 3D-Scanner zu veranlassen, mit dem Prozessorsystem zusammenzuwirken, um einen 3D-Scan einer Umgebung zu erfassen;
den 2D-Scanner zum Zusammenwirken mit dem Prozessorsystem zu veranlassen, um einen Teil einer 2D-Karte der Umgebung zu erfassen;
den 2D-Scanner zu veranlassen, als Reaktion auf den Beginn der Erfassung des 3D-Scans durch den 3D-Scanner Koordinaten der Scanposition in der 2D-Map zu bestimmen;
die Koordinaten der Scanposition mit dem Teil der 2D-Karte zu verknüpfen;
einen Verschiebungsvektor für die 2D-Karte unter Verwendung eines Regelschleifen-Algorithmus zu bestimmen;
eine revidierte Scanposition basierend auf der Scanposition und dem Verschiebungsvektor zu berechnen; und
den 3D-Scan unter Verwendung der revidierten Scanposition zu registrieren.

2. 3D-Messvorrichtung nach Anspruch 1, wobei das 2D-Scanner-Zusatzgerät weiter einen Positions-/Orientierungssensor umfasst, wobei der Positions-/Orientierungssensor mindestens einen Sensor umfasst, ausgewählt aus der Gruppe bestehend aus einem Neigungsmesser, einem Gyroskop, einem Magnetometer und einem Höhenmesser.

3. 3D-Messvorrichtung nach Anspruch 1, wobei die bewegliche Plattform ein Stativ mit Rädern und einer Bremse ist.

4. 3D-Messvorrichtung nach Anspruch 1, wobei der 3D-Scanner eine erste Lichtquelle, eine erste Strahllenkeinheit, eine erste Winkelmessvorrichtung, eine zweite Winkelmessvorrichtung und einen ersten Lichtempfänger umfasst, wobei die erste Lichtquelle betreibbar ist, um einen ersten Lichtstrahl zu emittieren, wobei die erste Strahllenkeinheit betreibbar ist, um den ersten Lichtstrahl in einer ersten Richtung auf einen ersten Objektpunkt zu lenken, wobei die erste Richtung durch einen ersten Drehwinkel um eine erste Achse und einen zweiten Drehwinkel um eine zweite Achse bestimmt wird, wobei die erste Winkelmessvorrichtung betreibbar ist, um den ersten Drehwinkel zu messen, und wobei die zweite Winkelmessvorrichtung betreibbar ist, um den zweiten Drehwinkel zu messen, wobei der erste Lichtempfänger betreibbar ist, um erstes reflektiertes Licht zu empfangen, wobei das erste reflektierte Licht ein Teil des vom ersten Objektpunkt reflektierten ersten Lichtstrahls ist, wobei der erste Lichtempfänger betreibbar ist, um ein erstes elektrisches Signal als Reaktion auf das erste reflektierte Licht zu erzeugen, wobei der erste Lichtempfänger betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um einen ersten Abstand zum ersten Objektpunkt basierend zumindest teilweise auf dem ersten elektrischen Signal zu bestimmen, wobei der 3D-Scanner betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 3D-Koordinaten des ersten Objektpunktes zumindest teilweise basierend auf dem ersten Abstand, dem ersten Drehwinkel und dem zweiten Drehwinkel zu bestimmen.

5. 3D-Messvorrichtung nach Anspruch 4, wobei der 2D-Scanner eine zweite Lichtquelle, eine zweite Strahllenkeinheit, eine dritte Winkelmessvorrichtung und einen zweiten Lichtempfänger umfasst, wobei die zweite Lichtquelle betreibbar ist, um einen zweiten Lichtstrahl zu emittieren, wobei die zweite Strahllenkeinheit betreibbar ist, um den zweiten Lichtstrahl in einer zweiten Richtung auf einen zweiten Objektpunkt zu lenken, wobei die zweite Richtung durch einen dritten Drehwinkel um eine dritte Achse bestimmt wird, wobei die dritte Winkelmessvorrichtung betreibbar ist, um den dritten Drehwinkel zu messen, wobei der zweite Lichtempfänger betreibbar ist, um zweites reflektiertes Licht zu empfangen, wobei das zweite reflektierte Licht ein Teil des vom zweiten Objektpunkt reflektierten zweiten Lichtstrahls ist, wobei der zweite Lichtempfänger betreibbar ist, um ein zweites elektrisches Signal als Reaktion auf das zweite reflektierte Licht zu erzeugen, wobei der 2D-Scanner betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um einen zweiten Abstand zum zweiten Objektpunkt basierend zumindest teilweise auf dem zweiten elektrischen Signal zu bestimmen, wobei der 2D-Scanner weiter betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 2D-Koordinaten des zweiten Objektpunkts zumindest teilweise basierend auf dem zweiten Abstand und dem dritten Drehwinkel zu bestimmen.

6. 3D-Messvorrichtung nach Anspruch 4, wobei die erste Strahllenkeinheit einen ersten Spiegel aufweist, der betreibbar ist, um sich um eine horizontale Achse zu drehen, und einen Schlitten, der den ersten Spiegel trägt und der betreibbar ist, um sich um eine vertikale Achse zu drehen, wobei die Drehung um die horizontale Achse durch einen ersten Motor und die Drehung um die vertikale Achse durch einen zweiten Motor angetrieben werden.

7. 3D-Messvorrichtung nach Anspruch 1, wobei der Regelschleifen-Algorithmus den Verschiebungsvektor bestimmt, der einen Fehler beim Schätzen der Koordinaten der Scanposition wiedergibt.

8. Verfahren zum Erzeugen einer dreidimensionalen (3D) Karte einer Umgebung, wobei das Verfahren umfasst:
Empfangen eines 3D-Scans der Umgebung durch ein Prozessorsystem über einen 3D-Scanner, der an einer Scanposition fest angeordnet ist;
Empfangen eines Teils einer 2D-Karte der Umgebung durch das Prozessorsystem über ein zweidimensionales (2D) Scanner-Zusatzgerät;
Empfangen von Koordinaten der Scanposition in der 2D-Karte durch das Prozessorsystem als Reaktion auf den Beginn der Erfassung des 3D-Scans durch den 3D-Scanner;
Zuordnen der Koordinaten der Scanposition zum Teil der 2D-Map durch das Prozessorsystem;
Bestimmen eines Verschiebungsvektors für die 2D-Karte unter Verwendung eines Regelschleifen-Algorithmus durch das Prozessorsystem;
Berechnen einer revidierten Scanposition basierend auf der Scanposition und dem Verschiebungsvektor durch das Prozessorsystem, wobei der 3D-Scan unter Verwendung der revidierten Scanposition registriert wird.

9. Verfahren nach Anspruch 8, wobei das 2D-Scanner-Zusatzgerät weiter einen Positions-/Orientierungssensor umfasst, wobei der Positions-/Orientierungssensor mindestens einen Sensor umfasst, ausgewählt aus der Gruppe bestehend aus einem Neigungsmesser, einem Gyroskop, einem Magnetometer und einem Höhenmesser.

10. Verfahren nach Anspruch 8, weiter umfassend das Anbringen des 3D-Scanners und des 2D-Scanner-Zusatzgeräts auf einer beweglichen Plattform, wobei die bewegliche Plattform ein Stativ mit Rädern und einer Bremse ist.

11. Verfahren nach Anspruch 8, wobei der 3D-Scanner eine erste Lichtquelle, eine erste Strahllenkeinheit, eine erste Winkelmessvorrichtung, eine zweite Winkelmessvorrichtung und einen ersten Lichtempfänger umfasst, wobei die erste Lichtquelle betreibbar ist, um einen ersten Lichtstrahl zu emittieren, wobei die erste Strahllenkeinheit betreibbar ist, um den ersten Lichtstrahl in einer ersten Richtung auf einen ersten Objektpunkt zu lenken, wobei die erste Richtung durch einen ersten Drehwinkel um eine erste Achse und einen zweiten Drehwinkel um eine zweite Achse bestimmt wird, wobei die erste Winkelmessvorrichtung betreibbar ist, um den ersten Drehwinkel zu messen, und wobei die zweite Winkelmessvorrichtung betreibbar ist, um den zweiten Drehwinkel zu messen, wobei der erste Lichtempfänger betreibbar ist, um erstes reflektiertes Licht zu empfangen, wobei das erste reflektierte Licht ein Teil des vom ersten Objektpunkt reflektierten ersten Lichtstrahls ist, wobei der erste Lichtempfänger betreibbar ist, um ein erstes elektrisches Signal als Reaktion auf das erste reflektierte Licht zu erzeugen, wobei der erste Lichtempfänger betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um einen ersten Abstand zum ersten Objektpunkt basierend zumindest teilweise auf dem ersten elektrischen Signal zu bestimmen, wobei der 3D-Scanner betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 3D-Koordinaten des ersten Objektpunktes zumindest teilweise basierend auf dem ersten Abstand, dem ersten Drehwinkel und dem zweiten Drehwinkel zu bestimmen.

12. Verfahren nach Anspruch 11, wobei der 2D-Scanner eine zweite Lichtquelle, eine zweite Strahllenkeinheit, eine dritte Winkelmessvorrichtung und einen zweiten Lichtempfänger umfasst, wobei die zweite Lichtquelle betreibbar ist, um einen zweiten Lichtstrahl zu emittieren, wobei die zweite Strahllenkeinheit betreibbar ist, um den zweiten Lichtstrahl in einer zweiten Richtung auf einen zweiten Objektpunkt zu lenken, wobei die zweite Richtung durch einen dritten Drehwinkel um eine dritte Achse bestimmt wird, wobei die dritte Winkelmessvorrichtung betreibbar ist, um den dritten Drehwinkel zu messen, wobei der zweite Lichtempfänger betreibbar ist, um zweites reflektiertes Licht zu empfangen, wobei das zweite reflektierte Licht ein Teil des vom zweiten Objektpunkt reflektierten zweiten Lichtstrahls ist, wobei der zweite Lichtempfänger betreibbar ist, um ein zweites elektrisches Signal als Reaktion auf das zweite reflektierte Licht zu erzeugen, wobei der 2D-Scanner betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um einen zweiten Abstand zum zweiten Objektpunkt basierend zumindest teilweise auf dem zweiten elektrischen Signal zu bestimmen, wobei der 2D-Scanner weiter betreibbar ist, um mit dem Prozessorsystem zusammenzuwirken, um 2D-Koordinaten des zweiten Objektpunkts zumindest teilweise basierend auf dem zweiten Abstand und dem dritten Drehwinkel zu bestimmen.

13. Verfahren nach Anspruch 11, wobei die erste Strahllenkeinheit einen ersten Spiegel umfasst, der betreibbar ist, um sich um eine horizontale Achse zu drehen, und einen Schlitten, der den ersten Spiegel trägt und der betreibbar ist, um sich um eine vertikale Achse zu drehen, wobei die Drehung um die horizontale Achse durch einen ersten Motor und die Drehung um die vertikale Achse durch einen zweiten Motor angetrieben werden.

14. Verfahren nach Anspruch 8, wobei der Regelschleifen-Algorithmus den Verschiebungsvektor bestimmt, der einen Fehler beim Schätzen der Koordinaten der Scanposition wiedergibt.

Description:
QUERVERWEIS AUF VERWANDTE ANMELDUNGEN

Diese Anmeldung beansprucht das Prioritätsrecht der provisorischen US-Anmeldung Seriennr. 62/377318, eingereicht am 19. August 2016, deren gesamte Offenbarung durch Verweis hierin übernommen wird.

HINTERGRUND

Der hierin offenbarte Gegenstand betrifft die Verwendung einer 3D-Laserscanner-Laufzeit-(TOF)-Koordinaten-Messeinrichtung. Ein 3D-Laserscanner dieses Typs steuert einen Lichtstrahl zu einem nicht-kooperativen Ziel wie einer diffus streuenden Oberfläche eines Objekts. Ein Entfernungsmesser im Gerät misst eine Distanz zum Objekt, und Winkel-Encoder messen die Drehwinkel der beiden Achsen im Gerät. Die gemessene Distanz und die beiden Winkel ermöglichen einem Prozessor im Gerät die Bestimmung der 3D-Koordinaten des Ziels.

Ein TOF-Laserscanner ist ein Scanner, bei dem der Abstand zu einem Zielpunkt auf der Grundlage der Lichtgeschwindigkeit in Luft zwischen dem Scanner und einem Zielpunkt bestimmt wird. Laserscanner werden typischerweise zum Scannen von geschlossenen oder offenen Räumen wie Innenbereichen von Gebäuden, Industrieanlagen und Tunneln eingesetzt. Sie können z. B. in industriellen Anwendungen und bei Unfallrekonstruktionen eingesetzt werden. Ein Laserscanner scannt und misst Objekte in einem Volumen um den Scanner optisch durch die Erfassung von Datenpunkten, die Objektoberflächen innerhalb des Volumens darstellen. Derartige Datenpunkte werden durch Übertragen eines Lichtstrahls auf die Objekte und Erfassen des reflektierten oder gestreuten Lichts erhalten, um den Abstand, zwei Winkel (d. h. einen Azimut- und einen Zenitwinkel) und wahlfrei einen Grauwert zu bestimmen. Diese Roh-Scandaten werden gesammelt, gespeichert und an einen Prozessor oder Prozessoren gesendet, um ein 3D-Bild zu erzeugen, das den gescannten Bereich oder das Objekt darstellt.

Das Erzeugen eines Bildes erfordert mindestens drei Werte für jeden Datenpunkt. Diese drei Werte können den Abstand und zwei Winkel einschließen, oder es können transformierte Werte sein, wie z. B. die x-, y-, z-Koordinaten. Bei einer Ausführungsform basiert ein Bild auch auf einem vierten Grauwert, der ein Wert ist, der mit der Ausstrahlung von zum Scanner zurückgeleiteten Streulicht in Verbindung.

Die meisten TOF-Scanner leiten den Lichtstrahl innerhalb des Messvolumens, indem sie das Licht mit einem Strahllenkmechanismus lenken. Der Strahllenkmechanismus enthält einen ersten Motor, der den Lichtstrahl in einem ersten Winkel um eine erste Achse lenkt, der durch einen ersten Winkel-Encoder (oder einen anderen Winkelwandler) gemessen wird. Der Strahllenkmechanismus schließt auch einen zweiten Motor ein, der den Lichtstrahl in einem zweiten Winkel um eine zweite Achse lenkt, der durch einen zweiten Winkel-Encoder (oder einen anderen Winkelwandler) gemessen wird.

Viele Laserscanner aus neuerer Zeit schließen eine auf dem Laserscanner montierte Kamera ein zum Erfassen von digitalen Bildern der Umgebung und zur Vorlage der digitalen Kamerabilder an einen Bediener des Laserscanners. Durch Betrachten der Kamerabilder kann der Bediener des Scanners das Sichtfeld des gemessenen Volumens bestimmen und die Einstellungen am Laserscanner anpassen, um einen größeren oder kleineren Raumbereich zu messen. Zusätzlich können die digitalen Kamerabilder zu einem Prozessor übertragen werden, um Farbe zum Scannerbild hinzuzufügen. Zum Erzeugen eines Farbscannerbildes werden für jeden Datenpunkt mindestens drei Positionskoordinaten (wie x, y, z) und drei Farbwerte (wie z. B. Rot, Grün, Blau ”RGB”) erfasst.

Ein 3D-Bild einer Szene kann mehrere Scans aus unterschiedlichen Registrierungspositionen erfordern. Die sich überlappenden Scans werden in einem gemeinsamen Koordinatensystem registriert, wie es beispielsweise beschrieben ist in der veröffentlichten US-Patentanmeldung Nr. 2012/0069352 ('352), deren Inhalt durch Verweis hierin übernommen wird. Eine derartige Registrierung wird durchgeführt, indem Ziele in sich überlappenden Bereichen der Mehrfachscans entsprechend zugeordnet werden. Die Ziele können künstliche Ziele wie Sphären oder Schachbretter sein, oder es können natürliche Merkmale wie Ecken oder Kanten von Wänden sein. Einige Registrierungsverfahren beinhalten relativ zeitaufwendige manuelle Prozeduren, wie beispielsweise die Identifizierung jedes Ziels durch einen Benutzer und das Anpassen der vom Scanner erhaltenen Ziele in allen unterschiedlichen Registrierungspositionen. Einige Registrierungsverfahren erfordern auch die Erstellung eines externen ”Regelnetzwerks” von Registrierungszielen, gemessen durch ein externes Gerät wie z. B. eine Totalstation.

Allerdings ist es auch mit diesen Verbesserungen heute weiterhin schwierig, die Notwendigkeit zu umgehen, dass ein Benutzer die manuellen Registrierungsschritte entsprechend der Beschreibung weiter oben durchführt. In einem typischen Fall können nur 30% der 3D-Scans automatisch zu von anderen Registrierungspositionen vorgenommenen Scans registriert werden. Heutzutage wird eine derartige Registrierung selten an der Stelle der 3D Messung ausgeführt, sondern stattdessen im Anschluss an die Scanprozedur an einem entfernten Standort. In einem typischen Fall erfordert ein Projekt, das für das Scannen eine Woche vorsieht, zwei bis fünf Tage, um die Mehrfachscans manuell zu registrieren. Dies erhöht die Kosten des Scan-Projekts. Weiter ergibt der manuelle Registrierungsprozess manchmal, dass die Überlappung zwischen angrenzenden Scans nicht ausreichte, um eine korrekte Registrierung bereitzustellen. In anderen Fällen kann die manuelle Registrierung ergeben, dass bestimmte Abschnitte der Scan-Umgebung ausgelassen wurden. Wenn derartige Probleme auftreten, muss der Bediener zusätzliche Scans am Standort einholen. In manchen Fällen ist es nicht möglich, zum Standort zurückzukehren. Ein Gebäude, das einst zum Scannen verfügbar war, kann beispielsweise zu einem späteren Zeitpunkt nicht mehr zugänglich sein. Weiter sind die Details von Unfall- oder Tatorten bei Autounfällen oder Tötungsdelikten oft kurze Zeit nach dem Ereignis nicht mehr für die Vornahme von Scans verfügbar.

Während vorhandene 3D-Scanner für ihren vorgesehenen Zweck geeignet sind, wird dementsprechend ein 3D-Scanner benötigt, der bestimmte Merkmale von Ausführungsformen der vorliegenden Erfindung aufweist.

ZUSAMMENFASSUNG

Gemäß einem oder mehreren Beispielen umfasst ein dreidimensionales (3D) Messgerät ein Prozessorsystem einschließlich mindestens eines von einem 3D-Scanner-Controllers und einem zweidimensionale (2D) Scanner-Prozessors. Das 3D-Messgerät umfasst auch einen 3D-Scanner, konfiguriert zum Zusammenwirken mit dem Prozessorsystem, um die 3D-Koordinaten zu ermitteln. Das 3D-Messgerät umfasst auch ein 2D-Scanner-Zusatzgerät einschließlich eines 2D-Scanners, konfiguriert zum Zusammenwirken mit dem Prozessorsystem, um die 3D-Koordinaten zu bestimmen. Das 3D-Messgerät umfasst auch eine bewegliche Plattform, konfiguriert zum Tragen des 3D-Scanners und des 2D-Scanners, wobei der 3D-Scanner relativ zum 2D-Scanner fixiert ist; wobei das Prozessorsystem auf ausführbare Anweisungen reagiert. Das Prozessorsystem ist betreibbar, um zu bewirken, dass der an einer Scanposition fest angeordnete 3D-Scanner mit dem Prozessorsystem zusammenwirkt, um einen 3D-Scan einer Umgebung zu erfassen. Das Prozessorsystem ist betreibbar, um zu bewirken, dass der 2D-Scanner mit dem Prozessorsystem zusammenwirkt, um einen Teil einer 2D-Map der Umgebung zu erfassen. Das Prozessor-System ist weiter betreibbar, um zu bewirken, dass der 2D-Scanner als Reaktion auf den Beginn der Erfassung des 3D-Scans durch den 3D-Scanner Koordinaten der Scanposition in der 2D-Map bestimmt. Das Prozessorsystem ist weiter betreibbar, um die Koordinaten der Scanposition mit dem Teil der 2D-Map zu verknüpfen. Das Prozessorsystem ist weiter betreibbar, um einen Verschiebungsvektor für die 2D-Karte unter Verwendung eines Regelschleifen-Algorithmus zu bestimmen. Das Prozessorsystem ist weiter betreibbar, um basierend auf der Scanposition und dem Verschiebungsvektor eine revidierte Scanposition zu berechnen. Das Prozessorsystem ist weiter betreibbar, um den 3D-Scan unter Verwendung der revidierten Scanposition zu registrieren.

Gemäß einem oder mehreren Beispielen [ist] ein Verfahren [offenbart] zum Erzeugen einer dreidimensionalen (3D) Karte einer Umgebung, wobei das Verfahren das Empfangen eines 3D-Scans der Umgebung durch ein Prozessorsystem über einen 3D-Scanner einschließt, der an einer Scanposition fest angeordnet ist. Das Verfahren umfasst weiter das Empfangen eines Teils einer 2D-Karte der Umgebung durch das Prozessorsystem über ein zweidimensionales (2D) Scanner-Zusatzgerät. Das Verfahren umfasst weiter als Reaktion auf den Beginn der Erfassung des 3D-Scans durch den 3D-Scanner das Empfangen der Koordinaten der Scanposition in der 2D-Karte durch das Prozessorsystem. Das Verfahren umfasst weiter das Zuordnen der Koordinaten der Scanposition zu dem Teil der 2D-Karte durch das Prozessorsystem. Das Verfahren umfasst weiter das Bestimmen eines Verschiebungsvektors für die 2D-Karte unter Verwendung eines Regelschleifen-Algorithmus durch das Prozessorsystem. Das Verfahren umfasst weiter das Berechnen einer revidierten Scanposition basierend auf der Scanposition und dem Verschiebungsvektor durch das Prozessorsystem, wobei der 3D-Scan unter Verwendung der revidierten Scanposition registriert wird.

KURZBESCHREIBUNG DER ZEICHNUNGEN

Der als Erfindung angesehene Gegenstand wird in den Patentansprüchen am Ende der Spezifikation detailliert ausgeführt und eindeutig beansprucht. Die vorgenannten und weitere Merkmale und Vorteile der Erfindung werden ersichtlich aus der folgenden detaillierten Beschreibung bei Betrachtung in Verbindung mit den beigefügten Zeichnungen, die Folgendes zeigen:

1 ist eine perspektivische Ansicht eines Laserscanners gemäß einer Ausführungsform der Erfindung;

2 ist eine Seitenansicht des Laserscanners mit der Darstellung eines Messverfahrens;

3 ist eine schematische Darstellung der optischen, mechanischen und elektrischen Komponenten des Laserscanners;

4 zeigt eine Draufsicht eines gescannten 3D-Bildes;

5 zeigt eine Ausführungsform einer Panoramaansicht eines gescanntes 3D-Bildes, erzeugt durch Mapping einer Draufsicht auf eine Sphäre;

6A, 6B und 6C zeigen Ausführungsformen einer 3D-Ansicht eines gescannten 3D-Bildes;

7 zeigt eine Ausführungsform einer 3D-Ansicht, bestehend aus einem Bild des Objekts von 6B, aber aus einer anderen Perspektive betrachtet und nur teilweise dargestellt;

8 ist eine perspektivische Ansicht eines 3D-Messgeräts gemäß einer Ausführungsform;

9 ist ein Blockdiagramm mit der Darstellung eines 2D-Scanner-Zusatzgeräts und eines Prozessorsystems gemäß einer Ausführungsform;

10 ist eine schematische Darstellung eines 3D-Scanners, der ein Objekt von zwei Registrierungspositionen gemäß einer Ausführungsform misst;

11 ist eine schematische Darstellung eines 2D-Scanners, der ein Objekt von einer Vielzahl von Zwischenpositionen gemäß einer Ausführungsform misst;

12 zeigt einen 2D-Scanner, der Teile des Objekts aus einer Vielzahl von Positionen gemäß einer Ausführungsform erfasst;

13 zeigt den 2D-Scanner, der gemäß einer Ausführungsform Teile des Objekts aus einer Vielzahl von Positionen bei Betrachtung aus einem Bezugsrahmen des 2D-Scanners erfasst;

14A, 14B und 14C geben ein Verfahren zum Auffinden von Änderungen der Position und Orientierung des 2D-Scanners im Zeitverlauf gemäß einer Ausführungsform wieder;

15 zeigt schematisch ein beispielhaftes Szenario, wobei in geschätzten Koordinaten der Scanposition kontinuierlich ein Versatz (Offset) eingebracht wird;

16 zeigt die Anhäufung von Fehlern und Ineffizienzen bei Verwendung von geschätzten Scanpositionen für die Erfassung von 3D-Scans einer Umgebung;

17 gibt ein Ablaufdiagramm eines beispielhaften Verfahrens zur Revision von Scanpositionen nach Schleifenschluss wieder;

18 gibt Verschiebungsvektoren für Teile der 2D-Karte wieder, die basierend auf dem Regelschleifenvorgang bestimmt werden; und

19 stellt mit Teilen der 2D-Karte assoziierte versetzte Scanpositionen dar.

AUSFÜHRLICHE BESCHREIBUNG

Die hierin beschriebenen technischen Lösungen betreffen generell ein Gerät, das einen 3D-Scanner und einen 2D-Scanner einschließt, die zusammenwirken, um eine automatische Registrierung von 3D-Scans bereitzustellen.

Mit Bezug auf 13 ist ein Laserscanner 20 zum optischen Scannen und Messen der Umgebung um den Laserscanner 20 gezeigt. Der Laserscanner gleich dem sein, der beschrieben ist im US-Patent Nr. 8705016 im Gemeinschaftseigentum, dessen Inhalt durch Verweis hierin übernommen wird. Der Laserscanner 20 hat einen Messkopf 22 und eine Basis 24. Der Messkopf 22 ist auf der Basis 24 so angebracht, dass der Laserscanner 20 um eine vertikale Achse 23 gedreht werden kann. Bei einer Ausführungsform umfasst der Messkopf 22 ein Kardangelenk 27, das ein Rotationszentrum um die vertikale Achse 23 und um eine horizontale Achse 25 ist. Der Messkopf 22 hat einen rotierenden Spiegel 26, der um die horizontale Achse 25 gedreht werden kann. Die Drehung um die vertikale Achse kann um das Zentrum der Basis 24 erfolgen. Die Begriffe vertikale Achse und horizontale Achse beziehen sich auf den Scanner in seiner normalen aufrechten Position. Es ist möglich, ein 3D-Koordinaten-Messgerät auf dessen Seite, auf dem Kopf stehend oder angewinkelt zu betreiben; daher können zur Vermeidung von verwirrenden Auslegungen die Begriffe Azimut-Achse und Zenit-Achse durch die Begriffe vertikale Achse bzw. horizontale Achse ersetzt werden. Als Alternative zu ”vertikale Achse” kann auch der Begriff Pan-Achse oder Stehachse verwendet werden.

Der Messkopf 22 ist weiter mit einem Emitter elektromagnetischer Strahlung bereitgestellt, wie z. B. dem Licht-Emitter 28, der einen ausgesandten Lichtstrahl 30 emittiert. Bei einer Ausführungsform ist der emittierte Lichtstrahl 30 ein kohärenter Lichtstrahl wie z. B. ein Laserstrahl. Der Laserstrahl kann einen Wellenlängenbereich von etwa 300 bis 1600 Nanometer haben, z. B. 790 Nanometer, 905 Nanometer, 1550 nm oder weniger als 400 Nanometer. Es ist ersichtlich, dass andere elektromagnetische Strahlen mit größeren oder kleineren Wellenlängen ebenfalls verwendet werden können. Der emittierte Lichtstrahl 30 kann amplituden- oder intensitätsmoduliert sein, zum Beispiel mit einer sinusförmigen Wellenform oder mit einer rechteckigen Wellenform. Der emittierte Lichtstrahl 30 wird durch der Licht-Emitter 28 auf den rotierenden Spiegel 26 emittiert, wo er in die Umgebung abgelenkt wird. Ein reflektierter Lichtstrahl 32 wird durch ein Objekt 34 aus der Umgebung reflektiert. Das reflektierte oder zerstreute Licht wird durch den rotierenden Spiegel 26 abgefangen und in einen Lichtempfänger 36 geleitet. Die Richtungen des ausgesandten Lichtstrahls 30 und der reflektierte Lichtstrahl 32 ergeben sich aus den Winkelpositionen des rotierenden Spiegels 26 und des Messkopfs 22 um die Achsen 25 bzw. 23. Diese Winkelpositionen hängen wiederum von den dazugehörigen Drehantrieben oder Motoren ab.

Mit dem Licht-Emitter 28 und dem Lichtempfänger 36 gekoppelt ist ein Controller 38. Der Controller 38 bestimmt für eine Vielzahl von Messpunkten X eine entsprechende Anzahl von Entfernungen zwischen dem Laserscanner 20 und den Punkten X am Objekt 34. Die Entfernung zu einem bestimmten Punkt X wird zumindest teilweise bestimmt auf der Basis der Lichtgeschwindigkeit in Luft, durch die sich elektromagnetische Strahlung vom Gerät zum Objektpunkt X ausbreitet. Bei einer Ausführungsform wird die Phasenverschiebung der Modulation in vom Laserscanner 20 emittiertem Licht und dem Punkt X bestimmt und bewertet, um eine gemessene Entfernung d zu erhalten.

Die Lichtgeschwindigkeit in Luft hängt von den Eigenschaften der Luft ab, wie z. B. Lufttemperatur, Luftdruck, relativer Feuchtigkeit und Konzentration von Kohlendioxid. Diese Lufteigenschaften beeinflussen den Brechungsindex n der Luft. Die Lichtgeschwindigkeit in Luft entspricht der Lichtgeschwindigkeit im Vakuum c geteilt durch den Brechungsindex. Anders ausgedrückt, heißt dies cair = c/n. Ein Laserscanner des hierin diskutierten Typs basiert auf der Flugzeit (TOF) des Lichts in der Luft (Umlaufzeit für das Licht bei der Bewegung vom Gerät zum Objekt und zurück zum Gerät). Beispiele für TOF-Scanner umfassen Scanner, die die Umlaufzeit anhand des Zeitintervalls zwischen ausgesandten und zurückkehrenden Impulsen messen (gepulsten TOF-Scannern), sowie Scanner, die Licht sinusförmig modulieren und die Phasenverschiebung des zurückkehrenden Lichts messen (phasenbasierten Scannern), sowie viele andere Arten. Ein Verfahren zum Messen der Distanz basierend auf der Laufzeit von Licht hängt ab von der Geschwindigkeit des Lichts in Luft und lässt sich daher leicht von Verfahren zum Messen der Entfernung anhand der Triangulation unterscheiden. Triangulierungsbasierte Verfahren beinhalten das Projizieren von Licht aus einer Lichtquelle in eine bestimmte Richtung und das anschließende Abfangen des Lichts auf einem Kamera-Pixel entlang einer bestimmten Richtung. Durch die Kenntnis des Abstands zwischen der Kamera und dem Projektor und durch den Abgleich eines projizierten Winkels mit einem empfangenen Winkel ermöglicht Triangulationsverfahren das Bestimmen des Abstands zum Objekt auf der Basis von einer bekannten Länge und zwei bekannten Winkeln eines Dreiecks. Das Triangulationsverfahren ist daher nicht direkt von der Lichtgeschwindigkeit in Luft abhängig.

Bei einer Betriebsart erfolgt die Abtastung des Volumens um den Laserscanner 20 durch relativ schnelles Drehen des rotierenden Spiegels 26 um die Achse 25, während der Messkopf 22 relativ langsam um die Achse 23 gedreht wird, sodass sich die Baugruppe spiralförmig bewegt. Bei einer beispielhaften Ausführung rotiert der Drehspiegel mit einer maximalen Geschwindigkeit von 5820 Umdrehungen pro Minute. Bei einer derartigen Abtastung definiert das Kardangelenk 27 den Ausgangspunkt des lokalen stationären Bezugssystems. Die Basis 24 sitzt in diesem lokalen stationären Bezugssystem.

Zusätzlich zum Messen eines Abstands d vom Kardangelenk 27 zu einem Objektpunkt X kann der Scanner 20 auch Grauwertinformationen mit Bezug auf die empfangene optische Leistung erfassen (äquivalent zum Begriff ”Helligkeit”). Der Grauwert kann mindestens zum Teil, zum Beispiel durch Integration des bandpassgefilterten und verstärkten Signals im Lichtempfänger 36 über einen dem Objektpunkt X zugeordneten Messzeitraum, bestimmt werden.

Der Messkopf 22 kann eine in den Laserscanner 20 integrierte Anzeigevorrichtung 40 umfassen. Die Anzeigevorrichtung 40 kann entsprechend der Darstellung in 1 einen grafischen berührungssensiblen Bildschirm 41 umfassen, der dem Bediener die Einstellung der Parameter oder das Einleiten des Betriebs des Laserscanners 20 ermöglicht. Beispielsweise kann der Bildschirm 41 eine Benutzerschnittstelle aufweisen, die es dem Bediener ermöglicht, Messanweisungen an das Gerät bereitzustellen, und der Bildschirm kann auch Messergebnisse anzeigen.

Der Laserscanner 20 umfasst eine Tragstruktur 42, die einen Rahmen für den Messkopf 22 und eine Plattform zum Befestigen der Komponenten des Laserscanners 20 bereitstellt. Bei einer Ausführungsform ist die Tragstruktur 42 aus einem Metall wie z. B. Aluminium hergestellt. Die Tragstruktur 42 umfasst ein Traversenelement 44 mit einem Paar von Wänden 46, 48 an gegenüberliegenden Enden. Die Wände 46, 48 sind parallel zueinander und verlaufen in einer Richtung gegenüber der Basis 24. Schalen 50, 52 sind mit den Wänden 46, 48 gekoppelt und bedecken die Komponenten des Laserscanners 20. Bei dem Ausführungsbeispiel sind die Schalen 50, 52 aus einem Kunststoffmaterial wie beispielsweise Polycarbonat oder Polyethylen hergestellt. Die Schalen 50, 52 wirken mit den Wänden 46, 48 zusammen, um ein Gehäuse für den Laserscanner 20 zu bilden.

An einem Ende den Wänden 46, 48 gegenüberliegenden Ende der Schalen 50, 52 ist ein Paar Joche 54, 56 angeordnet, um die jeweiligen Schalen 50, 52 teilweise abzudecken. Bei dem Ausführungsbeispiel sind die Joche 54, 56 aus einem geeigneten haltbaren Material, wie beispielsweise Aluminium, hergestellt, das den Schutz der Schalen 50, 52 während des Transports und des Betriebs unterstützt. Die Joche 54, 56 weisen jeweils einen ersten Armabschnitt 58 auf, der beispielsweise mit einem Befestigungselement an der Traverse 44 angrenzend an die Basis 24 gekoppelt ist. Der Armabschnitt 58 für jedes Joch 54, 56 erstreckt sich von der Traverse 44 schräg zu einer äußeren Ecke der jeweiligen Schale 50, 54 [sic]. Von der äußeren Ecke der Schale erstrecken sich die Joche 54, 56 entlang der Seitenkante der Schale zu einer gegenüberliegenden äußeren Ecke der Schale. Jedes Joch 54, 56 weist ferner einen zweiten Armabschnitt auf, der sich schräg zu den Wänden 46, 48 erstreckt. Es ist ersichtlich, dass die Joche 54, 56 mit der Traverse 42, den Wänden 46, 48 und den Schalen 50, 54 [sic] an mehreren Stellen gekoppelt sein können.

Das Paar von Jochen 54, 56 wirkt zusammen, um einen konvexen Raum zu umschreiben, in dem die beiden Schalen 50, 52 angeordnet sind. Bei dem Ausführungsbeispiel wirken die Joche 54, 56 zusammen, um alle Außenkanten der Schalen 50, 54 [sic] zu bedecken, während die oberen und unteren Armabschnitte über mindestens einen Teil der oberen und unteren Kanten der Schalen 50, 52 vorstehen. Dies bietet Vorteile beim Schützen der Schalen 50, 52 und des Messkopfes 22 vor Beschädigungen während des Transports und des Betriebs. Bei anderen Ausführungsformen können die Joche 54, 56 zusätzliche Merkmale umfassen, wie beispielsweise Griffe, um das Tragen des Laserscanners 20 zu erleichtern, oder Befestigungspunkte für Zubehör.

Auf der Traverse 44 ist ein Prisma 60 vorgesehen. Das Prisma erstreckt sich parallel zu den Wänden 46, 48. Bei der beispielhaften Ausführungsform ist das Prisma 60 einstückig als Teil der Tragstruktur 42 ausgebildet. Bei anderen Ausführungsformen ist das Prisma 60 eine separate Komponente, die mit der Traverse 44 gekoppelt ist. Wenn der Spiegel 26 rotiert, leitet der Spiegel 26 während jeder Drehung den emittierten Lichtstrahl 30 auf die Traverse 44 und das Prisma 60. Aufgrund von Nichtlinearitäten in den elektronischen Bauelementen, beispielsweise im Lichtempfänger 36, können die gemessenen Abstände d von der Signalstärke abhängen, die bei der in den Scanner eintretenden optischen Leistung oder in optische Detektoren innerhalb des Lichtempfängers 36 eintretenden optischen Leistung gemessen werden kann. Bei einer Ausführungsform wird eine Abstandskorrektur im Scanner gespeichert als eine Funktion (möglicherweise als eine nichtlineare Funktion) des Abstands zu einem gemessenen Punkt und der optischen Leistung (generell nicht skalierte Menge an Lichtleistung, die manchmal als ”Helligkeit” bezeichnet wird), die vom gemessenen Punkt zurückgeleitet und zu einem optischen Detektor im Lichtempfänger 36 gesendet wird. Da das Prisma 60 in einem bekannten Abstand vom Kardangelenk 27 ist, kann der gemessene optische Leistungspegel des vom Prisma 60 reflektierten Lichts verwendet werden, um Abstandsmessungen für andere gemessene Punkte zu korrigieren, wodurch eine Kompensation ermöglicht wird, um die Auswirkungen von Umweltvariablen wie z. B. der Temperatur zu korrigieren. Bei dem dargestellten Ausführungsbeispiel erfolgt die resultierende Korrektur der Distanz durch den Controller 38.

Bei einer Ausführungsform ist die Basis 24 mit einer schwenkbaren Baugruppe (nicht gezeigt) gekoppelt, wie im US- Patent Nr. 8705012 ('012) im Gemeinschaftseigentum beschrieben, das durch Verweis hierin übernommen wird. Die schwenkbare Baugruppe ist in der Tragstruktur 42 untergebracht und enthält einen Motor, der konfiguriert ist, um den Messkopf 22 um die Achse 23 zu drehen.

Eine Hilfs-Bilderfassungseinrichtung 66 kann eine Vorrichtung sein, die einen dem gescannten Volumen oder dem gescannten Objekt zugeordneten Parameter erfasst und misst und ein Signal liefert, das die gemessenen Größen über einem Bilderfassungsbereich wiedergibt. Die Hilfs-Bilderfassungsvorrichtung 66 kann ohne diesbezügliche Einschränkung beispielsweise ein Pyrometer, ein Wärmebildgeber, ein ionisierender Strahlungsdetektor oder ein Millimeterwellendetektor sein.

Bei einer Ausführungsform ist eine Kamera (erste Bilderfassungsvorrichtung) 112 intern am Scanner angeordnet und kann dieselbe optische Achse wie die 3D-Scannereinrichtung aufweisen. Bei dieser Ausführungsform ist die erste Bilderfassungsvorrichtung 112 in den Messkopf 22 integriert und angeordnet, um Bilder entlang des gleichen optischen Weges wie dem des emittierten Lichtstrahls 30 und des reflektierten Lichtstrahls 32 zu erfassen. Bei dieser Ausführungsform reflektiert das Licht vom Lichtemitter 28 von einem festen Spiegel 116 und gelangt zum dichroitischen Strahlteiler 118, der das Licht 117 vom Lichtemitter 28 auf den Drehspiegel 26 reflektiert. Der dichroitische Strahlteiler 118 ermöglicht es, dass Licht bei Wellenlängen passiert, die sich von der Wellenlänge des Lichts 117 unterscheiden. Beispielsweise kann der Lichtemitter 28 ein Nahinfrarot-Laserlicht sein (z. B. Licht bei Wellenlängen von 780 nm oder 1150 nm), wobei der dichroitische Strahlteiler 118 so konfiguriert ist, dass er das Infrarot-Laserlicht reflektiert, während sichtbares Licht (z. B. Wellenlängen von 400 bis 700 nm) passieren kann. Bei anderen Ausführungsformen hängt die Bestimmung, ob das Licht durch den Strahlteiler 118 hindurchgeht oder reflektiert wird, von der Polarisation des Lichts ab. Die Digitalkamera 112 erfasst fotografische 2D-Bilder des gescannten Bereichs, um Farbdaten zu erfassen und so das gescannte Bild hinzuzufügen. Im Fall einer eingebauten Farbkamera mit einer optischen Achse, die mit derjenigen der 3D-Abtastvorrichtung übereinstimmt, kann die Richtung der Kamera-Ansicht leicht durch einfaches Einstellen der Lenkmechanismen des Scanners erreicht werden, beispielsweise durch Einstellen des Azimut-Winkels um die Achse 23 und durch Lenken des Spiegels 26 um die Achse 25.

4 zeigt ein Beispiel einer Planansicht eines gescannten 3D-Bildes 400. Die in 4 wiedergegebene Planansicht bildet ein Bild ab, das auf der direkten Abbildung der vom Scanner erfassten Daten basiert. Der Scanner erfasst Daten in einem sphärischen Muster, aber mit in der Nähe der Pole erfassten Datenpunkten, die stärker komprimiert sind als die näher am Horizont erfassten. Anders ausgedrückt, gibt jeder Punkt, der in der Nähe eines Pols gesammelt wird, einen kleineren Raumwinkel wieder als jeder Punkt, der näher am Horizont erfasst wird. Da Daten aus dem Scanner direkt in Zeilen und Spalten wiedergegeben werden können, sind Daten in einer Planansicht zweckmäßigerweise in einem geradlinigen Format entsprechend der Darstellung in 4. Bei der vorstehend beschriebenen planaren Abbildung scheinen gerade Linien gekrümmt zu sein, wie z. B. die geraden Umgrenzungen 420, die in der Planansicht des 3D-Bildes gekrümmt erscheinen. Die Planansicht kann ein unverarbeitetes gescanntes 3D-Bild sein, das nur die Grauwerte anzeigt, die bei ihrer Aufzeichnung durch den Abstandssensor in Spalten und Zeilen angeordnet empfangen wurden. Weiter kann das unverarbeitete gescannte 3D-Bild der Planansicht in Abhängigkeit von den Systemmerkmalen (z. B. Anzeigegerät, Speicher, Prozessor) in voller Auflösung oder in reduzierter Auflösung vorliegen. Die Planansicht kann ein verarbeitetes gescanntes 3D-Bild sein, das entweder Grauwerte (resultierend aus der Lichtabstrahlung, die vom Abstandssensor für jedes Pixel gemessen wird) oder Farbwerte (resultierend aus auf den Scan abgebildeten Kamerabildern) darstellt. Obwohl die aus dem 3D-Scanner extrahierte Planansicht gewöhnlich ein Graustufen- oder Farbbild ist, erfolgt die Wiedergabe in 4 im Interesse der deutlicheren Dokumentenwiedergabe als Strichzeichnung. Die der Anzeigeeinheit zugeordnete Benutzerschnittstelle, die mit dem Laserscanner einstückig ausgebildet sein kann, kann einen Punktauswahlmechanismus bereitstellen, der in 4 der Cursor 410 ist. Der Punktauswahlmechanismus kann verwendet werden, um eine Abmessungsinformation über das Volumen des Raumes wiederzugeben, der durch den Laserscanner gemessen wird. In 4 werden die Zeile und Spalte an der Cursorposition auf dem Display bei 430 angegeben. Die beiden gemessenen Winkel und ein gemessener Abstand (die 3D-Koordinaten in einem sphärischen Koordinatensystem) an der Cursorposition werden auf dem Display bei 440 angezeigt. Die kartesischen XYZ-Koordinatendarstellungen der Cursorposition werden auf dem Display bei 450 angezeigt.

5 zeigt ein Beispiel einer Panoramaansicht eines gescannten 3D-Bildes 600 das durch Abbildung einer Planansicht auf eine Kugel oder in einigen Fällen auf einen Zylinder erzeugt wird. Eine Panoramaansicht kann ein verarbeitetes gescanntes 3D-Bild sein (wie das in 5 gezeigte), in dem 3D-Informationen (z. B. 3D-Koordinaten) verfügbar sind. Die Panoramaansicht kann in Abhängigkeit von Systemmerkmalen in voller Auflösung oder in reduzierter Auflösung vorliegen. Es sei darauf hingewiesen, dass eine Abbildung wie z. B. 5 ein 2D-Bild ist, dass eine 3D-Szene bei Betrachtung aus einer bestimmten Perspektive wiedergibt. In diesem Sinn entspricht das Bild aus 5 stark einem Bild, das von einer 2D-Kamera oder einem menschlichen Auge erfasst werden könnte. Obwohl die aus dem 3D-Scanner extrahierte Planansicht gewöhnlich ein Graustufen- oder Farbbild ist, erfolgt die Wiedergabe in 5 im Interesse der deutlicheren Dokumentenwiedergabe als Strichzeichnung.

Der Begriff Panoramaansicht bezieht sich auf eine Anzeige, in der die Winkelbewegung um einen Punkt im Raum generell möglich ist, aber eine translatorische Bewegung nicht möglich ist (für ein einzelnes Panoramabild). Im Gegensatz dazu bezeichnet der hierin verwendete Begriff 3D-Ansicht in der Regel eine Anzeige, in der (durch Benutzersteuerelemente) Maßnahmen getroffen werden, um nicht nur die Rotation um einen festen Punkt, sondern auch die translatorische Bewegung von Punkt zu Punkt im Raum zu ermöglichen.

6A, 6B und 6C zeigen ein Beispiel einer 3D-Ansicht eines gescannten 3D-Bildes. In der 3D-Ansicht kann ein Benutzer den Ursprung des Scans verlassen und die Scan-Punkte aus unterschiedlichen Blickwinkeln und Perspektiven betrachten. Die 3D-Ansicht ist ein Beispiel für ein verarbeitetes 3D-Bild. Die 3D-Ansicht kann in Abhängigkeit von Systemmerkmalen in voller Auflösung oder in reduzierter Auflösung vorliegen. Weiter ermöglicht die 3D-Ansicht die Anzeige mehrerer registrierter Scans in einer Ansicht. 6A ist eine 3D-Ansicht 700, über der von einem Benutzer eine Auswahlmaske 730 platziert wurde. 6B ist eine 3D-Ansicht 740, in der nur der Teil der 3D-Ansicht 700 beibehalten wurde, der durch die Auswahlmaske 730 bedeckt ist. 6C zeigt die gleichen 3D-Messdaten wie in 6B, mit der Ausnahme, dass eine Drehung erfolgte, um eine unterschiedliche Ansicht 760 zu erhalten. 7 zeigt eine unterschiedliche Ansicht 780 von 6B, wobei die Ansicht in diesem Fall durch eine Translation und Rotation des Blickpunkts des Beobachters sowie durch eine Verkleinerung des Sichtbereichs erhalten wird. Obwohl die aus dem 3D-Scanner extrahierten 3D-Ansichten normalerweise ein Graustufen- oder Farbbild wiedergeben, sind 6A–C und 7 zur Verdeutlichung der Dokumentenwiedergabe als Strichzeichnungen dargestellt.

8 und 9 zeigen ein Ausführungsbeispiel eines 3D-Messgeräts 800, das einen 3D-Scanner 20, ein zweidimensionales (2D) Scanner-Zusatzgerät 810, ein Prozessorsystem 950 und eine wahlfreie bewegliche Plattform 820 umfasst. Das 3D-Messgerät 800 kann ein 3D-TOF-Scanner 20 entsprechend der Beschreibung mit Bezug auf 1. Das 2D-Scanner-Zusatzgerät 810 umfasst einen 2D-Scanner 910 und kann wahlfrei entsprechend der Darstellung in 9 einen 2D-Prozessor 940, einen Positions-/Orientierungssensor 920 und ein Netzwerk-Anschlussmodul 930 umfassen.

Das Prozessorsystem 950 umfasst eines oder mehrere Verarbeitungselemente, die einen 3D-Scanner Prozessor (Controller) 38 umfassen können, sowie einen 2D-Prozessor 940, einen externen Computer 970 und einen Cloud-Computer 980. Die Prozessoren können Mikroprozessoren, Field Programmable Gate Arrays (FPGAs), digitale Signalprozessoren (DSPs) und allgemein jedes Gerät sein, das Rechenfunktionen ausführen kann. Der eine oder die mehreren Prozessoren haben Zugriff auf Speicher zum Speichern von Informationen. Bei einer in 9 wiedergegebenen Ausführungsform stellt der Controller 38 einen oder mehrere über den 3D-Scanner verteilte Prozessoren dar. Die Ausführungsform von 9 umfasst auch den 2D-Prozessor 940 für das 2D-Scanner-Zusatzgerät 810, einen externen Computer 970 und einen oder mehrere Cloud-Computer 980 für remote Rechenfunktionen. Bei einer weiteren Ausführungsform sind nur ein oder zwei Prozessoren 38, 960, 970 und 980 im Prozessorsystem vorgesehen. Die Kommunikation zwischen den Prozessoren kann über kabelgebundene Verbindungen, drahtlose Verbindungen oder eine Kombination von kabelgebundenen und drahtlosen Verbindungen erfolgen. Bei einer Ausführungsform erfolgt die Verbindung zwischen dem Prozessor des 2D-Scanner-Zusatzgeräts und dem 3D-Scanner über IEEE 802.11 (WLAN) durch das Netzwerk-Verbindungsmodul 930. Bei einer Ausführungsform werden Scan-Resultate nach jeder Scan-Sitzung zum Speichern und für die spätere Nutzung in die Cloud (Fern-Netzwerk) hochgeladen.

Das 2D-Scanner-Zusatzgerät 810 misst 2D-Koordinaten in einer Ebene. In den meisten Fällen erfolgt dies durch Lenken von Licht innerhalb einer Ebene, um Objektpunkte im Umfeld zu beleuchten. Er erfasst das reflektierte (gestreute) Licht von den Objektpunkten, um 2D-Koordinaten der Objektpunkte in der 2D-Ebene zu bestimmen. Bei einer Ausführungsform scannt der 2D-Scanner einen Lichtfleck über einem Winkel, während zur gleichen Zeit ein Winkelwert und ein entsprechender Distanzwert zu jedem der beleuchteten Objektpunkte gemessen werden.

Beispiele für 2D-Scanner 910, die im 2D-Scanner-Zusatzgerät 810 eingeschlossen sein könnten, umfassen 2D-Scanner der LMS100-Produktfamilie, hergestellt von SICK, Inc., Minneapolis, US-Bundesstaat Minnesota, und die 2D-Scanner-Modelle URG-04LX-UG01 und UTM-30LX, hergestellt von Hokuyo Automation Co., Ltd aus Osaka, Japan. Die Scanner der Sick LMS100-Familie messen Winkel über einen Bereich von 270 Grad und über Entfernungen von bis zu 20 Metern. Das Hoyuko-Modell URG-04LX-UG01 ist ein kostengünstiger 2D-Scanner, der Winkel über einen Bereich von 240 Grad und Entfernungen von bis zu 4 Metern misst. Das Hoyuko-Modell URG-30LX ist ein 2D-Scanner, der Winkel über einen Bereich von 270 Grad und über Entfernungen von bis zu 30 Meter misst. Viele andere Arten von 2D-Scanner sind ebenfalls erhältlich.

Der wahlfreie Positions/Orientierungssensor 920 im 2D-Scanner-Zusatzgerät 810 kann Neigungsmesser (Beschleunigungsmesser), Gyroskope, Magnetometer und Höhenmesser umfassen. In der Regel werden Geräte, die einen oder mehrere Neigungsmesser und Gyroskope enthalten, als inertiale Messeinheit (IMU) bezeichnet. In einigen Fällen wird der Begriff IMU in einem breiteren Sinn verwendet, um eine Vielzahl von zusätzlichen Vorrichtungen einzuschließen, die die Position und/oder Orientierung angeben – zum Beispiel Magnetometer, die einen Kurs basierend auf Änderungen der Magnetfeldrichtung relativ zum magnetischen Norden der Erde angeben, und Höhenmesser, die die (absolute) Höhe angeben. Ein Beispiel für einen weitverbreiteten Höhenmesser ist ein Drucksensor. Durch das Kombinieren von Ablesungen aus einer Kombination von Positions-/Orientierungssensoren mit einem Fusionsalgorithmus, der ein Kalman-Filter umfassen kann, können relativ genaue Positions- und Orientierungsmessungen mit relativ kostengünstigen Sensorvorrichtungen erhalten werden.

Die wahlfreie bewegliche Plattform 820 ermöglicht es, dass die 3D-Messvorrichtung 800 von Ort zu Ort bewegt wird, typischerweise entlang eines ungefähr horizontalen Bodens. Bei einer Ausführungsform ist die wahlfreie bewegliche Plattform 820 ein Stativ, das Räder 822 einschließt. Bei einer Ausführungsform können die Räder 822 mit den Radbremsen 824 verriegelt werden. Bei einer weiteren Ausführungsform sind die Räder 822 einziehbar, sodass das Stativ stabil auf drei am Stativ befestigten Füßen ruhen kann. Bei einer weiteren Ausführungsform weist das Stativ keine Räder auf, sondern wird einfach entlang einer ungefähr horizontalen Fläche, beispielsweise entlang eines Bodens, geschoben oder gezogen. Bei einer weiteren Ausführungsform ist die wahlfreie bewegliche Plattform 820 ein Radwagen, der von Hand oder motorisiert geschoben/gezogen werden kann.

Bei einer Ausführungsform ist das 2D-Scanner-Zusatzteil 810 zwischen der beweglichen Plattform 820 und dem 3D-Scanner 20 montiert, wie in 8. Bei einer weiteren Ausführungsform ist das 2D-Scanner-Zusatzteil 810 in den 3D-Scanner 20 integriert. Bei einer weiteren Ausführungsform ist das 2D-Scanner-Zusatzteil 810 an der beweglichen Plattform 820 angebracht, z. B. an einem Stativbein oder zwischen den Beinen eines Stativs. Bei einer weiteren Ausführungsform ist das 2D-Scanner-Zusatzteil 810 am Körper des 3D-Scanners angebracht, z. B. in einer Position ähnlich der des Elements 70 in 1. Bei einer weiteren Ausführungsform ist der 2D-Scanner 910 an einem Bein eines Stativs befestigt, während andere Teile des 2D-Scanner-Zusatzteils 810 innerhalb des 3D-Scanners 20 sind.

Bei einer Ausführungsform ist der 2D-Scanner 910 so ausgerichtet, dass er einen Lichtstrahl über einen Bereich von Winkeln in einer horizontalen Ebene abtastet. Zu gegebenen Zeitpunkten meldet der 2D-Scanner 910 einen Winkelwert und einen entsprechenden Abstandswert zurück, um 2D-Koordinaten von Objektpunkten in der horizontalen Ebene bereitzustellen. Beim Abschließen eines Scans über den gesamten Winkelbereich leitet der 2D-Scanner eine Gruppe von gepaarten Winkel- und Distanzmesswerten zurück. Wenn die 3D-Messvorrichtung 800 von Ort zu Ort bewegt wird, gibt der 2D-Scanner 910 weiterhin 2D-Koordinatenwerte zurück. Diese 2D-Koordinatenwerte werden verwendet, um die Position des 3D-Scanners 20 an jeder stationären Registrierungsposition zu lokalisieren, wodurch eine genauere Registrierung ermöglicht wird.

10 zeigt die 3D-Messvorrichtung 800, die zu einer ersten Registrierungsposition 1112 vor einem zu messenden Objekt 1102 bewegt wird. Das Objekt 1102 könnte zum Beispiel eine Wand in einem Raum sein. Bei einer Ausführungsform wird die 3D-Messvorrichtung 800 angehalten und mit Bremsen arretiert, die bei einer Ausführungsform Bremsen 824 auf Rädern 822 sind. Der 3D-Scanner 20 in der 3D-Messvorrichtung 800 nimmt eine erste 3D-Abtastung des Objekts 1102 vor. Bei einer Ausführungsform kann der 3D-Scanner 20 bei Bedarf 3D-Messungen in allen Richtungen erhalten, mit Ausnahme von Abwärtsrichtungen, die durch die Struktur der 3D-Messvorrichtung 800 blockiert sind. Jedoch kann bei dem Beispiel aus 10, wobei der 3D-Scanner 20 eine lange, vorwiegend flache Struktur 1102 misst, ein kleineres effektives Sichtfeld (FOV) 1130 ausgewählt werden, um eine größere stirnseitige Ansicht von Merkmalen an der Struktur bereitzustellen.

Wenn der erste 3D-Scan abgeschlossen ist, empfängt das Prozessorsystem 950 ein Signal, das anzeigt, dass 2D-Abtastdaten erfasst werden. Dieses Signal kann vom Positions-/Orientierungssensor 920 als Reaktion darauf kommen, dass der Sensor 920 eine Bewegung der 3D-Messvorrichtung 800 erkennt. Das Signal kann gesendet werden, wenn die Bremsen freigegeben werden, oder es kann als Reaktion auf einen von einem Bediener eingegebenen Befehl gesendet werden. Das 2D-Scanner-Zusatzgerät 810 kann beginnen, Daten zu erfassen, wenn das 3D-Messgerät 800 beginnt, sich zu bewegen, oder es kann kontinuierlich 2D-Scan-Daten erfassen, selbst wenn das 2D-Scanner-Zusatzteil 810 stationär ist. Bei einer Ausführungsform werden die 2D-Scanner-Daten bei ihrer Erfassung an das Prozessorsystem 950 gesendet.

Bei einer Ausführungsform misst das 2D-Scanner-Zusatzgerät 810, wenn die 3D-Messvorrichtung 800 in Richtung der zweiten Registrierungsposition 1114 bewegt wird. Bei einer Ausführungsform werden 2D-Abtastdaten erfasst und verarbeitet, wenn der Scanner eine Vielzahl von 2D-Messpositionen 1120 durchläuft (11). An jeder Messposition 1120 erfasst der 2D-Scanner 2D-Koordinatendaten über ein effektives Sichtfeld (FOV) 1140. Unter Verwendung von Verfahren, die nachfolgend detaillierter beschrieben werden, verwendet das Prozessorsystem 950 2D-Abtastdaten von der Vielzahl von 2D-Abtastungen an den Positionen 1120, um eine Position und Orientierung des 3D-Scanners 20 an der zweiten Registrierungsposition 1114 relativ zur ersten Registrierungsposition 1112 zu bestimmen, wobei die erste Registrierungsposition und die zweite Registrierungsposition in einem beiden gemeinsamen 3D-Koordinatensystem bekannt sind. Bei einer Ausführungsform wird das gemeinsame Koordinatensystem durch kartesische 2D-Koordinaten x, y und durch einen Drehwinkel θ relativ zur x- oder y-Achse dargestellt. Bei einer Ausführungsform liegen die x- und y-Achsen in der Ebene des Scanners und können sich ferner auf eine Richtung einer ”Vorderseite” des 2D-Scanners 910 beziehen. Ein Beispiel für ein derartiges (x, y, θ)-Koordinatensystem ist das Koordinatensystem 1410 aus 14A.

Auf dem Objekt 1102 gibt es einen Überlappungsbereich 1150 zwischen dem ersten 3D-Scan (erfasst an der ersten Registrierungsposition 1112) und dem zweiten 3D-Scan (erfasst an der zweiten Registrierungsposition 1114). Im Überlappungsbereich 1150 befinden sich Registrierungsziele (die natürliche Merkmale des Objekts 1102 sein können), die sowohl im ersten 3D-Scan als auch im zweiten 3D-Scan zu erkennen sind. Ein Problem, das in der Praxis häufig auftritt, besteht darin, dass beim Bewegen des 3D-Scanners 20 von der ersten Registrierungsposition 1112 zur zweiten Registrierungsposition 1114 das Prozessorsystem 950 die Position und Orientierung des 3D-Scanners 20 verliert und somit die Registrierungsziele in den Überlappungsbereichen nicht korrekt zuordnen kann, um die zuverlässige Ausführung des Registrierungsverfahrens zu ermöglichen. Durch die Verwendung der Abfolge von 2D-Scans kann das Prozessorsystem 950 die Position und Orientierung des 3D-Scanners 20 an der zweiten Registrierungsposition 1114 relativ zur ersten Registrierungsposition 1112 bestimmen. Diese Information ermöglicht es dem Prozessorsystem 950, die Registrierungsziele im Überlappungsbereich 1150 korrekt zuzuordnen, wodurch der korrekte Abschluss des Registrierungsverfahrens möglich wird.

12 zeigt den 2D-Scanner 910, der 2D-Abtastdaten an ausgewählten Positionen 1120 über dem effektiven Sichtfeld (FOV) 1140 erfasst (11). An unterschiedlichen Positionen 1120 erfasst der 2D-Scanner einen Teil des Objekts 1102, der mit A, B, C, D und E markiert ist. 12 zeigt einen 2D-Scanner, der sich zeitlich relativ zu einem festen Bezugsrahmen des Objekts 1102 bewegt.

13 enthält die gleiche Information wie 12, zeigt sie jedoch aus dem Bezugsrahmen des 2D-Scanners 910 statt aus dem Bezugsrahmen des Objekts 1102. Diese Figur verdeutlicht, dass sich im 2D-Scanner-Bezugsrahmen die Position von Merkmalen des Objekts im Zeitverlauf ändert. Somit wird deutlich, dass die von dem 2D-Scanner 910 zurückgelegte Strecke aus den 2D-Abtastdaten bestimmt werden kann, die von dem 2D-Scanner-Zusatzgerät 810 an das Prozessorsystem 950 gesendet werden.

14A zeigt ein Koordinatensystem 1410, das in 14B und 14C verwendet werden kann. Bei einer Ausführungsform sind die 2D-Koordinaten x und y so ausgewählt, dass sie auf der Ebene des 2D-Scanners 910 liegen. Der Winkel θ ist gewählt als Drehwinkel relativ zu einer Achse wie z. B. x oder y. 14B, 14C repräsentieren einen realistischen Fall, in dem der 2D-Scanner 910 nicht genau auf einer geraden Linie bewegt wird, z. B. nominell parallel zum Objekt 1102, sondern auch seitlich. Weiter kann der 2D-Scanner 910 bei seiner Bewegung rotiert werden.

14B zeigt die Bewegung des Objekts 1102 bei Betrachtung vom Bezugsrahmen des 2D-Scanners 910. Im Bezugsrahmen des 2D-Scanners (d. h. bei Betrachtung vom 2D-Scanner aus) bewegt sich das Objekt 1102, während der 2D-Scanner 910 an seiner Position fixiert bleibt. In diesem Bezugsrahmen scheinen die Teile des Objekts 1102 bei Betrachtung vom 2D-Scanner 910 aus im Zeitverlauf zu verfahren und zu rotieren. Das 2D-Scanner-Zusatzgerät 810 stellt eine Abfolge derartiger verschobener und rotierter 2D-Scans für das Prozessorsystem 950 bereit. Bei dem in 14A, 14B gezeigten Beispiel verfährt der Scanner in der +y-Richtung um eine in 14C gezeigte Distanz 1420, und er rotiert um einen Winkel 1430, der bei diesem Beispiel +5 Grad ist. Selbstverständlich hätte sich der Scanner 910 genauso gut um einen geringen Betrag in der +x- oder –x-Richtung bewegen können. Um die Bewegung des 2D-Scanners 910 in den x-, y-, θ-Richtungen zu bestimmen, verwendet das Prozessorsystem 950 in aufeinanderfolgenden Scans aufgezeichnete Scans entsprechend der Betrachtung im Bezugsrahmen für den 2D/Scanner 910, wie in 14B gezeigt. Bei einer Ausführungsform führt das Prozessorsystem 950 eine Best-Fit-Berechnung unter Verwendung von nach dem Stand der Technik bereits bekannten Verfahren durch, um so weit wie möglich die beiden Scans oder Merkmale in den beiden Scans anzugleichen.

Während der 2D-Scanner 910 aufeinanderfolgende 2D-Ablesungen vornimmt und Best-Fit-Berechnungen ausführt, erfasst das Prozessorsystem 950 die Translation und Rotation des 2D-Scanners, die der Translation und Rotation des 3D-Scanners 20 und des Messgeräts 800 entsprechen. Auf diese Weise kann das Prozessor-System 950 die Änderung der Werte von x, y, θ genau bestimmen, während sich das Messgerät 800 von der ersten Registrierungsposition 1112 zur zweiten Registrierungsposition 1114 bewegt.

Es ist ersichtlich, dass das Prozessorsystem 950 die Position und Orientierung des 3D-Messgeräts 800 anhand eines Vergleichs der Abfolge von 2D-Scans bestimmt und nicht auf der Grundlage einer Verschmelzung von 2D-Scan-Daten mit 3D-Daten, die an der ersten Registrierungsposition 1112 oder der zweiten Registrierungsposition 1114 vom 3D-Scanner 20 bereitgestellt werden (10).

Stattdessen ist das Prozessorsystem 950 konfiguriert zum Bestimmen eines ersten Translationswerts, eines zweiten Translationswerts und eines ersten Rotationswerts, wobei sich bei Anwendung auf eine Kombination aus den ersten 2D-Scan-Daten und den zweiten 2D-Scan-Daten transformierte erste 2D-Daten ergeben, die sich gemäß einem objektiven mathematischen Kriterium eng an zweite 2D-Daten angleichen. Allgemein können die Translation und Rotation auf die ersten Scan-Daten, die zweiten Scan-Daten oder eine Kombination der beiden angewendet werden. Beispielsweise entspricht eine auf den ersten Datensatz angewandte Translation einer negativen, auf den zweiten Datensatz angewandten Translation in dem Sinn, dass beide Vorgänge die gleiche Entsprechung in den transformierten Datensätzen ergeben. Ein Beispiel für ein ”objektives mathematisches Kriterium” ist das der Minimierung der Residuenquadratsumme für jene Teile der Scan-Daten, die als einander überlappend eingestuft werden. Eine andere Art von objektivem mathematischen Kriterium kann eine Entsprechung von mehreren am Objekt identifizierten Merkmalen einbeziehen. Derartige Merkmale könnten beispielsweise die in 11B gezeigten Flankenwechsel 1103, 1104 und 1105 sein. Das mathematische Kriterium kann die Verarbeitung der vom 2D-Scanner-Zusatzgerät 810 zum Prozessorsystem 950 bereitgestellten Rohdaten einbeziehen, oder es kann eine erste Zwischenstufe der Verarbeitung einbeziehen, in der Merkmale als Gruppe von Liniensegmenten repräsentiert sind, unter Verwendung von nach dem Stand der Technik bereits bekannten Verfahren, beispielsweise von Verfahren, die auf dem Iterative-Closest-Point-(ICP)-Algorithmus basieren. Ein derartiges ICP-basiertes Verfahren ist beschrieben in Censi, A., ”An ICP variant using a point-to-line metric”, IEEE International Conference on Robotics and Automation (ICRA) 2008.

Bei einer Ausführungsform ist der erste Translationswert dx. der zweite Translationswert ist dy, und der erste Rotationswert ist dθ. Falls die ersten mit dem 2D-Scanner 910 erfassten Scan-Daten (in einem Bezugs-Koordinatensystem) Translations- und Rotationskoordinaten von (x1, y1, θ1) aufweisen, sind bei der Erfassung der zweiten 2D-Scan-Daten an einer zweiten Position die Koordinaten gegeben durch (x2, y2, θ2) = (x1 + dx, y1 + dy, θ1 + dθ). Bei einer Ausführungsform ist das Prozessorsystem 950 weiter konfiguriert, um einen dritten Translationswert (z. B. dz) und einen zweiten und dritten Rotationswert (zum Beispiel Neigung und Rollen) zu bestimmen. Der dritte Translationswert, der zweite Rotationswert und der dritte Rotationswert können zumindest teilweise basierend auf Ablesewerten des Positions-/Orientierungssensors 920 bestimmt werden.

Der 2D-Scanner 910 erfasst 2D-Scan-Daten an der ersten Registrierungsposition 1112 und weitere 2D-Scan-Daten an der zweiten Registrierungsposition 1114. In einigen Fällen können diese Scans ausreichen, um die Position und Orientierung des 3D-Messgeräts an der zweiten Registrierungsposition 1114 relativ zur ersten Registrierungsposition 1112 zu bestimmen. In anderen Fällen reichen die zwei Gruppen von 2D-Scan-Daten nicht aus, um dem Prozessorsystem 950 die genaue Bestimmung des ersten Translationswerts, des zweiten Translationswerts und des ersten Rotationswerts zu ermöglichen. Dieses Problem lässt sich durch Erfassen von 2D-Scan-Daten an Scan-Zwischenpositionen 1120 vermeiden. Bei einer Ausführungsform werden die 2D-Scan-Daten in regelmäßigen Abständen, z. B. einmal pro Sekunde, erfasst und verarbeitet. Auf diese Weise werden Merkmale leicht in aufeinanderfolgenden 2D-Scans identifiziert. Wenn mehr als zwei 2D-Scans erhalten werden, können das Prozessorsystem 950 entscheiden, die Informationen aus allen aufeinanderfolgenden 2D-Scans zum Bestimmen der Translations- und Rotationswerte beim Übergang von der ersten Registrierungsposition 1112 zur zweiten Registrierungsposition 1114 zu verwenden. Bei einer weiteren Ausführungsform kann der Prozessor entscheiden, nur die ersten und letzten Scans bei der endgültigen Berechnung zu verwenden, indem einfach die dazwischen liegenden 2D-Scans verwendet werden, um die korrekte Entsprechung der zusammengehörigen Merkmale sicherzustellen. In den meisten Fällen wird die Genauigkeit der Entsprechung durch die Integration von Informationen aus mehreren aufeinanderfolgenden 2D-Scans verbessert.

Der erste Translationswert, der zweite Translationswert und der erste Rotationswert sind für den 2D-Scanner, den 3D-Scanner und das 3D-Messgerät gleich, da alle relativ zu den jeweils anderen unverändert gehalten werden.

Das 3D-Messgerät 800 wird zur zweiten Registrierungsposition 1114 bewegt. Bei einer Ausführungsform wird die 3D-Messvorrichtung 800 angehalten, und Bremsen werden arretiert, um den 3D-Scanner stationär zu halten. Bei einer weiteren Ausführungsform startet das Prozessorsystem 950 den 3D-Scan automatisch, wenn die bewegliche Plattform angehalten wird, zum Beispiel durch den Positions-/Orientierungssensor 920, wobei die fehlende Bewegung erkannt wird. Der 3D-Scanner 20 in der 3D-Messvorrichtung 800 nimmt eine erste 3D-Abtastung des Objekts 1102 vor. Dieser 3D-Scan wird als zweiter 3D-Scan bezeichnet, um ihn vom ersten 3D-Scan zu unterscheiden, der an der ersten Registrierungsposition vorgenommen wird.

Das Prozessorsystem 950 wendet den bereits berechneten ersten Translationswert, den zweiten Translationswert und den ersten Rotationswert an, um die Position und Orientierung des zweiten 3D-Scans relativ zum ersten 3D-Scan einzustellen. Diese Einstellung, die als Bereitstellen einer ”ersten Orientierung” angesehen werden kann, bringt die Registrierungsziele (die natürliche Merkmale im Überlappungsbereich 1150 sein können) in enge Nähe. Das Prozessorsystem 950 führt eine Feinregistrierung durch, bei der es Feineinstellungen für die sechs Freiheitsgrade des zweiten 3D-Scans relativ zum ersten 3D-Scan vornimmt. Die Feineinstellung wird vorgenommen basierend auf einem objektiven mathematischen Kriterium, das gleich dem auf die 2D-Scan-Daten angewandten mathematischen Kriterium oder unterschiedlich sein kann. Beispielsweise kann das objektive mathematische Kriterium das der Minimierung der Residuenquadratsumme für jene Teile der Scan-Daten sein, die als einander überlappend eingestuft werden. Bei einer weiteren Ausführungsform kann das objektive mathematische Kriterium auf eine Vielzahl von Merkmalen im Überlappungsbereich angewandt werden. Die mathematischen Berechnungen bei der Registrierung können auf 3D-Roh-Scandaten oder geometrische Darstellungen von 3D-Scan-Daten angewandt werden, beispielsweise durch eine Gruppe von Liniensegmenten.

Außerhalb des Überlappungsbereichs 1150 sind die ausgerichteten Werte des ersten 3D-Scans und des zweiten 3D-Scans in einem registrierten 3D-Datensatz kombiniert. Innerhalb des Überlappungsbereichs basieren die 3D-Scan-Werte im registrierten 3D-Datensatz auf einer Kombination aus 3D-Scannerdaten aus den ausgerichteten Werten des ersten 3D-Scans und des zweiten 3D-Scans.

Aufgrund der Varianz in den 2D-Laser-Messdaten kann zur Messung kontinuierlich ein Offset-Versatz hinzugefügt werden, der typischerweise unter Verwendung von Regelschleifen-Algorithmen entfernt wird. 15 zeigt schematisch ein Beispielszenario, bei dem ein Offset kontinuierlich eingebracht wird. Man beachte, dass sich die 3D-Messeinrichtung 800 (deren Bewegung durch die 2D-Messeinrichtung erfasst wird) von einer Startposition 1510 (reelle Pose) bewegt. Nach einigen Bewegungen soll das 3D-Messgerät 800 zu einem bereits abgebildeten Bereich zurückkehren, wie z. B. zur Startposition 1510, die gemessene Position ist aufgrund von Sensorvariationen und der darauf folgenden Messfehler jedoch eine unterschiedliche Position 1520 (geschätzte Pose). Die üblicherweise eingesetzten Regelschleifen-Algorithmen erkennen die Regelschleifen-Korrektur 1530 und korrigieren die Pose und die durch die 3D-Messvorrichtung 800 bislang erfassten Karten. Infolgedessen ändern alle Positionen in der Karte einschließlich der Scan-Positionen, der Registrierungspunkte und der in den 2D-Scans und 3D-Scans gescannten und gespeicherten Punkte ihre Koordinaten basierend auf der Regelschleifen-Korrektur 1530. Bei einer reinen Mapping-Anwendung kann dies keine Ineffizienzen oder andere Probleme einführen, jedoch führt eine derartige Änderung der Kartenkoordinaten bei der 3D-Messvorrichtung 800, die Scans aus unterschiedlichen Scan-Positionen nutzt, zu Fehlern/Ineffizienzen, da die Scan-Positionen aufgezeichnet werden, bevor sie auf diese Weise automatisch angepasst werden.

Beispielsweise zeigt 16 die Anhäufung von Fehlern und Ineffizienzen. Das 3D-Messgerät 800 beginnt seine Bewegung aus der Startposition 1510. Nach anfänglicher Bewegung nimmt das 3D-Messgerät 800 einen 3D-Scan entsprechend der hierin wiedergegebenen Beschreibung von einer aus einer Vielzahl von Scanpositionen 1610 vor. Wenn die 3D-Messvorrichtung 800 in die Startposition 1510 zurückkehrt, bewirkt der Messfehler aufgrund der Sensordaten-Varianz, dass sich die geschätzte Pose 1520 von der Startposition 1510 unterscheidet. Entsprechend der Beschreibung hierin werden die Positionen des 3D-Scans aus der 2D-Abbildung berechnet. Dementsprechend weisen die aufgezeichneten 3D-Scanpositionen bei geschlossener Regelschleife weiterhin die gleichen Koordinaten auf, einschließlich des Fehlers, während Karte durch den Regelschleifen-Algorithmus korrigiert worden ist. Demzufolge weisen die geschätzten Positionen der 3D-Scans eine Abweichung auf. Entsprechend der Beschreibung weiter oben ändern sich jetzt bei Anwendung des Regelschleifen-Algorithmus alle Positionen in der Karte. Da die Scanpositionen 1610 jedoch zuvor aufgezeichnet worden waren, werden sie nicht automatisch angepasst. Infolgedessen gibt es Offset-Versatz zwischen den Scanpositionen 1610 und der durch das 3D-Messgerät 800 erfassten Karte. Weiter können mithilfe eines Registrierungsprozesses (z. B. Cloud-2-Cloud-Registrierung) für die 3D-Scans die Fehler bei den Scan-Positionen 1610 in den 3D-Daten korrigiert werden. Ein derartiger Registrierungsprozess erfordert jedoch zusätzliche Verarbeitungsleistung und Zeit.

Die hierin beschriebenen technischen Lösungen überwinden diese Fehler und Ineffizienzen, indem die aus der 2D-Abbildung berechneten Scan-Positionen direkt als Positionen für die 3D-Scans verwendet werden und somit der Registrierungsprozess für die 3D-Scans eliminiert wird. Die hierin beschriebenen technischen Lösungen ermöglichen eine Verbesserung des Erfassens der 3D-Scans durch die 3D-Messvorrichtung 800, indem eine zusätzliche Verschiebung für einen Teil der Karte berechnet wird, der durch die geschlossene Regelschleife versetzt wird.

17 gibt ein Ablaufdiagramm eines beispielhaften Verfahrens zum Korrigieren der Scanpositionen nach dem Schließen der Regelschleife wieder. In einem oder mehreren Beispielen beendet und startet ein Benutzer die Aufzeichnung eines 3D-Scans mit der 3D-Messvorrichtung 800 an einer Scanposition aus den Scanpositionen 1610 (16). Bei einer weiteren Ausführungsform beendet und startet die 3D-Messvorrichtung 800 die Aufzeichnung eines 3D-Scans an der Scanposition automatisch. Die 3D-Messvorrichtung 800 initiiert das Erfassen eines 3D-Scans an der Scanposition entsprechend der Darstellung Block 1705. Das Erfassen des 3D-Scans beinhaltet das Bestimmen mit dem Prozessorsystem in Zusammenwirken mit dem 3D-Scanner von 3D-Koordinaten einer ersten Gruppe von Punkten auf einer Objektoberfläche, während der 3D-Scanner fest an einer ersten Registrierungsposition angeordnet ist (z. B. Position 1510). Weiter umfasst das Erfassen des 3D-Scans das Erhalten einer Vielzahl von 2D-Scan-Gruppen durch den 2D-Scanner in Zusammenwirken mit dem Prozessorsystem. Jede der Vielzahl von 2D-Scan-Gruppen ist eine Gruppe von 2D-Koordinaten von Punkten auf der Objektoberfläche, die erfasst werden, während sich der 2D-Scanner von der ersten Registrierungsposition zu einer zweiten Registrierungsposition bewegt (z. B. Position 1610A). Jede der Vielzahl von 2D-Scan-Gruppen wird durch den 2D-Scanner an einer unterschiedlichen Position relativ zur ersten Registrierungsposition erfasst. Die Vielzahl der 2D-Scan-Gruppen wird zusammen als die 2D-Karte bezeichnet, und jede der Scan-Gruppen ist ein Teil der 2D-Karte.

In einem oder mehreren Beispielen empfängt das 2D-Scanner-Zusatzgerät 810 ein Signal vom 3D-Scanner 20, wenn der 3D-Scanner 20 mit dem Erfassen des 3D-Scans beginnt, wie bei Block 1710 dargestellt. Das 2D-Scanner-Zusatzgerät 810 speichert die aktuelle Position (eine 2D-Position des 3D-Messgerätes 800 in der 2D-Karte), wie bei Block 1715 dargestellt. In einem oder mehreren Beispielen speichert das 2D-Scanner-Zusatzgerät 810 die aktuelle Position in einer Datenstruktur wie z. B. einer Liste von Positionen. Jede Position in der Datenstruktur ist direkt mit der Datenstruktur der Karte verknüpft, in der der dazugehörige Teil der Karte gespeichert ist. Die Prozedur wird für jeden von der 3D-Messeinrichtung 800 ausgeführten 3D-Scan wiederholt. Wenn zum Beispiel das 3D-Messgerät n Scans erfasst, enthält die Datenstruktur n Positionen mit n Verknüpfungen zu der dazugehörigen Datenstruktur, die die Kartendaten des Kartenteils speichert.

Wenn ein Regelschleifenvorgang auf der 2D-Karte ausgeführt wird, werden Teile der Karte korrigiert, um die reale Pose, die die Ausgangsposition 1510 ist, an die geschätzte Pose, die die unterschiedliche Position 1520 ist, anzugleichen, wie bei den Blöcken 1720 dargestellt. Der Regelschleifen-Algorithmus berechnet eine Verschiebung für jeden Teil der 2D-Karte, der durch den Algorithmus versetzt wird, wie bei Block 1730 dargestellt. Unter Verwendung der Datenstruktur bestimmt die 3D-Messvorrichtung 800 die Scanpositionen 1610, die mit jedem der 2D-Kartenteile verknüpft sind, wie bei Block 1740 dargestellt. In einem oder mehreren Beispielen erfordert die Suche einen einzigen Prozessorvorgang, wie z. B. eine Array-Suche. Die 3D-Messvorrichtung 800 wendet den Verschiebungsvektor für ein 2D-Kartenteil auf die entsprechenden in der Datenstruktur gespeicherten Scanpositionen an und speichert die resultierenden versetzten (oder überarbeiteten) Scanpositionen zurück in die Datenstruktur, wie bei Block 1750 dargestellt. Die 3D-Messvorrichtung 800 berechnet versetzte Scanpositionen für jede der in der Datenstruktur gespeicherten Scanpositionen 1610. Die Prozedur kann bei jeder Anwendung des Regelschleifen-Algorithmus wiederholt werden.

Die versetzten Scanpositionen geben korrigierte Scanpositionen der 3D-Scans wieder, die direkt verwendet werden können, ohne weitere rechenaufwendige 3D-Punktwolken-Registrierungsalgorithmen anzuwenden. Die Genauigkeit der Scanpositionen 1610 hängt von der Sensorgenauigkeit des 2D-Scanners 910 im 2D-Scanner-Zusatzgerät 810 ab. 18 und 19 zeigen die Verschiebungsvektoren 1810 für die 2D-Kartenteile, die auf der Grundlage des Regelschleifenvorgangs bestimmt werden. Die 3D-Messvorrichtung 800 wendet die Verschiebungsvektoren 1810 auf die Scanpositionen 1610 an, die entsprechend der Beschreibung hierin durch die Datenstruktur mit den 2D-Kartenteilen verknüpft sind. 19 veranschaulicht die resultierenden versetzten Scanpositionen 1910 basierend auf der Anwendung der Verschiebungsvektoren 1810 auf die Scanpositionen 1610. Die versetzten Scanpositionen 1910 sind korrekt angeordnet.

In einem oder mehreren Beispielen ist das Verfahren nach 17 durch ein 3D-Messgerät implementiert, das ein Prozessorsystem, einen 3D-Scanner, einen 2D-Scanner und eine bewegliche Plattform umfasst. Das Prozessorsystem hat mindestens einen 3D-Scanner-Controller, einen 2D-Scanner-Prozessor, einen externen Computer und einen Cloud-Computer, der für den Remote-Netzwerkzugriff konfiguriert ist. Jedes dieser Verarbeitungselemente innerhalb des Prozessorsystems kann einen einzelnen Prozessor oder mehrere verteilte Verarbeitungselemente umfassen, wobei die Verarbeitungselemente ein Mikroprozessor, ein digitaler Signalprozessor, ein FPGA oder beliebiger anderer Typ einer Rechenvorrichtung sein können. Die Verarbeitungselemente haben Zugriff auf den Computer-Speicher. Der 3D-Scanner verfügt über eine erste Lichtquelle, eine erste Strahllenkeinheit, eine erste Winkelmesseinrichtung, eine zweite Winkelmesseinrichtung und einen ersten Lichtempfänger. Die erste Lichtquelle ist so konfiguriert, dass sie einen ersten Lichtstrahl emittiert, der bei einer Ausführungsform ein Laserlichtstrahl ist. Die erste Strahllenkeinheit ist vorgesehen, um den ersten Lichtstrahl in einer ersten Richtung auf einen ersten Objektpunkt zu lenken. Die Strahllenkeinheit kann ein rotierender Spiegel wie der Spiegel 26 sein, oder es kann ein anderer Typ eines Strahllenkmechanismus sein. Beispielsweise kann der 3D-Scanner eine Basis enthalten, auf der eine erste Struktur platziert ist, die sich um eine vertikale Achse dreht, und auf dieser Struktur kann eine zweite Struktur platziert sein, die sich um eine horizontale Achse dreht. Bei dieser Art von mechanischer Zusammenstellung kann der Lichtstrahl direkt aus der zweiten Struktur emittiert werden und in eine gewünschte Richtung weisen. Viele andere Arten von Strahllenkmechanismen sind möglich. In den meisten Fällen enthält ein Strahllenkmechanismus einen oder zwei Motoren. Die erste Richtung wird durch einen ersten Drehwinkel um eine erste Achse und einen zweiten Drehwinkel um eine zweite Achse bestimmt. Die erste Winkelmessvorrichtung ist so konfiguriert, dass sie den ersten Drehwinkel misst, und die zweite Winkelmessvorrichtung ist konfiguriert, um den zweiten Drehwinkel zu messen. Der erste Lichtempfänger ist so konfiguriert, dass er das erste reflektierte Licht empfängt, wobei das erste reflektierte Licht ein Teil des ersten Lichtstrahls ist, der von dem ersten Objektpunkt reflektiert wird. Der erste Lichtempfänger ist weiter so konfiguriert, dass er ein erstes elektrisches Signal als Reaktion auf das erste reflektierte Licht erzeugt. Der erste Lichtempfänger ist weiter so konfiguriert, dass er mit dem Prozessorsystem zusammenwirkt, um einen ersten Abstand zum ersten Objektpunkt zu bestimmen, der zumindest teilweise auf dem ersten elektrischen Signal basiert, und der 3D-Scanner ist so konfiguriert, dass er mit dem Prozessorsystem zusammenwirkt, um 3D-Koordinaten des ersten Objektpunkts basierend zumindest teilweise auf der ersten Distanz, dem ersten Drehwinkel und dem zweiten Drehwinkel zu bestimmen. Das 2D-Scanner-Zusatzgerät umfasst einen 2D-Scanner mit einer zweiten Lichtquelle, einer zweiten Strahllenkeinheit, einem dritten Winkelmessgerät und einem zweiten Lichtempfänger. Die zweite Lichtquelle ist konfiguriert, um einen zweiten Lichtstrahl zu emittieren. Die zweite Strahllenkeinheit ist so konfiguriert, dass sie den zweiten Lichtstrahl in einer zweiten Richtung auf einen zweiten Objektpunkt lenkt. Die zweite Richtung wird durch einen dritten Drehwinkel um eine dritte Achse bestimmt, wobei die dritte Winkelmesseinrichtung konfiguriert ist, um den dritten Drehwinkel zu messen. Der zweite Lichtempfänger ist so konfiguriert, dass er das zweite reflektierte Licht empfängt, wobei das zweite reflektierte Licht ein Teil des zweiten Lichtstrahls ist, der vom zweiten Objektpunkt reflektiert wird. Der zweite Lichtempfänger ist weiter so konfiguriert, dass er ein zweites elektrisches Signal als Reaktion auf das zweite reflektierte Licht erzeugt. Der 2D-Scanner ist so konfiguriert, dass er mit dem Prozessorsystem zusammenwirkt, um einen zweiten Abstand zum zweiten Objektpunkt zu bestimmen, der zumindest teilweise auf dem zweiten elektrischen Signal basiert. Der 2D-Scanner ist weiter so konfiguriert, dass er mit dem Prozessorsystem zusammenwirkt, um 2D-Koordinaten des zweiten Objektpunkts zu bestimmen, die zumindest teilweise auf dem zweiten Abstand und dem dritten Drehwinkel basieren. Die bewegliche Plattform ist so konfiguriert, dass sie den 3D-Scanner und den 2D-Scanner trägt. Der 3D-Scanner ist relativ zum 2D-Scanner fixiert, und die bewegliche Plattform ist für eine Bewegung auf einer Ebene senkrecht zur dritten Achse konfiguriert.

Begriffe wie Prozessor, Controller, Computer, DSP, FPGA sind in diesem Dokument so zu verstehen, dass sie sich auf eine Rechenvorrichtung beziehen, die innerhalb eines Instruments angeordnet oder in mehreren Elementen über ein Instrument verteilt oder außerhalb eines Instruments platziert sein kann.

Während die Erfindung im Zusammenhang mit nur einer begrenzten Anzahl von Ausführungsformen im Detail beschrieben worden ist, versteht es sich, dass die Erfindung nicht auf derartige offenbarte Ausführungsformen beschränkt ist. Vielmehr kann die Erfindung modifiziert werden, um eine beliebige Anzahl von Variationen, Änderungen, Substitutionen oder äquivalenten Anordnungen zu übernehmen, die bislang nicht beschrieben wurden, die jedoch mit dem Geist und Schutzumfang der Erfindung in Einklang sind. Zudem versteht es sich, während verschiedene Ausführungsformen der Erfindung beschrieben worden sind, dass Aspekte der Erfindung möglicherweise nur einige der beschriebenen Ausführungsformen umfassen. Dementsprechend ist die Erfindung nicht als durch die vorstehende Beschreibung eingeschränkt zu verstehen, sondern sie ist nur durch den Schutzumfang der beigefügten Ansprüche eingegrenzt.

ZITATE ENTHALTEN IN DER BESCHREIBUNG

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.

Zitierte Patentliteratur

  • US 8705016 [0033]
  • US 8705012 [0044]

Zitierte Nicht-Patentliteratur

  • IEEE 802.11 [0052]
  • Censi, A., ”An ICP variant using a point-to-line metric”, IEEE International Conference on Robotics and Automation (ICRA) 2008 [0069]