Für ein Beispielprojekt unseres Baukastensystems MapComponents waren wir auf der Suche nach einem Tutorial für die Installation von CloudCompare und seiner Verwendung für eine PointCoud. Leider vergeblich! Und so hat sich unser Auszubildender Jannik Brack selber ans Werk gemacht und ein Tutorial verfasst, dass wir Ihnen hier zur Verfügung stellen.
Um CloudCompare für Ubuntu zu installieren, öffnen Sie das Terminal (mit Strg + Alt + t) und geben den Befehl sudo snap install cloudcompare ein. Damit haben Sie zwei Programme (CloudCompare und CloudCompareViewer) auf dem Computer installiert. Im Rahmen dieses Beitrags konzentrieren wir uns auf die Nutzeroberfläche von CloudCompare. Die PointCloud sollten Sie vorab in einer LAS- oder LAZ-Datei gespeichert haben.
Um eine Datei zu öffnen, kann man diese entweder per „Drag and Drop“ in die Nutzeroberfläche (rot markierter Bereich) ziehen oder man kann diese über file -> open öffnen.
Nun öffnet sich ein PopUp-Fenster mit dem Titel „Open LAS File“. In diesem Fenster werden keine Änderungen vorgenommen, man kann einfach auf apply drücken um das LAS File zu laden.
Als nächstes öffnet sich ein Fenster, in dem man den „Global Shift“ anpassen kann. Falls in dem rot markierten Bereich Werte größer als 0 stehen sollten, setzen Sie diesen bitte auf 0 (damit die Skalierung unverändert bleibt) und bestätigen mit „yes“. WICHTIG! Bei allen hinzugefügten Objekten muss dieser global shift/scale einheitlich eingestellt werden!
Nun sieht das Programm so aus (In der Ansicht unten zeigen wir eine beispielhafte PointCloud).
Falls die PointCloud einfarbig und unübersichtlich ist, lohnt es sich (je nach Größe der Datei und Rechenleistung Ihres Computers), einen Shader einzuschalten. Dies ist unter display < shaders & filters möglich. Empfohlen wird der bereits vorinstallierte EDL shader. Dieser fügt schwarze Linien als Umrisse hinzu.
Nun ist die Position der PointCloud besser zu sehen und Sie können die PointCloud bewegen, drehen und zoomen.
Linksklick + Mausbewegen → PointCloud drehen
Rechtsklick + Mausbewegen → PointCloud bewegen
Mausrad betätigen → PointCloud zoomen
Doppelrechtsklick → PointCloud verschieben, auf eine vorher angeklickte Stelle auf der Rotationsachse.
Um eine PointCloud zuzuschneiden, muss diese zunächst im sogenannten DB-Tree ausgewählt werden. Um das zu tun, klicken Sie in der PointCloud auf die 3D-Darstellung oder den DB-Tree. Wenn die PointCloud ausgewählt ist, wird ein gelber Kasten um die PointCloud angezeigt und ist im DB-Tree blau markiert.
Im nächsten Schritt empfehlen wir, die PointCloud so zu drehen, dass Sie den Bereich, der ausgeschnitten werden soll, gut überblicken können. Wählen Sie anschließend in der oberen Menüleiste das segment symbol aus, dass einer Schere ähnelt.
Nun können Sie mit einem Linksklick Punkte platzieren, die sich mit Linien zu einem Polygon verbinden. Dieses Polygon markiert die ausgewählte Fläche. Mit einem Rechtsklick schließen Sie die Auswahl ab und bestätigen diese.
Nach Abschluss der Auswahl wird rechts oben ein neues Menü angezeigt.
Mit dem rot gefüllten Fünfeck (Abb. 9) können Sie alles auswählen, was sich innerhalb des oben gezeichneten Polygons befindet.
Der Kopf mit der roten Fläche und einem fünfeckigen Loch wählt alles, was sich außerhalb des gezeichneten Polygons befindet, aus. (In diesem Beispiel interessiert uns die Straße. Wir wählen den Knopf mit dem Fünfeck.)
Das Programm zeigt nochmals an, was ausgewählt wurde. Ein Linksklick auf den grünen Haken bestätigt diese Auswahl.
Nach dem Bestätigen wird die PointCloud in zwei Teile geteilt (Hinweis: beide Hälften sind sichtbar gestellt. Das lässt sich mit dem Haken neben dem Namen ändern). Die eine PointCloud enthält das Negativ, also das Gegenteil von dem, was wir ausgewählt haben.
Die andere PointCloud enthält das ausgewählte Objekt.
Sofern die PointCloud ausgewählt ist, kann diese als LAS-Datei gespeichert werden. Dies ist über file > save oder strg + s möglich. Man sollte allerdings darauf achten, dass in dem Speicherfenster als Dateityp LAS Cloud ausgewählt ist.
Nach der Bestätigung des Speicherortes öffnet sich ein weiteres Fenster. Wählen Sie hier original resolution… aus und bestätigen Sie mit OK.
Für diesen Schritt werden eine PointCloud sowie eine JP2-Datei (Was ist das für eine Datei?) mit den gleichen geografischen Daten benötigt. Ziel ist, die Farben der JP2-Datei auf die PointCloud zu übertragen. Das ist mit Hilfe von QGIS durch eine Umwandlung der JP2-Datei in eine TIFF-Datei möglich. Anschließend wechseln wir wieder zu CloudCompare und wenden die Farben auf die PointCloud an.
Die Anleitung (für Ubuntu) zum Downloaden finden Sie hier. Nach dem Download kann QGIS geöffnet werden.
Nach dem Öffnen von QGIS, ziehen Sie die JP2-Datei in den Layer-Bereich hinein.
Wählen Sie anschließend diese Datei aus, sodass sie blau hinterlegt ist, führen mit einem Rechtsklick die ausgewählte Datei aus und wählen unter Export Speichern als… aus. Es öffnet sich folgendes Fenster:
Änderungen für dieses Fenster:
Speichern Sie mit OK oder enter
Öffnen Sie nun CloudCompare. Die PointCloud sowie die TIFF-Datei werden, wie oben beschrieben, importiert (Hinweis: Da die TIFF-Datei als eine Cloud importiert werden soll, klicken Sie hier bitte yes).
Die TIFF-Datei befindet sich nun unter der PointCloud. Sie finden Sie, wenn Sie auf der linken Seite in die FrontView wechseln.
Wählen Sie nun mit strg + Linksklick beide Dateien aus und drücken den rot markierten Knopf in der oberen Menüleiste.
Bitte beachten Sie im folgenden Fenster, dass unter aligned die TIFF steht und die PointCloud als reference. Eine Repositionierung ist mit einem Klick auf OK möglich.
Ideales Ergebnis: Die TIFF-Datei steht in der horizontalen Mitte der PointCloud. Um Farben auf die PointCloud anzuwenden, wählen Sie beide Dateien mit strg + Linksklick und anschließend edit < colors < interpolate from another entity aus. (Hinweis: Dieser Prozess kann je nach PointCloud (im Beispiel 10.000.000 Punkte) sehr lange andauern.
Das Endergebnis sieht in unserem Beispiel wie folgt aus:
Die Daten für das Beispiel finden Sie hier: