-
Die Erfindung betrifft ein Verfahren zum optischen Abtasten und Vermessen einer Szene mittels einer 3D-Koordinaten-Mess-Vorrichtung, insbesondere eines Laserscanners, bei welchem mehrere Scans erzeugt werden, um danach in einem gemeinsamen Koordinatensystem der Szene registriert zu werden, und einen Laserscanner zur Durchführung dieses Verfahrens.
-
In der
DE 10 2009 015 922 A1 ist ein Verfahren dieser Art beschrieben, bei welchem eine Szene mit mehreren Scans erfasst wird. Hierzu wird der Laserscanner nach einem Scan an einen neuen Standort gebracht, um einen weiteren Scan zu erzeugen. Die erzeugten Scans werden mit ihren Messpunkten in einem gemeinsamen Koordinatensystem registriert, wobei die Gesamtheit der Messpunkte eine dreidimensionale Punktwolke bildet.
-
Angus Errington, Brian Daku und Arnfinn Prugger beschreiben in „Closure Monitoring in Potash Mines using LIDAR", IECON 2010 - 36th Annular Conference on IEEE Industrial Electronics Society, 2010, S. 2823-2827, wie innerhalb eines Bergwerks eine Reihe von Scans erzeugt werden. Diese werden mittels eine „Iterative Closest Point“ Verfahrens registriert, beginnend mit einem der Scans und unter Hinzunahme jeweils eines weiteren Scans. Aus den registrierten Scans entsteht ein einziger Cluster. Im Bergwerk sind genaue Vermessungspunkte vorhanden, von denen wenigstens einige von den Scans erfasst werden. Mittels dieser Vermessungspunkte wird der Cluster mit dem Koordinatensystem des Bergwerkes verknüpft.
-
Die
DE 20 2010 013 825 U1 offenbart einen Laserscanner, welcher eine Szene von verschiedenen Standorten aus erfasst. Beginnend mit einem ersten Scan, wird der tragbare Laserscanner an einen anderen Standort gestellt. Sobald der nächste Scan erzeugt ist, wird er im gemeinsamen Koordinatensystem registriert, beispielsweise mittels eines „Iterative Closest Point“ Verfahrens. Das Ergebnis wird dann an einer mit dem Laserscanner verbundenen Steuer- und Auswertevorrichtung visualisiert. Etwaige fehlerhafte oder problematische Scans sind für den Benutzer sofort erkennbar und können gegebenenfalls korrigiert, verworfen oder bestätigt werden.
-
Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren und einen Laserscanner der eingangs genannten Art zu verbessern. Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruches 1 und durch einen Laserscanner mit den Merkmalen des Anspruches 9 gelöst. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche.
-
Mittels des bekannten Verfahrens zur Registrierung mehrerer Scans einer Szene sollte die Registrierung, die auf der paarweisen Prüfung zweier Scans basiert, theoretisch eindeutig sein und daher vollständig automatisch erfolgen. In der Praxis werden aber aus Gründen der Performance nicht alle Scans paarweise geprüft, sondern nur innerhalb einer Nachbarschaft, welche sich beispielsweise aus der Historie der Erfassung der Szene ergibt. Daher können Unterbrechungen bei der Registrierung auftreten.
-
Erfindungsgemäß wird zunächst wenigstens ein Cluster aus wenigstens einem Scan erzeugt, dem weitere Scans hinzugefügt werden solange bestimmte Qualitätskriterien erfüllt werden. Andernfalls wird ein neuer Cluster erzeugt. Nach der automatischen Bildung der Cluster (auto clustering) sind die Cluster zusammenzufügen. Hierfür sind Cluster und/oder Scans paarweise auszuwählen und testweise zu registrieren.
-
Die Auswahl der Cluster und/oder Scans für das Zusammenfügen der Cluster ist auf verschiedene Weisen möglich. Solange die Scans in ihrer Gesamtheit ausreichend Informationen enthalten, sind Strategien möglich, die ein automatisches Zusammenfügen der Cluster bei guter Performance erlauben, insbesondere wenn bereits bei der Bildung der Cluster Strategien verfolgt werden. Kumulativ (also zur zusätzliche Unterstützung und Beschleunigung) oder alternativ (insbesondere wenn die Information der Scans in ihrer Gesamtheit nicht ausreichen oder mehrdeutig sind) können Eingriffe des Benutzers erfolgen. Bei einer nachträglichen Registrierung (post registration) können diese Eingriffe beispielsweise Unterstützungen bei der Auswahl der Paare sein, bei einer Vorort-Registrierung (onsite registration) vorzugsweise zusätzliche Scans. In allen Fällen können Bestätigungen des Benutzers nach dem (vorgeschlagenen) Zusammenfügen von Clustern eingeholt werden.
-
Im Folgenden ist die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels mit Abwandlungen näher erläutert. Es zeigen
- 1 ein schematisiertes Flussdiagramm der automatischen Erzeugung der Cluster,
- 2 eine schematisierte Darstellung von Clustern,
- 3 eine schematisierte Darstellung zweier Scans in geteilter Ansicht,
- 4 ein schematisiertes Flussdiagramm des Zusammenfügens der Cluster,
- 5 eine schematische, teilweise geschnittene Darstellung eines Laserscanners im Betrieb, und
- 6 eine perspektivische Ansicht eines Laserscanners.
-
Die vorliegende Erfindung betrifft eine 3D-Koordinaten-Mess-Vorrichtung, die einen Lichtstrahl auf ein Objekt O lenkt, welches entweder ein (kooperatives) Target, beispielsweise ein Rückstrahler, oder ein nicht-kooperatives Target, beispielsweise eine diffus streuende Oberfläche des Objekts O, sein kann. Ein Entfernungsmesser im Gerät misst eine Entfernung zum Objekt O, und Drehwinkelgeber messen die Drehwinkel zweier Achsen im Gerät. Die gemessene Entfernung und die zwei Winkel ermöglichen einem Prozessor im Gerät, die 3D-Koordinaten des Objekts O zu bestimmen. Vorliegend wird derartige Vorrichtung der Fall eines Laserscanners 10 behandelt, aber die Erweiterung zu einem Lasertracker oder zu einer Gesamtstation liegt für den Fachmann auf der Hand.
-
Laserscanner werden typischerweise dazu verwendet, geschlossene oder offene Räume, wie zum Beispiel Gebäudeinnenflächen, Industrieanlagen und Tunnels zu erfassen. Laserscanner werden für viele Zwecke, einschließlich Building Information Modeling (BIM), Industrieanalysen, Unfallrekonstruktionsanwendungen, archäologische Studien und forensische Untersuchungen eingesetzt. Ein Laserscanner kann eingesetzt werden, um Objekte in der Umgebung des Laserscanners durch die Erfassung von Datenpunkten, die Objekte innerhalb der Umgebung darstellen, optisch zu erfassen und zu vermessen. Solche Datenpunkte erhält man, indem ein Lichtstrahl auf die Objekte gelenkt und das reflektierte oder gestreute Licht gesammelt wird, um die Entfernung, zwei Winkel (d.h. einen Azimutwinkel und einen Zenitwinkel), und optional einen Grautonwert zu ermitteln. Diese Roh-Scandaten werden gesammelt, gespeichert und an einen oder mehrere Rechner gesendet, um ein dreidimensionales Bild zu erzeugen, das den erfassten Bereich oder das erfasste Objekt darstellt. Zur Erzeugung des Bildes werden mindestens drei Werte für jeden Datenpunkt gesammelt. Diese drei Werte können die Entfernung und zwei Winkel umfassen, oder können umgewandelte Werte wie zum Beispiel x, y, z-Koordinaten sein.
-
Die Zeichnung zeigt einen Laserscanner 10 zum optischen Abtasten und Vermessen der Umgebung des Laserscanners 10. Der Laserscanner 10 weist einen Messkopf 12 und einen Fuß 14 auf. Der Messkopf 12 ist so auf dem Fuß 14 montiert, dass der Messkopf 12 um eine erste Achse 12a relativ zum Fuß 14 drehbar ist, angetrieben von einem ersten Drehantrieb. Die Drehung um die erste Achse kann um die Mitte des Fußes 14 erfolgen. Der Messkopf 12 weist einen Spiegel 16 auf, welcher sich um eine zweite Achse 16a drehen kann, angetrieben von einem zweiten Drehantrieb. Bezogen auf eine normale, aufrechte Position des Laserscanners 10, kann die erste Achse 12a als Vertikalachse oder Azimutachse bezeichnet werden, und die zweite Achse 16a kann als Horizontalachse oder Zenitachse bezeichnet werden.Der Laserscanner 10 kann einen Kardan-Punkt oder Zentrum C10 aufweist, welcher der Schnittpunkt der ersten Achse 12a und der zweiten Achse 16a ist.
-
Der Messkopf 12 weist ferner einen Sender für elektromagnetische Strahlung, beispielsweise einen Lichtsender 17 auf, der einen Sendelichtstrahl 18 aussendet. In der bevorzugten Ausführungsform ist der Sendelichtstrahl 18 ein kohärentes Licht wie zum Beispiel ein Laserstrahl. Der Laserstrahl kann eine Wellenlänge im Bereich von ca. 300 bis 1600 nm, beispielsweise 790 nm, 905 nm, 1550 nm, oder weniger als 400 nm aufweisen. Prinzipiell sind aber auch andere elektromagnetische Wellen mit größerer oder kleinerer Wellenlänge verwendbar. Der Sendelichtstrahl 20 kann amplitudenmoduliert oder intensitätsmoduliert sein, beispielweise mit einer sinusförmigen oder rechteckförmigen Wellenform. Alternativ hierzu kann der Sendelichtstrahl 18 auch anderweitig moduliert sein, beispielsweise durch ein Chirpsignal, oder es können kohärente Empfangsmethoden verwendet werden. Der Sendelichtstrahl 18 wird vom Lichtsender 17 auf den Spiegel 16 gegeben, dort umgelenkt und in die Umgebung des Laserscanners 10 ausgesandt.
-
Ein reflektierter Lichtstrahl, nachfolgend als Empfangslichtstrahl 20 bezeichnet, wird von einem Objekt O in der Umgebung reflektiert. Das reflektierte oder gestreute Licht wird vom Spiegel 16 eingefangen und auf einen Lichtempfänger 21 mit einer Empfangsoptik umgelenkt. Die Richtungen des Sendelichtstrahls 18 und des Empfangslichtstrahls 20 ergeben sich aus den Winkelstellungen des Messkopfes 12 und des Spiegels 16 um die Achse 12a bzw. 16a. Diese Winkelstellungen hängen wiederum von ihren jeweiligen Drehantrieben ab. Der Drehwinkel um die erste Achse 12a wird durch einen ersten Drehwinkelgeber erfasst. Der Drehwinkel um die zweite Achse 16a wird durch einen zweiten Drehwinkelgeber erfasst.
-
Eine Steuer- und Auswertevorrichtung 22 steht mit dem Lichtsender 17 und dem Lichtempfänger 21 im Messkopf 12 in Datenverbindung, wobei Teile derselben auch außerhalb des Messkopfes 12 angeordnet sein können, beispielsweise als ein am Fuß 14 angeschlossener Computer. Die Steuer- und Auswertevorrichtung 22 ist dazu ausgebildet, für eine Vielzahl von Messpunkten X eine entsprechende Anzahl von Abständen d zwischen dem Laserscanner 10 und den Messpunkten X auf dem Objekt O zu bestimmen. Der Abstand zu einem bestimmten Messpunkt X wird zumindest teilweise bestimmt durch die Laufgeschwindigkeit des Lichts in der Luft, durch die sich die elektromagnetische Strahlung vom Gerät zum Messpunkt X verbreitet. In der bevorzugten Ausführungsform wird die Phasenverschiebung im modulierten Lichtstrahl 18,20, der an den Messpunkt X gesendet und von dort empfangen wird, bestimmt und ausgewertet, um eine gemessene Entfernung d zu erhalten.
-
Die Lichtgeschwindigkeit in Luft hängt von den Lufteigenschaften wie zum Beispiel Lufttemperatur, Luftdruck, relative Luftfeuchtigkeit und der Kohlendioxidkonzentration ab. Diese Lufteigenschaften beeinflussen den Brechungsindex der Luft. Die Lichtgeschwindigkeit in Luft entspricht der Lichtgeschwindigkeit im Vakuum geteilt durch den Brechungsindex. Ein Laserscanner der vorliegend beschriebenen Art beruht auf der Lichtlaufzeit in der Luft (der Laufzeit, die das Licht benötigt, um von der Vorrichtung bis zum Objekt und wieder zurück zur Vorrichtung zu gelangen). Eine Methode der Entfernungsmessung auf Grundlage der Lichtlaufzeit (oder der Laufzeit einer anderen elektromagnetischen Strahlungsart) hängt von der Lichtgeschwindigkeit in Luft ab und ist daher leicht von Methoden der Entfernungsmessung mittels Triangulation zu unterscheiden. Bei Methoden auf Grundlage von Triangulation wird Licht von seiner Lichtquelle in eine bestimmte Richtung ausgestrahlt und dann auf einem Kamerapixel in einer bestimmten Richtung aufgefangen.
-
Dadurch, dass die Entfernung zwischen der Kamera und dem Projektor bekannt ist, und dass ein projizierter Winkel mit einem Empfangswinkel abgeglichen wird, ermöglicht die Triangulationsmethode die Bestimmung der Entfernung zum Objekt auf der Grundlage einer bekannten Länge und zweier bekannter Winkel eines Dreiecks. Die Triangulationsmethode hängt daher nicht direkt von der Lichtgeschwindigkeit in Luft ab.
-
Der Messkopf 12 kann eine Anzeigevorrichtung 24 umfassen, die im Laserscanner 10 integriert ist. Zur Anzeigevorrichtung 24 gehört eine Benutzerschnittstelle, die ein grafischer Touchscreen sein kann, wie in der Zeichnung dargestellt. Beispielsweise kann die Anzeigevorrichtung 24 über eine Benutzerschnittstelle verfügen, die es dem Bediener ermöglicht, dem Gerät Messinstruktionen zu erteilen, insbesondere die Parameter festzulegen oder den Betrieb des Laserscanners 10 zu starten, und die Anzeigevorrichtung 24 kann auch Messergebnisse anzeigen.
-
In einer Ausführungsform findet das Erfassen der Umgebung um den Laserscanner 10 mittels einer schnellen Drehung des Spiegels 16 um die zweite Achse 16a statt, während sich der Messkopf 12 langsam um die erste Achse 12a dreht, wobei sich die Baugruppe spiralförmig bewegt. In einer beispielhaften Ausführung dreht sich der Rotorspiegel mit einer Höchstgeschwindigkeit von 5820 Umdrehungen pro Minute. Ein Scan ist definiert als die Gesamtheit der Messpunkte X einer solchen Messung. Für einen derartigen Scan definiert das Zentrum C10 den Ursprung des lokalen stationären Bezugssystems. In diesem lokalen stationären Bezugssystem ruht der Fuß 14.
-
Zusätzlich zur Distanz d vom Zentrum C10 zu einem Messpunkte X kann der Laserscanner 10 noch einen Graustufenwert in Bezug auf die empfangene optische Leistung erfassen. Der Graustufenwert kann beispielsweise durch Integration des bandpass-gefilterten und verstärkten Signals im Lichtempfänger 21 über eine dem Messpunkte X zugeordnete Messperiode bestimmt werden. Optional können mittels einer Farbkamera 25 Farbbilder erzeugt werden. Mittels dieser Farbbilder können den Messpunkten X noch Farben (R,G,B) als zusätzliche Werte zugeordnet werden.
-
Um eine Szene aus verschiedenen Richtungen oder einen ausgedehnten Raum erfassen zu können, werden mehrere Scans von unterschiedlichen Standorten (entsprechend einer Menge unterschiedlicher Zentren) aus erzeugt und danach registriert in einem gemeinsamen Koordinatensystem XYZ der Szene. Der Laserscanner 10 hat dafür seinen Standort zu wechseln, womit dann jeweils das Zentrum C10 des Laserscanners 10 innerhalb des gemeinsamen Koordinatensystems XYZ bewegt wird zu einem neuem Zentrum aus besagter Menge.
-
Um die Scans zu registrieren, können punktbasierte Verfahren oder Verfahren mit Targets verwendet werden. Beispielhaft soll im vorliegenden Ausführungsbeispiel mittels Targets registriert werden. Die Targets werden in überlappenden Bereichen der Scans lokalisiert und identifiziert. Als Targets eignen sich sowohl „natürliche“ Targets, d.h. bestimmte Formationen des Objekts
O, als auch „künstliche“ Targets, d.h. speziell für den Scanvorgang am Objekt
O oder in der Umgebung angebrachte Targets, beispielsweise Schachbrettmuster. Vorzugsweise wird, wie es in der
DE 10 2009 015 922 A1 beschrieben ist, für jedes Target die Geometrie ermittelt, in welche es eingebettet ist und welche mittels der benachbarten Targets definiert ist. Die einbettenden Geometrien können dann miteinander verglichen werden, um zunächst Korrespondenzpaare der Targets und dann automatisch die bestmögliche Zuordnung der beiden Scans zu finden. Wenn alle Scans im gemeinsamen Koordinatensystem XYZ der Szene registriert sind, bildet die Gesamtheit aller Messpunkte X aller Scans eine dreidimensionale Punktwolke
3DP.
-
Normalerweise ist es möglich, mittels der Targets alle Scans zu registrieren, sogar ohne zusätzliche Informationen über die Relativpositionen der Zentren der Scans. Zur Verbesserung der Performance kann der Zeitstempel der Scans benutzt werden, um benachbarte Scans schneller zu finden und zu registrieren. Das Ergebnis der Registrierung kann mittels der Anzeigevorrichtung 24 dargestellt werden. Eine Bestätigung des Benutzers ist optional.
-
Es kann aber auch sein, dass Probleme bei der Registrierung auftreten, beispielsweise zu wenige Targets in überlappenden Bereichen der Scans, mehrdeutige einbettende Geometrien oder eine schwierige Topologie. Es kann auch sein, dass die Probleme vorhanden sind, aber nicht sofort erkannt werden, sondern erst vom Benutzer. Vorzugsweise werden daher automatisch Cluster erzeugt, die jeweils aus eindeutig zusammengehörenden Scans bestehen. Für die Definition dieser eindeutigen Zusammengehörigkeit können bestimmte Qualitätskriterien vorgegeben werden, die zu erfüllen sind. Ein solches Qualitätskriterium kann beispielsweise ein Schwellwert für die verbleibenden Abstandsquadrate der Targets nach erfolgter Zuordnung der einbettenden Geometrien sein, wobei das Qualitätskriterium mit steigender Übereinstimmung steigen soll.
-
In 1 zeigt eine schematisierte Darstellung der Vorgehensweise beim „Auto-Clustering“, wie sie beispielsweise mittels einer geeigneten Filtervorrichtung durchgeführt werden kann. Nach einem Startschritt 101 wird in einem Verarbeitungsschritt 102 ein erster Cluster Gl definiert und diesem der erste Scan {X(1)} - als zunächst einziger Scan - zugeordnet (angedeutet mit einem Pfeil). Dieser erste Scan {X(1)} definiert auch das Koordinatensystem des ersten Clusters Gl . Für eine nachfolgende Schleife, welche bei jedem Durchlauf einen Cluster Gm bearbeitet, ist daher beim ersten Durchlauf m = 1. Die weiteren Scans {X(i)} beginnen mit i = 2.
-
Es beginnt die besagte Schleife, die eine Verarbeitungsschritt 103 enthält, in welchem ein weiterer Scan {X(i)} im Koordinatensystem des (aktuell bearbeiteten) Cluster Gm testweise registriert wird. Aus Gründen der Performance, insbesondere weil der Cluster Gm sehr viele Targets enthalten kann, wird vorzugsweise aus dem zuletzt erfolgreich registrierten Scan und dem weiteren Scan {X(i)} ein Paar gebildet, das testweise registriert wird. In einem Entscheidungsschritt 104 wird geprüft, ob die testweise Registrierung erfolgreich war, d.h. die Qualitätskriterien für eine Registrierung erfüllt sind. Ist dies der Fall (Y), so wird in einem Verarbeitungsschritt 105 die Registrierung bestätigt, andernfalls (N) wird die testweise Registrierung verworfen.
-
In einem nachfolgenden Entscheidungsschritt 106 wird geprüft, ob noch weitere Scans {X(i)} vorhanden sind, die in dieser Schleife noch nicht testweise registriert wurden („freie Scans“). Diese Prüfung wird normalerweise anhand eines hochzählenden Schleifenzählers (vorzugsweise die Nummer „i“ des Scans) und geeigneter Flags erfolgen. Sind noch solche freien Scans {X(i)} vorhanden (Y), springt die Schleife zurück zum Verarbeitungsschritt 103 mit der testweisen Registrierung. Der Entscheidungsschritt 106 könnte auch am Anfang der Schleife erfolgen. Sind keine freien Scans {X(i)} mehr vorhanden (N), endet das „Auto-Clustering“ mit einem Endschritt 107.
-
Wird die testweise Registrierung nach dem Entscheidungsschritt 104 verworfen, so wird in einem Verarbeitungsschritt 108 ein neuer Cluster Gm (mit m=m+1) definiert und der zuletzt vergeblich testweise registrierte Scan {X(i)} diesem neuen Cluster Gm zugeordnet. Dieser letztgenannte Scan {X(i)} definiert das Koordinatensystem des neuen Clusters Gm. Das Verfahren wird dann mit dem Verarbeitungsschritt 103 der testweisen Registrierung fortgesetzt.
-
In einer Abwandlung hierzu wird bei einer erfolglosen testweisen Registrierung nicht sofort ein neuer Cluster begonnen, sondern für den aktuell bearbeiteten Cluster Gm noch eine bestimmte Anzahl der nächsten freien Scans {X(i)} getestet. Es ist in Hinblick auf die Performance sinnvoll, die Anzahl dieser noch zu testenden Scans zu beschränken, indem eine Schranke definiert wird, beispielsweise anhand des Zeitstempels oder der fortlaufenden Nummer der Scans, also eine räumliche und/oder zeitliche Schranke, so dass nur versucht wird, zeitlich (und damit in der Regel auch räumlich) benachbarte Scans testweise zu registrieren. Dies reduziert die Komplexität der Registrierung.
-
Alternativ zu dem beschriebenen, seriellen Verfahren können in einem eher parallelen Verfahren (entsprechend dem Kristallwachstum) die Scans {X(i)} paarweise auf eine testweise Registrierung geprüft werden. Aus den zusammengehörenden Paaren wird jeweils ein Cluster Gm gebildet (als Kristallisationskeim). Aus den Clustern Gm oder vorzugsweise aus einzelnen Scans aus den Clustern Gm einerseits und den freien Scans {X(i)} andererseits entstehen neue Paare, die wieder auf eine testweise Registrierung geprüft werden, bis schließlich keine weitere Registrierung erfolgreich ist.
-
Im Falle eines Gebäudes bestehen die Clusters Gm oft aus benachbarten Scans {X(i)} des gleichen Raumes, des gleichen Stockwerks, des gleichen Gebäudes oder von Innenbereich und Außenbereich.
-
Es bleibt das Problem, die Cluster Gm zusammenzufügen, beispielsweise auf einer geeigneten Registrierungsvorrichtung. Dabei ist wieder (wie im Verarbeitungsschritt 103) zu beachten, dass die Cluster Gm sehr viele Targets enthalten. Aus Gründen der Performance werden zur Bildung der Paare also vorzugsweise eher einzelne Scans {X(i)} aus den Clustern Gm ausgewählt als die gesamten Cluster Gm verwendet. Ein solcher aus einem ersten Cluster Gk ausgewählter Scan {X(i)} wird dann beispielsweise im Koordinatensystem eines zweiten Clusters Gl (testweise) registriert. Das Zusammenfügen der Cluster Gm kann visualisiert werden, beispielsweise um den Fortschritt anzuzeigen oder eine optionale Bestätigung des Benutzers einzuholen oder eine optionale Unterstützung des Benutzers anzufordern.
-
Eine mögliche erste Visualisierung („correspondence view“) ist die komprimierte Darstellung aller Cluster Gm nebeneinander, beispielsweise auf der Anzeigevorrichtung 24. Im Falle eines Gebäudes bietet sich an, eine Draufsicht der Cluster Gm zu wählen, entsprechend einem Grundriss des Gebäudes. In 2 ist dies beispielhaft mit drei Clustern Gk , Gl und Gm gezeigt, wobei die durchgezogenen Linien erkannte Wände und gestrichelten Linien die ungefähre Ausdehnung der dreidimensionalen Punktwolke 3DP andeuten sollen. Durch aktualisierten Visualisierungen wird der Fortschritt beim Zusammenfügen der Cluster gezeigt.
-
Eine mögliche zweite Visualisierung („split view“) ist die Darstellung des (aktuell bearbeiteten) Paares von Clustern Gk , Gl oder vorzugsweise ausgewählten Scans {X(i)}, {X(j)} aus den Clustern Gk , Gl , vorzugsweise in einer geteilten (Bildschirm-)Ansicht, wie in 3 dargestellt. Diese Darstellung der beiden Scans {X(i)}, {X(i)} mit ihren Targets T(i) 1, T(i) 2, T(i) 3, T(i) 4 und T(j) 1, T(j) 2, T(j) 3, T(j) 4 ist schematisiert, da die angenommene relative Verdrehung in der Realität unproblematisch wäre. Beide Visualisierungen können auch so kombiniert werden, dass ein Wechsel zwischen beiden möglich ist.
-
Das Zusammenfügen der Cluster Gm mit optionaler Visualisierung ist als Flussdiagramm in 4 dargestellt. Nach einem Startschritt 111 erfolgt in einem optionalen Ausgabeschritt 112 die zuvor beschriebene Visualisierung. In einem aufgerufenen (und später beschriebenen) Unterprogramm 113 werden zwei Cluster und vorzugsweise je weils ein Scan aus jedem der beiden Cluster ausgewählt, die zusammen ein Paar für eine testweise Registrierung bilden. Genauer gesagt, wird beispielsweise aus einem ersten Cluster Gk ein Scan {X(i)} ausgewählt, der im Koordinatensystem eines zweiten Clusters Gl testweise registriert werden soll, wofür wiederum repräsentativ aus diesem zweiten Cluster Gl ein Scan {X(j)} ausgewählt wird, und die beiden Scans {X(i)}, {X(j)} das besagte Paar bilden.
-
In einem Verarbeitungsschritt 114 wird versucht, das Paar - wie im Verarbeitungsschritt 103 - testweise zu registrieren und damit die Cluster zusammenzufügen. In einem Entscheidungsschritt 115 wird geprüft, ob ob dieses Zusammenfügen erfolgreich war. Ist dies der Fall (Y), so erfolgt im Verarbeitungsschritt 116 eine Bestätigung der Registrierung (entsprechend dem Verarbeitungsschritt 105), und optional ein erneuter Ausgabeschritt 117 entsprechend dem Ausgabeschritt 112. Andernfalls (N) bleiben die zwei Cluster getrennt. In einem weiteren Entscheidungsschritt 118 (der auch an anderer Stelle der Schleife angeordnet sein kann) wird geprüft, ob noch Cluster Gm vorhanden sind, die noch nicht zusammengefügt sind, also noch „frei“ sind. Ist dies der Fall (Y), wird die Schleife mit dem Aufruf des Unterprogramms 113 fortgesetzt, vorzugsweise unter Einschub eines Verarbeitungsschrittes 119. Andernfalls (N) sind alle Cluster Gm zusammengefügt, so dass mit einem Endschritt 120 abgeschlossenen werden kann. Der optionale, eingeschobene Verarbeitungsschritt 118, der auch zu Beginn der Schleife ausgeführt werden kann, ändert vorzugsweise Parameter, wenn bereits alle freien Cluster erfolglos bezüglich des Zusammenfügens getestet wurden. Insbesondere können die Qualitätskriterien für die testweise Registrierung von Scans reduziert werden.
-
Das Unterprogramm 113 mit der Auswahl und der Bildung der Paare kann auf verschiedene, abgewandelte Weisen umgesetzt sein.
-
Eine erste Möglichkeit ist es, die Cluster Gk , Gl und die Scans {X(i)}, {X(i)} für die Bildung der Paare strategisch auszuwählen. Werden zwei - bezüglich ihres Zeitstempels aufeinander folgende - Gk , Gl ausgewählt, so können mehrere Scans {X(i)} aus einem ersten Cluster Gk nacheinander (bei jedem Aufruf des Unterprogramms 113) ausgewählt und mit dem ersten Scan {X(j)} des - bezüglich des Zeitstempels späteren - zweiten Clusters Gl Paare zu bilden. Gegebenenfalls wird nur der letzte Scan {X(i)} aus dem ersten Cluster Gk ausgewählt. Dabei wird davon ausgegangen, dass der erste Cluster Gk in einer Sackgasse endet und der zweite Cluster Gl an einer früheren Stelle abzweigt, die aufgrund der vorzugsweise definierten räumlichen und/oder zeitlichen Schranke im Entscheidungsschritt 106 noch nicht geprüft wurde, d.h. die Schranke wird überschritten. Weitere Strategien sind möglich.
-
Da einige der Paare bereits einmal erfolglos geprüft wurden (was sinnvollerweise vermerkt wird), kann der Verarbeitungsschritt 118 mit den geänderten Parametern hilfreich sein. Mit dieser Umsetzung des Unterprogramms 113 (mit strategischer Auswahl) liegt ein vollständig automatisches Verfahren zur Auswahl der Cluster Gk , Gl und Scans {X(i)}, {X(j)} vor. Mit reduzierten Qualitätskriterien wird aber eine finale Bestätigung des Benutzers sinnvoll.
-
Eine zweite Möglichkeit ist es, im Unterprogramm 113 eine Unterstützung des Benutzers anzunehmen, d.h. ein halbautomatisches Verfahren zum Zusammenfügen der Cluster Gm.
-
Im Fall der erste Visualisierung mit den Clustern nebeneinander (2) kann der Benutzer vorzugsweise die Cluster relativ zueinander verschieben mittels eines geeigneten Eingabegeräts, beispielsweise einer Maus. Der Benutzer schiebt beispielsweise den Cluster Gl an den Cluster Gk , so dass die Punktwolken überlappen. Mit den Informationen aus den Eingabe- und Ausgabegeräten können die betroffenen Cluster Gk und Cluster Gl in räumliche Beziehung zueinander gesetzt werden und daraus die passenden Scans ausgewählt werden. Da sich die korrespondierenden Targets in unmittelbarer Nähe zueinander befinden, wird dann die testweise Registrierung im Verarbeitungsschritt 114 rasch erfolgreich sein.
-
Im Falle der zweiten Visualisierung in geteilter Ansicht mit den beiden Scans links und rechts (3). Die Targets T(i) 1, T(i) 2, T(i) 3, T(i) 4 des links dargestellten Scans {X(i)}sollen mit den Targets T(j) 1, T(j) 2, T(j) 3, T(j) 4 des rechts dargestellten Scans {X(j)} korrespondieren. Der Benutzer kann diese Korrespondenz herstellen mittels eines geeigneten Eingabegeräts, beispielsweise einer Maus oder einem Touchscreen. Zunächst wird versucht, mit zwei Paaren solcher korrespondierender Targets, beispielsweise T(i) 1 und T(j) 1 sowie T(i) 2 und T(j) 2, im Verarbeitungsschritt 114 die testweise Registrierung durchzuführen. Bei jedem weiteren Aufruf des Unterprogramm 113 würde dann ein weiteres Paar korrespondierender Targets angefordert.
-
Eine dritte Möglichkeit besteht im Falle einer Vorort-Registrierung („onsite registration“). Hierbei werden die Scans {X(i)} bereits registriert, d.h. zu einem Cluster zusammengefügt, während die Szene noch erfasst (d.h. optisch abgetastet und vermessen) wird, d.h. solange der Benutzer mit dem Laserscanner 10 noch vor Ort ist. Vorzugsweise erfolgt die Registrierung zwischen zwei Scans, wenn die Farbkamera 25 eingesetzt wird. Optional erlaubt der Laserscanner 10 den nächsten (ordentlichen) Scan {X(i)} erst, wenn eine Registrierung der bisherigen Scans erfolgreich war.
-
Sollte der bisherige Cluster beendet und ein neuer Cluster angefangen werden (müssen), d.h. wenn die testweise Registrierung erfolglos war, kann das Unterprogramm 113 beim Benutzer anfordern, wenigstens einen zusätzlichen (außerordentlichen) Scan {X(j)} zu erzeugen, sinnvollerweise in dem zuletzt aufgenommenen Bereich, aus welchem der soeben beendete Cluster und der neu angefangene Cluster (also die erfolglos zusammengefügte Cluster) stammen, und welcher dem Benutzer auch zeitnah angezeigt werden kann. Je später die Anforderung des zusätzlichen Scans {X(j)} erfolgt, desto schwieriger ist es für den Benutzer, den richtigen Bereich mit den erfolglos zusammengefügten Cluster zu finden.
-
Aus dem zusätzlichen Scan {X(j)} und ausgewählten, vorhandenen Scans {X(i)} des soeben beendeten Clusters werden die Paare gebildet. Die Auswahl kann wieder strategisch (und automatisch) erfolgen, wie bei der ersten Möglichkeit der Umsetzung des Unterprogramms 113. Wenn der beendete Cluster um den zusätzlichen Scan erfolgreich ergänzt wurde, wird versucht, den beendeten Cluster und den neu angefangenen Cluster zusammenzufügen. Gegebenenfalls erfolgt eine weitere Anforderung eines zusätzlichen Scans.
-
Bezugszeichenliste
-
- 10
- Laserscanner
- 12
- Messkopf
- 14
- Fuß
- 16
- Spiegel
- 17
- Lichtsender
- 18
- Sendelichtstrahl
- 20
- Empfangslichtstrahl
- 21
- Lichtempfänger
- 22
- Steuer- und Auswertevorrichtung
- 24
- Anzeigevorrichtung
- 25
- Farbkamera
- 101
- Startschritt (Cluster-Bildung)
- 102
- Verarbeitungsschritt (erster Scan erstem Cluster zuordnen)
- 103
- Verarbeitungsschritt (Versuch testweiser Registrierung)
- 104
- Entscheidungsschritt (testweise Registrierung erfolgreich)
- 105
- Verarbeitungsschritt (Bestätigung der Registrierung)
- 106
- Entscheidungsschritt (ungetestete Scans)
- 107
- Endschritt (Cluster-Bildung)
- 107
- Entscheidungsschritt (freie Scans)
- 108
- Verarbeitungsschritt (neuer Cluster)
- 111
- Startschritt (Cluster-Zusammenfügen)
- 112
- Ausgabeschritt (Cluster)
- 113
- Unterprogramm
- 114
- Verarbeitungsschritt (Versuch testweiser Registrierung)
- 115
- Entscheidungsschritt (erfolgreich)
- 116
- Verarbeitungsschritt (Bestätigung der Registrierung)
- 117
- Ausgabeschritt (Cluster)
- 118
- Entscheidungsschritt (freie Cluster)
- 119
- Verarbeitungsschritt (Parameter, insbesondere Qualitätskriterien)
- 120
- Endschritt (Cluster-Zusammenfügen)
- 3DP
- Punktwolke
- C10
- Zentrum des Laserscanners
- d
- Distanz
- Gl, Gk, Gm
- Cluster
- O
- Objekt
- T(i) 1..., T(j) 1...
- Target
- {X(i)}, {X(j)}
- Scan
- X
- Messpunkt
- XYZ
- Koordinatensystem