Studienarbeit Praktikum Photogrammetrie

Gruppe 1: Beate Hugle, Arne Johannessen, (Dietmar Sauer), Holger Schropp

Erzeugen eines digitalen Geländemodells und Orthophotos durch automatische Bildkorrelation

Projektkontext

Die vorliegende Aufgabenstellung verlangt das automatische Berechnen eines DGMs für das Auswertegebiet Nr. 5, welches sich im Nordteil der Ortschaft Oberbergen bei Vogtsburg im Kaiserstuhl befindet, sowie die Erstellung eines Orthophotos desselben Gebiets. Die Höhen eines DGM (digitales Geländemodell) sind orographische Höhen, d. h. sie beziehen sich auf die natürliche Geländeoberfläche und lassen Kunstbauten und Vegetation außer acht. Um ein DGM zu erzeugen, sind folglich Messungen der natürlichen Geländehöhe notwendig.

In den für diese Aufgabe zu verwendenden Luftbildaufnahmen sind jedoch in bebauten und bewaldeten Gebieten nur die Oberflächen der Bebauung bzw. des Bewuchses zu erkennen, so dass sie lediglich zur Herstellung eines digitalen Oberflächenmodells (DOM) geeignet sind. Ein DGM lässt sich allein daraus nicht automatisiert ableiten. Mit einem präzisen DOM lassen sich jedoch wahre Orthophotos erzeugen. Auch wenn die Präzision unseres DOM schon aufgrund der anzuwendenden Gitterweite von 5 m nicht für wahre Orthophotos ausreicht, ist das DOM im Zweifel besser als ein DGM zur Entzerrung von Luftbildern für Orthophotos geeignet.

Das eigentliche Erzeugen eines DOM ist im Rahmen einer photogrammetrischen Mehrbildauswertung nach Durchführung einer Bündelblockausgleichung ohne Weiteres möglich, denn prinzipiell handelt es sich dabei um nichts anderes als eine massenhafte photogrammetrische Punktbestimmung in regelmäßigen Abständen. Die sehr hohe Anzahl zu bestimmender Punkte macht das manuelle Erzeugen des DOM allerdings unattraktiv, weswegen die Punktbestimmung üblicherweise auf dem Wege der automatischen Bildkorrelation durchgeführt wird.

Nach Aufgabe 1 steht der Bündelblock bereits. Ziel dieser Aufgabe 2 ist es somit primär, für das Erzeugen eines möglichst genauen DOM geeignete Parameter der automatischen Bildkorrelations-Algorithmen zu finden. Als Ergebnispräsentation sowie als Grundlage für die Aufgaben 3 und 4 soll ferner ein DOM entsprechend dieser Parameter erzeugt und dieses zum Herstellen eines Orthophotos verwendet werden.

Arbeitsorganisation

Das Bearbeiten der Aufgabe erfolgte mittels der ATE (Automatic Terrain Extraction), einer Funktion des Softwarepakets ERDAS LPS (Leica Photogrammetry Suite) in der Version 9.3 von 2008, die im Menü der GUI über „Process→DTM Extraction“ zu erreichen ist. Neben dem Handbuch für ATE in der Originalfassung in englischer Sprache von 2008 standen Fassungen des Handbuchs von zwei älteren Versionen des gleichen Softwarepakets von 2001 (Deutsch) bzw. 2006 (Englisch) sowie weitere Unterlagen zur Verfügung. Da die beiden Handbücher von 2008 und 2001 sich in einigen Punkten widersprechen, orientierten wir uns ausschließlich an der neuesten Fassung von 2008, die auch über die Hilfefunktion der Software aufzurufen war.

Um einen grundsätzlichen Überblick von der Funktionsweise von ATE sowie den angebotenen Einstellungsmöglichkeiten zu bekommen, erzeugten wir zunächst eine Anzahl DOMs und Orthophotos, ohne dabei die Parameter systematisch zu wählen. Wir verwendeten verschiedene Gitterweiten für das DOM und benutzten zunächst einige der voreingestellten Sätze von Strategieparametern für die Bildkorrelation (welche über die Schaltfläche „Advanced Properties“ zu erreichen sind, siehe 1), bevor wir auch selbst definierte Parametersätze probierten. Zur Visualisierung setzten wir Niveaulinien ein.

[screenshot] [screenshot]
Einstellungsdialoge für ATE. Einige der wichtigsten Einstellungen wie etwa die Strategieauswahl sind hinter der Bezeichnung „Advanced Properties“ verborgen.

Auffallend war, dass bei kleinerer Gitterweite die Waldgebiete sehr verbreitet grobe Fehler („Spikes“) enthielten, die sich auch nicht durch weiteres Herumprobieren beseitigen ließen. Bei größeren Gitterweiten ab etwa 40 m und aufwärts verschwanden diese zwar zunehmend, was uns in Anbetracht der Aufgabenstellung (5 m Gitterweite) aber nicht weiterhalf. Da ganz offensichtlich diese Spikes die mit Abstand größten Fehler im DOM darstellten und deren Auftreten von der Gitterweite abhing, verwendeten wir fortan ausschließlich die Ziel-Gitterweite von 5 m für alle weiteren Versuche.

Die Lektüre des Handbuchs lieferte uns zunächst keine konkreten Hinweise auf die Ursache der Spikes. Dies mag durch die zu bemängelnde Qualität des Handbuchs begünstigt worden sein: Allgemein beschreibt es mehr das „Was“ als das „Warum“ und scheint somit die Grundanforderungen an ein Handbuch zur Software-Dokumentation eigentlich nicht zu erfüllen. Es wird von zahlreichen trivialen Details aufgebläht, die teilweise gar mehrfach wiederholt werden, während die Funktionsweise von wichtigen Optionen eher allgemein oder teils sogar überhaupt nicht beschrieben ist.

Wir beschäftigten uns folglich zunächst erneut mit der Theorie der Bildkorrelation, um Erkenntnisse über mögliche Ursachen der Spikes zu erlangen.

Theoretische Grundlagen

Die automatische photogrammetrische Punktbestimmung erfolgt bei der Bildkorrelation im Wesentlichen in zwei Schritten: Zunächst werden – ausgehend von der durch die Bündelblockausgleichung bekannten relativen Orientierung zweier Stereobilder zueinander – mit Hilfe der Kernstrahlgeometrie (Epipolargeometrie) für einen gegebenen Bildpunkt in Bild A die ungefähren Koordinaten desselben Bildpunkts sowie der Verlauf der Kernlinie in Bild B berechnet. Zur rechnerischen Ermittlung der Höhe dieses Bildpunkts muss anschließend die Größe der x-Parallaxe bestimmt werden, was durch Mustererkennung suchend entlang der Kernlinie erfolgt.

Die Mustererkennung wird durch Berechnung eines Korrelationskoeffizienten für jedes zu prüfende Paar von Bildpunkten durchgeführt. Das Bildpunkte-Paar mit dem höchsten Koeffizienten wird als „Match“ ausgewählt und verwendet. Es werden nur Koeffizienten für Paare in einem bestimmten Suchbereich entsprechend der Größe der erwarteten Parallaxen berechnet. Der Korrelationskoeffizient drückt aus, wie gut der Bereich rund um den Bildpunkt in Bild B zur „Referenzmatrix“ aus Bild A passt.

Von diesen Überlegungen ausgehend ergibt sich eine Liste verschiedener möglicher Ursachen für falsche Höhenbestimmungen:

Anfangswerte für die Strategieparameter

Angesichts der zahlreichen möglichen Fehlerquellen mit sich widersprechenden Strategien zur Fehlerbeseitigung ist es hilfreich, Anfangswerte für die Strategieparameter vorliegen zu haben, die wenigstens grob passend sind.

Die Vorlesung hatte für die Größe des Suchbereichs entlang der Kernlinie („Search Size X“) 21 Pixel vorgeschlagen. Das ATE-Handbuch gibt statt dessen zwei Formeln vor, um diese Größe zu berechnen; es schreibt, beide Formeln seien äquivalent:

(mit Suchbereichsgröße entlang der Kernlinie Sx, Basis B, Brennweite f, durchschnittlicher Flughöhe H0, größter Höhe Zmax, kleinster Höhe Zmin, durchschnittlicher Überdeckung p und Unregelmäßigkeitsfaktor r ∈ [1,5; 2])

Sofort fällt auf, dass die beiden Formeln nicht offensichtlich äquivalent sind, denn die Dimensionen stimmen nicht überein: Sx ist dimensionslos (Pixel), aber bei der ersten Formel ist die Dimension des rechtsseitigen Terms eine Länge. Annahmen, es handele sich dabei um eine Länge in der realen Welt oder im Abbildungsmaßstab, können leicht numerisch widerlegt werden. Somit mussten wir feststellen, dass entgegen der Behauptung im Handbuch die beiden Formeln offenbar tatsächlich nicht äquivalent sind.

Eine weitere Annahme wäre, dass in der ersten Formel schlichtweg rechtsseitig ein Divisor von 1 mm fehlte, also demnach gelte:

Diese Annahme beruht auf der Überlegung, dass die Angabe der Brennweite f üblicherweise in Millimetern, aller anderen Längen jedoch in Metern erfolgt und die das Handbuch schreibende Person möglicherweise nicht mit Einheiten rechnen konnte oder wollte. Sie wird gestützt von dem Umstand, dass die erste Formel mit dem Divisor von 1 mm Ergebnisse in einer plausiblen Größenordnung liefert. Die Annahme konnte jedoch bisher nicht bewiesen werden.

Gehen wir davon aus, dass die Annahme wahr ist, oder verwenden wir alternativ die zweite der beiden Formeln aus dem Handbuch, so kommen wir in beiden Fällen zum gleichen Anfangswert von – je nach Unregelmäßigkeitsfaktor – etwa 13 bis 16 Pixeln für die Größe des Suchbereichs in der Richtung der Kernlinie („Search Size X“), also etwas kleiner als der in der Vorlesung vorgeschlagene Wert. Wir verwendeten zunächst 15 Pixel als Anfangswert.

Das Handbuch empfiehlt weiterhin für die Größe des Suchbereichs quer zur Kernlinie („Search Size Y“) 3 Pixel, die Größe der Referenzmatrix („Correlation Size“) ca. 7 bis 9 Pixel und für die Akzeptanzschwelle des Korrelationskoeffizienten („Correlation Coefficient Limit“) 0,7 bis 0,8. Diese Werte gelten für eine durchschnittliche Qualität des Aerotriangulations-Ergebnisses.

Neben den Möglichkeit, diese Strategieparameter manuell einzustellen, existieren auch mehrere Möglichkeiten, die Suche (in nicht näher bezeichneter Weise) „adaptiv“ zu machen oder deren Ergebnis zu „filtern“ (2). Vermutlich werden durch „adaptive“ Algorithmen die Strategieparameter selbsttätig verändert, um statistisch bessere Ergebnisse zu erzielen. Während die „adaptiven“ Optionen sowie die Filter-Optionen möglicherweise das Ergebnis tatsächlich qualitativ verbessern, so ist doch zu befürchten, dass sie die Untersuchung der einzelnen Parameter durch Abschwächung deren Ausprägungen behindern. Aus diesem Grund, und weil diese Optionen im Handbuch nahezu völlig undokumentiert sind, entscheiden wir uns dazu, diese Optionen bis auf Weiteres abgeschaltet zu lassen.

[screenshot]
Manuelle Vorgabe eigener Strategieparameter und Einstellungen für die Filter.

Vergleichende empirische Untersuchung der Strategieparameter

Um die Qualität des jeweiligen Ergebnisses verschiedener Parameter ansatzweise beurteilen und vergleichen zu können, aktivierten wir in ATE das Erzeugen eines „DTM Status Output Image“. Diese Option erzeugt eine Rasterkarte mit Angabe des Korrelationskoeffizienten für die einzelnen Punkte, in farbcodierte Klassen eingeteilt (hellgrün 1,00–0,85; dunkelgrün 0,85–0,70; gelb 0,70–0,50). Zusätzliche Farben werden für nicht korrelierte Punkte verwendet (orange und rot). Weiterhin machten wir uns zu nutze, dass ATE direkt Niveaulinien als Shapefile ausgeben kann („Contour Map“). Beide Einstellungen erfolgen in den sog. „Advanced Properties“ (3).

[screenshot]
Aktivieren des „Status Image“ und der „Contour Map“ in den „Advanced Properties“.

Die Beurteilung der Ergebnisqualität eines DOM (oder DGM) ist jedoch ausschließlich anhand des Korrelationskoeffizienten und der generierten Höhenlinien nicht gut möglich. Zwar ermöglichen es uns diese Daten in vielen Fällen, vergleichende Aussagen zu treffen, aber diese Aussagen beziehen sich eigentlich nur auf statistische Größen und haben daher in Bezug auf die tatsächlichen Höhenverhältnisse vor Ort nur begrenzte Aussagekraft.

Ähnliches gilt für die Residual- und Error-Angaben im Ergebnisbericht; diese Größen beziehen sich auf die Unterschiede zwischen der sich aus dem Block ergebenden Höhe der Pass- und Verknüpfungspunkte einerseits und der Höhe des DOM an genau diesen Punkten andererseits. In Gebieten mit höherer x-Parallaxe, wie etwa Waldgebeiten und Ortschaften, sind hier größere Abweichungen durchaus zu erwarten – z. B. wenn die Tie-Point–Korrelation an der Spitze eines Dachgiebels erfolgte, das DOM aufgrund der großen Gitterweite von 5 m (lt. Aufgabenstellung) jedoch die Kanten des Gebäudes nicht oder nur ungenau erfasst.

Als Hilfsmittel nutzten wir die Möglichkeit, mit dem DOM ein Orthophoto herzustellen und durch Überlagerung dieses Orthophotos mit den Höhenlinien auch deren Plausibilität in Bezug auf die tatsächlichen Verhältnisse überprüfen zu können. Da das Orthophoto in Waldgebieten wenig Informationen über den möglichen Geländeverlauf liefert, digitalisierten wir für einige kleinere Waldgebiete weiterhin einige Gerippelinien aus einer TK25 in alter Kartengrafik.

In einem unserer ersten systematischen Vergleiche betrachteten wir unterschiedliche Größen der Referenzmatrix (4). Auf das Gesamtgebiet des DOM bezogen, lieferte 9×9 die besten Ergebnisse in Waldgebieten; in offenem Gelände schienen uns 9×9 und 11×11 in etwa gleich gut zu sein. In der Ortschaft zeigten sich bei kleiner Referenzmatrix viele Kleinformen, die jedoch in den meisten Fällen nicht der Bebauung zugeordnet werden konnten, sondern eher Störungen zu sein schienen. Angesichts des bei steigender Größe der Referenzmatrix zunnehmend ruhigen Bilds schien uns 15×15 der beste Wert für die Ortschaft zu sein.

(Obschon nicht alle angesprochenen Feststellungen im Ausschnitt der folgenden Abbildungen enthalten sind, wurde der besseren Vergleichbarkeit halber überall in diesem Dokument derselbe Ausschnitt verwendet.)

[#18] [#17] [#19] [#20] [#21] [Orthophoto mit AOI]
Referenzmatrizen 7×7, 9×9, 11×11, 13×13, 15×15 (Orthophoto zum Vergleich). Invariant: Suchbereich 15×3, Akzeptanzschwelle 0,8.

Bei variiernder Akzeptanzschwelle für den Korrelationskoeffizienten zeigten sich bei steigender Schwelle immer weniger Spikes im Wald, was aber vermutlich auch mit an einer deutlich kleineren Anzahl von korrelierten Punkten überhaupt liegt. Das Ergebnis könnte somit möglicherweise insgesamt ungenauer sein, zumal außerhalb des Walds eine stark erhöhte Schwelle zu erkennbar schlechteren Ergebnissen führt. Insgesamt scheint das beste Ergebnis bei einer Schwelle von 0,80 oder 0,85 produziert zu werden (5).

[#22] [#25] [#17] [#24] [#23] [Orthophoto mit AOI]
Akzeptanzschwellen 0,70; 0,75; 0,80; 0,85; 0,90 (Orthophoto zum Vergleich). Invariant: Suchbereich 15×3, Referenzmatrix 9×9.

Nachdem unser Bündelblock aus Teilaufgabe 1 eine recht gute Qualität zu haben scheint, wäre die Verkleinerung des Suchbereichs quer zur Kernlinie von 3 auf 1 zu erwägen. Im Vergleich zeigt sich tatsächlich im Wald ein erheblich verbessertes Ergebnis mit deutlich weniger Spikes. Auch ansonsten gibt es beim Suchen nach Matches neben der Kernlinie erkennbar mehr Fehlmatches (z. B. auch recht deutlich in einigen sehr flachen Rebengebieten), wobei allerdings die Unterschiede zwischen den Werten 3 und 5 überraschend gering sind (6).

[#26] [#24] [#27]
Suchbereich (Y) 1, 3, 5. Invariant: Suchbereich (X) 15, Referenzmatrix 9×9, Akzeptanzschwelle 0,85.

Wir wiederholten den Vergleich verschiedener Akzeptanzschwellen mit dem auf die Kernlinie beschränkten Suchbereich (7). Wie schon zuvor schien sich bei steigendem Schwellenwert die Qualität des Ergebnisses eher zu verschlechtern; der Schwellenwert 0,90 war sehr deutlich erheblich zu hoch. Allgemein schien es das beste Ergebnis bei etwa 0,80 zu geben, im Wald war es an einzelnen Stellen bei 0,85 geringfügig besser.

[#28] [#29] [#26] [#30] [Orthophoto mit AOI]
Akzeptanzschwellen 0,75; 0,80; 0,85; 0,90 (Orthophoto zum Vergleich). Invariant: Suchbereich 15×1, Referenzmatrix 9×9.

Bisher ungetestet war eine Variation der Größe des Suchbereichs entlang der Kernlinie (8). Beim Vergleich stach ins Auge, dass in flachem Gelände ein kleinerer Suchbereich zu deutlich besseren Ergebnissen führte; mit einem Wert von 9 gab es dort das bislang beste Ergebnis. Im Ort schien es mit 13 ein recht gutes Ergebnis zu geben; ein weiter steigender Wert änderte dort wenig bis gar nichts. Im Wald schien uns der Wert 15 den besten Kompromiss zwischen zu klein (zu wenige Matches) und zu groß (zu viele Fehlmatches) zu ergeben.

[#33] [#31] [#34] [#29] [#37] [#35]
Suchbereich (X) 9, 11, 13, 15, 17, 19. Invariant: Suchbereich (Y) 1, Referenzmatrix 9×9, Akzeptanzschwelle 0,80.

Zum Vergleich testeten wir auch einige X-Größen des Suchbereichs bei einer Y-Größe von 3 (9). Es zeigte sich, dass anscheinend bei Sy = 3 Änderungen an Sx insgesamt zu weniger Änderungen am Ergebnis führen als bei Sy = 1. Allerdings waren verbreitete Unterschiede gegenüber dem vorhergehenden Test festzustellen. Auf das Gesamtgebiet des DOM bezogen, fanden wir jedoch die Tendenz der Ergebnisse für Sy = 1 bestätigt.

[#32] [#17] [#36]
Suchbereich (X) 11, 15, 19. Invariant: Suchbereich (Y) 3, Referenzmatrix 9×9, Akzeptanzschwelle 0,80.

Es ergaben sich damit unsere optimierten Strategieparameter, unterschieden nach Art des Geländes:

Nachdem der Wald das schwierigste Gebiet für den Korrelationsalgorithmus darstellt und die für den Wald optimierten Parameter auch außerhalb des Walds recht gute Ergebnisse liefern, können die Parameter für den Wald auch als optimierte Parameter für den Gesamtraum gelten.

Adaptive Strategieparameter für die Korrelation

Da auch nach Optimierung der Strategieparameter noch unverändert die Existenz erheblicher Fehler in Waldgebieten offensichtlich ist, versuchen wir erneut, durch Rekapitulation von Handbuch und Theorie zu neuen Erkenntnissen gelangen. Nachdem weder hierdurch noch durch Hilfestellung von Herrn Otto eine Lösung des Problems sichtbar wird, gleichzeitig aber von einer anderen Gruppe bekannt ist, dass es unter den vorliegenden Umständen grundsätzlich möglich ist, ein DOM ohne Spikes zu erzeugen, testeten wir ungezielt weitere Einstellungsmöglichkeiten.

Im Rahmen der Strategieparameter für die Bildkorrelation besteht die Möglichkeit, die Größe des Suchfensters und der Referenzmatrix sowie das Limit des Korrelationskoeffizienten als „adaptiv“ einzustellen. Für diese Option ist weder ein Schaltelement in der Benutzeroberfläche noch eine Dokumentation vorhanden. Vermutlich führt sie dazu, dass ATE von selbst diese Parameter verändert, sofern erkannt wird, dass sie nicht optimal sind. Ob diese Änderung konstant für das gesamte Korrelationsgebiet oder örtlich unterschiedlich erfolgt, ist unbekannt.

Aktiviert wird die Einstellung der Strategieparameter als „adaptiv“ über eine Strategie-Datei mit Namensendung .dat (10). Wir definierten in einer gespeicherten Strategie-Datei mit den zuvor ermittelten, optimierten Parametern diese als „adaptiv“ und erzeugten damit ein DOM. Dessen Niveaulinien haben deutliche Unterschiede zu denen der nicht-adaptiven Strategie mit gleichen Parametern, die Qualität erschien in diesem Fall jedoch insgesamt ähnlich. Nach wie vor gab es Spikes im Wald (11). Allerdings waren die Residuals erheblich kleiner. Die Einstellung der Strategie-Parameter als „adaptiv“ scheint somit das Gesamtergebnis zu verbessern.

Kaiserstuhl Stragegy Search Size = 15x1 Search Adaptive = TRUE Correlation Size = 9x9 Correlation Adaptive = TRUE Coefficient Limit = 0.8 Coefficient Adaptive = TRUE Topographic Type = rolling_hills Object Type = forest Use Band = 1 DTM Filtering = none Object Filtering = FALSE ⋮
Kaiserstuhl_Strategy_38.dat, eine von Hand angepasste Strategiedatei mit adaptiven Parametern
[#29] [#38] [Orthophoto mit AOI]
adaptive Parameter: aus, ein (Orthophoto zum Vergleich). Invariant: Suchbereich 15×1, Referenzmatrix 9×9, Akzeptanzschwelle 0,80.

Adaptiver Korrelations-Algorithmus

Wie sich weiterhin zeigte, existiert neben den „adaptiven Parametern“ auch eine Option in der Benutzeroberfläche namens „Adaptive ATE“. Hierbei handelt es sich um eine weitere, unabhängige Funktion. Auch das „Adaptive ATE“ ist so gut wie gar nicht dokumentiert; im Handbuch steht lediglich, es handele sich um einen „advanced algorithm“. Einschalten der Option „Adaptive ATE“ führt plötzlich auch in Waldgebieten zu differenzierter Höhendarstellung, die selbst bei einer Gitterweite von 5 m nahezu völlig frei von Spikes ist! Offensichtlich ist also in unserem Fall das Verwenden der Option „Adaptive ATE“ zwingend, um ein brauchbares Ergebnis zu erhalten (12).

[#29] [#39] [Orthophoto mit AOI]
„Adaptive ATE“: aus, ein (Orthophoto zum Vergleich). Invariant: Suchbereich 15×1, Referenzmatrix 9×9, Akzeptanzschwelle 0,80; adaptive Parameter aus.

Eine weitere Folge von „Adaptive ATE“ war die Verkleinerung des Abdeckungsbereichs des DOMs so weit, dass unser Untersuchungsgebiet nicht mehr vollständig abgedeckt war (12). Es wurde somit also nötig, das Endergebnis-DOM aus mehreren DOM zu einem Mosaik zusammenzusetzen (dies schien uns zuvor vermeidbar zu sein). Es fiel allerdings ferner auf, dass bei Verwendung von „Adaptive ATE“ zum Teil minimale Änderungen der Parameter erhebliche Änderungen am Ergebnis nach sich ziehen. Dieser Effekt ist so stark, dass wir fast den Eindruck bekamen, „Adaptive ATE“ verhalte sich nicht-deterministisch (z. B. ist bei leichter Änderung des Gebiets, für welches das DOM berechnet wird, die Änderung des Verlaufs der Höhenlinien unvorhersehbar und das Auftreten von Spikes im Wald scheint nur vom Zufall abzuhängen; im Ort sieht es kaum besser aus; siehe 13). Da wir aufgrund dieser Eigenschaft von „Adaptive ATE“ für den Fall einer manuellen Schnittbestimmung für das Mosaik Sprünge in der Höhe entlang der Kanten des Mosaik befürchteten, wurde die automatische Mosaikbildung für das DGM gewählt, die im Übrigen auch zufriedenstellende Ergebnisse liefert.

[#46] [#47] [Orthophoto mit AOI]
Zwei DOM mit leicht unterschiedlichen, runden Eckkoordinaten (Orthophoto zum Vergleich). Invariant: alle Parameter; adaptive Algorithmen ein.

Die Übereinstimmung des DOM mit den Geripplinien aus der TK25 war bei den Formlinien überaschend gut und auch bei Kamm- und Tallinien einigermaßen zufriedenstellend (14). Angesichts der unterschiedlichen Höhenbezüge (Baumkronen für das DOM bzw. Geländeoberfläche für die topographischen Geripplinien) sind gewisse Abweichungen aber sowieso zu erwarten.

[Screenshot von Formlinien]
DOM-Höhenlinien und Geripplinien (Formlinien strichliert) vor Orthophoto.

Im Übrigen fiel noch auf, dass bei Verwendung von „Adaptive ATE“ das Status Image und der Bericht keine unkorrellierten Punkte mehr zeigen (kein Orange oder Rot mehr). Jedoch war rund ein Zehntel der Punkte gelb gefärbt und stand im Bericht im Abschnitt „General Mass Point Quality“ in der Gruppe „fair (0,70–0,50)“. Bei deaktiviertem „Adaptive ATE“ gibt die Zahl in Klammern dort den Korrelationskoeffizienten an. Bei aktivem „Adaptive ATE“ kann dies jedoch nicht der Fall sein, denn wir verwendeten hier ausschließlich Akzeptanzschwellen für den Korrelationskoeefizienten von 0,80 und größer, somit dürfte keiner der „gelben“ Punkte hier erfolgreich korreliert sein. Diese Angabe ändert folglich offensichtlich für „Adaptive ATE“ ohne jede Warnung ihre Bedeutung. Diese Eigenart ist leider genau so wie der Rest von „Adaptive ATE“ undokumentiert. Dass ein Bug in der Software vorliegt, wäre ebenfalls denkbar, lässt sich aber mangels Dokumentation auch nicht überprüfen.

Optimierung des Ergebnisses

Im Lauf der Versuche fiel beim Lesen des ATE-Berichts auf, dass an bestimmten Verknüpfungspunkten immer oder fast immer erhebliche Unterschiede (Residuals) zwischen DOM-Höhe und Bündelblock-Höhe auftreten. In einigen Fällen erreichen diese Größenordnungen von einigen Dutzend, in einem extremen Fall sogar rund 200 m.

Zunächst waren die zahlreichen Spikes in Waldgebieten eine naheliegende Erklärung für die großen Residuals. Auch bei aktiviertem „Adaptive ATE“ – weitgehend ohne Spikes – treten jedoch noch große Residuals an den meisten der gleichen Punkten auf. In Waldgebieten sind Residuals in der Größenordnung der Höhe der Baumkronen möglicherweise kein Zeichen für grobe Fehler – sie wären womöglich dadurch zu erklären, dass die Verknüpfungspunkte in einer kleinen Lichtung auf dem Boden liegen, das DOM sich jedoch eher an der Höhe der umliegenden Bäume orientiert. Tatsächlich liegen die meisten der fraglichen Punkte im Wald.

Bei stichprobenartiger Prüfung der Verknüpfungspunkte sahen wir zunächst keine offenkundigen Korrelationsfehler, sorgfältigeres Betrachten der Punkte ließ uns dann aber bei einem Punkt doch einen Fehler erkennen (15). Diesen Punkt entfernten wir zusammen mit drei weiteren, die aufgrund der Nähe zu Schatten nicht eindeutig zu beurteilen waren, aus dem Block, rechneten diesen neu und erzeugten ein neues DOM. Diese Maßnahme brachte eine leichte Verbesserung der Statistik; der RMSE schwankt nun im Bereich von etwa 1 m bis 2 m.

[screenshot]
Entfernen des falsch korrelierten, automatischen Verknüpfungspunkts 1853 aus dem Bündelblock.

Unser Ergebnis ist an diesem Punkt für eine Orthophoto-Entzerrung schon recht gut geeignet. Dank „Adaptive ATE“ konnten die groben Fehler in Waldgebeiten ausgeräümt werden, und mit den für den Wald als schwierigstes Gebiet optimierten Strategieparametern sind zufriedenstellende Ergebnisse im gesamten Gebiet zu erreichen.

Eine Möglichkeit zur weitern Optimierung bestünde zunächst durch die naheliegende Option, durch Anwendung von je nach Geländetyp individuell optimierten Strategieparametern im offenen Gelände und im Ort das Ergebnis eventuell geringfügig zu verbessern. Diese Option wird von ATE angeboten (unter „Advanced Properties→Area Selection“), wurde jedoch von uns primär aus Zeitgründen nicht eingesetzt. Darüber hinaus erwarteten wir aber nach den vorhergehenden Parameter-Vergleichen hierduch auch keine signifikante Verbesserung.

Im Dialogfeld für die Einstellung der Strategieparameter existieren aber weiterhin Optionen zur Filterung des Ergebnisses nach diversen Kriterien. Zunächst testeten wir das „Smoothing“. Diese Bezeichnung fanden wir etwas irreführend, denn wie dem Handbuch zu entnehmen ist, handelt es sich hierbei nicht um einen kleinere Störungen glättenden Tiefpass-Kernelfilter, sondern tatsächlich um eine qualitative Beurteilung der einzelnen Punkte und deren Ersetzen durch eine Interpolation, sofern die Beurteilung nicht positiv ausfällt. Es ist jedoch in dieser Funktion auch ein glättendes Moment enthalten, das (in nicht näher dokumentierter Weise) vom eingestellten „Topographic Type“ abhängt.

Beim Test zeigte sich, dass zwar in der Tat scheinbar ein einem Tiefpass ähnlicher Effekt zu erkennen ist, es sich jedoch nicht tatsächlich um einen Tiefpass handelt, denn lokal fügte der Filter mehr Spikes bzw. hochfrequente Artefakte sogar neu hinzu. Insgesamt schien der Effekt des Smoothing-Filters aber deutlich positiv zu sein. Es gab sehr verbreitet Veränderungen, und der RMSE sank dramatisch. Allerdings brachten die Stufen „moderate“ und „high“ kaum Veränderungen über „low“ hinaus – wenn überhaupt, schienen die höheren Stufen das Ergebnis eher wieder zu verschlechtern. (16)

[#29] [#41] [#42] [#43] [Orthophoto mit AOI]
Smoothing: none, low, moderate, high (Orthophoto zum Vergleich). Invariant: Suchbereich 15×1, Referenzmatrix 9×9, Akzeptanzschwelle 0,80; adaptive Algorithmen aus.

Diese Beobachtungen konnten wir sowohl ohne als auch mit „Adaptive ATE“ machen (17). Für ein optimiertes Ergebnis sollte folglich das Smoothing auf der Stufe „low“ aktiviert werden.

[#39] [#46] [Orthophoto mit AOI]
Smoothing: none, low (Orthophoto zum Vergleich). Invariant: Suchbereich 15×1, Referenzmatrix 9×9, Akzeptanzschwelle 0,80; adaptive Algorithmen ein.

Darüber hinaus existiert ein „Object Filter“, der jedoch leider völlig undokumentiert ist, in der GUI durch die Einstellungsmöglichkeit „forest“ jedoch eine Verbesserung im Wald verspricht. Seine probeweise Verwendung brachte insgesamt nur geringe Änderungen. An einigen Stellen (v. a. im Ort) war das Ergebnis anscheinend besser, an anderen (v. a. im Wald) dagegen schlechter (18). Angesichts der zahlreichen, unklaren Einstellungsmöglichkeiten, der fehlenden Dokumentation und des widersprüchlichen ersten Ergebnisses verzichteten wir aus Zeitgründen auf eine weitere Untersuchung.

[#41] [#45] [Orthophoto mit AOI]
Object Filter: aus, ein (Orthophoto zum Vergleich). Invariant: alle Parameter; adaptive Algorithmen ein; Smoothing low.

Entzerrung von Luftbildern zu Orthophotos

Das Erzeugen eines entzerrten Orthophotos anhand eines digitalen Höhenmodells ist mit LPS (Leica Photogrammetry Suite) sehr einfach möglich. Wir öffneten dazu im Project Manager die bestehende Blockdatei und wählten das Luftbild, auf dessen Grundlage das Orthophoto erstellt werden sollte, aus (19). Die Wahl kann frei getroffen werden; aus naheliegenden Gründen ist es jedoch sinnvoll, ein Luftbild zu wählen, welches das Gebiet des zu erstellenden Orthophotos vollständig abdeckt und außerdem über guten Kontrast verfügt sowie einheitlich belichtet ist.

[screenshot]
Aufrufen der LPS-Funktion zur Entzerrung von Luftbildern zu Orthophotos
Die möglichen Einstellungen für die Entzerrung sind überwiegend selbsterklärend (20). Das Quell-Luftbild ist entsprechend der Auswahl im Project Manager voreingestellt. Als Höhenquelle für die Entzerrung wird das zuvor errechnete DOM ausgewählt. Die Pixelgröße des Orthophotos war im Rahmen der Aufgabenstellung mit 1 × 1 m² vorgegeben worden. Die Gebietsgrenzen des Orthophotos werden im gewählten Landeskoordinatensystem durch die Lage der Nordwest-Ecke (upper left – UL) und Südost-Ecke (lower right – LR) angegeben. Da wegen der geringen Größe des Orthophotos die Interpolationsmethode keine Rolle hinsichtlich der Laufzeit spielt, wählten wir „Cubic Convolution“, um durch so verringertes Aliasing die Bildqualität zu verbessern.
[screenshot]
Einstellungen für die Orthophoto-Entzerrung

Ergebniskritik

Auch nach der Blockkorrektur weisen zwei Verknüpfungspunkte noch extreme Unterschiede (Residuals) zwischen DOM-Höhe und Bündelblock-Höhe auf, der eine sogar von bis zu 200 m (Punkt 1450). Dieser Extremfall erklärt sich durch einen Funkturm, der in unmittelbarer Nähe des fraglichen Punkts steht (21). Der erheblichen Parallaxe nach zu urteilen, könnte die Höhe des Turms durchaus viele Dutzend Meter betragen, auch volle 200 m halten wir für nicht ausgeschlossen. An dieser Stelle ist der (manuell gemessene) Verknüpfungspunkt offensichtlich korrekt, das DOM weicht jedoch hier trotzdem stark ab, weil die Bildkorrelation offenbar mit dem Turm nicht gut zurecht kommt. Diesen Verknüpfungspunkt änderten wir nicht, weil dadurch unserer Ansicht nach die Stabilität des Blocks nicht verbessert werden würde. Gleiches gilt für den in der Nähe liegenden, automatisch ermittelten Verknüpfungspunkt 1859.

[screenshot]
Funkturm mit erheblicher Höhe bei manuell gesetztem Verknüpfungspunkt 1450

Um zu verhindern, dass diese erwarteten, hohen Residuals unsere Statistik verfälschen, entfernen wir diese beiden Verknüpfungspunkte aus der Statistik. Dies erlaubt ATE im Karteireiter „Accuracy“. Unser Endergebnis hat so einen RMSE von 0,9 m, womit wir recht zufrieden sind. Der endgültige Report liegt diesem Dokument im Auszug als Anlage bei.

Weiterhin ließe sich die Form der DOM-Höhenlinien sowie die verbliebenen Spikes eventuell durch Anwendung eines Tiefpass-Kernelfilters verbessern. Vielleicht würde sich dies sogar positiv auf den Funkturm auswirken. Die Gesamtgenauigkeit würde jedoch vermutlich eher darunter leiden. Die zuvor getesteten höheren Stufen der „Smoothing“-Filterung stützen diese Vermutung.

Zum Generieren eines Orthophotos wäre ein etwas glätteres, ungenaueres Ergebnis jedoch womöglich zu bevorzugen. Jedenfalls erscheinen die Pixel des Orthophotos an wenigen einzelnen Stellen mit unregelmäßigen Höhenlinien etwas stärker verzeichnet als anderswo. Insgesamt sind wir mit der Qualität des Orthophotos jedoch zufrieden.

Generierung von Höhenlinien aus automatisch erstelltem DGM und Laserscan-Daten

Höhenbezug der Laserscan-Daten

Mit dem LIDAR-Verfahren (Light Detection and Ranging) ist es theoretisch denkbar, durch geschickte Filterung der Messergebnisse sowohl Geländehöhe als auch Oberflächenhöhe gleichzeitig zu ermitteln. Ermöglicht wird das Erreichen des Geländes auch in Waldgebieten durch die sehr genaue Fokussierung des Lasers, die auch bei dichterem Bewuchs häufig noch an einer genügenden Anzahl einzelner Stellen durch das Blattwerk dringt, um anschließend eine gute Interpolation der Geländehöhe zu ermöglichen. Der Messwert mit der niedrigsten Höhe („last return“) wird dann als Geländehöhe und der Messwert mit der größten Höhe („first return“) als Oberflächenhöhe angesehen. Bei Gebäuden funktioniert das analog.

In den vorliegenden Laserscan-Daten ist auch in der Tat eine Filterung entsprechend des „last return“ vorgenommen worden. Dies wird offensichtlich bei Betrachtung des Verlaufs der aus den Laserscan-Daten resultierenden Höhenlinien mit einer Äquidistanz von 0,5 m im Bereich des Waldrands und von Gebäudekanten. (1)

[screenshot]
Laserscan-Höhenlinien entsprechen am Rand von Wald und Gebäuden dem Geländeverlauf.

Es liegt folglich in den Laserscan-Daten ein echtes Geländemodell (DGM) vor – im Gegensatz zum zuvor in Teilaufgabe 2 per Bildkorrelation erzeugten DOM, das z. B. im Wald die Kronenhöhe angibt.

Erzeugen des DGM mit ArcGIS

Um aus den Laserscan-Daten überhaupt Höhenlinien zu erzeugen, machten wir diese zunächst in ArcGIS lesbar, indem wir mit Hilfe von Microsoft Excel die ASCII-Dateien mit den Daten, die vorformatiert in festen Spalten vorlagen, in Tab-getrennte Spalten umwandelten und eine Zeile mit Spaltennamen hinzufügten. Diese so veränderten ASCII-Dateien konnten wir dann mit der Funktion „Create Feature Class→From XY Table“ im Kontextmenü der ASCII-Dateien in ArcCatalog zu Shapefiles umwandeln (2), denen wir gleichzeitig das richtige CRS (Coordinate Reference System) zuwiesen.

[screenshot]
Konvertieren der Laserscan-Daten in ein Shapefile.

Wie in den Abbildungen zu sehen ist, ignorierte ArcGIS den Dezimalpunkt, so dass die Höhenangaben nun in Zentimetern statt Metern vorliegen, was aber allein für das Erzeugen und Darstellen der Höhenlinien weiter kein Problem ist. Bevor Höhenlinien generiert werden können, muss zunächst eine Oberfläche erzeugt werden; wir wählen das Erzeugen eines TIN (Triangulated Irregular Network), was für regelmäßige und unregelmäßige Verteilungen der Messpunkte gleichermaßen geeignet ist. Erzeugt wird es mit der „3D Analyst“–Werkzeugleiste über „Create/Modify TIN→Create TIN From Features“ (3).

[screenshot]
Erzeugen einer TIN-Oberfläche in ArcMap.

Das Erzeugen von Höhenlinien aus einem TIN ist mit Hilfe des Werkzeugs „3D Analyst→TIN Surface→TIN Contour“ nahzu trivial. Die Äquidistanz sollte jedoch wegen des fehlenden Dezimalpunkts um den Faktor 100 erhöht werden, um das Verschwenden von Ressourcen zu vermeiden. (4)

[screenshot]
Erzeugen der Höhenlinien anhand des TIN.

Nach dem gleichen Verfahren ließen sich auch Höhenlinien für das auf dem Wege der automatischen Bildkorrelation gewonnen DOM aus Teilaufgabe 2 erzeugen. Da jedoch mit den dort verwendeten Einstellungen ATE bereits fertige Höhenlinien ausspuckte, konnten wir auf diesen Schritt verzichten.

Die Auswahl der Höhenlinien entsprechend der in der Aufgabenstellung (durch Nachtrag) geforderten Äquidistanz 10 m erfolgte in ArcMap durch eine „Display Query“, welche die Division durch die Äquidistanz auf einen Rest prüft. Das Erzeugen eines neuen, entsprechend ausgedünnten Datensatzes wäre mit dem „Select“-Werkzeug in ArcGIS in gleicher Weise leicht möglich.

Vergleich der Höhenlinien

Beim Vergleich der Höhenlinien fiel neben den allgemeinen Unterschieden des DOM (Bildkorrelation) und des DGM (Laserscan) zunächst auf, dass das DOM in den Höhenlinien ein eher „zittriges“ Erscheinungsbild hat, d. h. es sind viele Kleinstformen enthalten und eine weitere Generalisierung erscheint sinnvoll. Das DGM verhält sich grundsätzlich ähnlich, macht aber insgesamt einen etwas ruhigeren Eindruck. Die manuell durch Stereoauswertung erfassten Höhenlinien haben dagegen naturgemäß einen sehr ruhigen, klaren Verlauf. (5)

[screenshot]
Vergleich der Höhenlinien allgemein: DOM dunkelblau, DGM hellblau, Stereoauswertung rot. Äquidistanz 10 m.

Weiterhin fiel auf, dass im Datensatz der Stereoauswertung für die Waldgebiete keine Höhenlinien existieren, weil im Wald keine Auswertung möglich gewesen war. (6)

[screenshot]
Vergleich der Höhenlinien im Wald: DOM dunkelblau, DGM hellblau, Stereoauswertung rot. Äquidistanz 10 m.

Bei näherer Untersuchung waren DOM und DGM in Weinbergen weitgehend gleichwertig (5). Im Flachland (einschließlich des Siedlungsgebiets) weicht der Verlauf der Höhenlinien jedoch etwas stärker voneinander ab (7). Für die Ortschaft, wo bei beiden automatisch erzeugten Datensätzen zwangsläufig Interpolation stattfand, sind nun durchaus kleinere Unterschiede zu erwarten. Ganz allgemein gilt aber in flachen Bereichen, dass auch kleine Änderungen in der Höhe schon große Änderungen in der Lage der Höhenlinien bewirken. Insofern sind diese Abweichungen zwar auffallend, aber unverdächtig.

Die Abweichungen der Höhenlinien der Stereoauswertung sind im sehr flachen Ortsbereich nochmals deutlich größer (7). In flachen Bereichen ist die manuelle Auswertung erschwert und deren Ergebnis daher durchaus sehr ungenau. Angesichts der beschriebenen Problematik großer Änderungen der Lage der Höhenlinien bei schon kleiner Änderung der Höhenmessung in sehr flachen Bereichen sehen wir jedoch auch diese Ungenauigkeit der Stereoanalyse im Ortsbereich nicht als Anlass zu Kritik an der manuellen Auswertung.

[screenshot]
Vergleich der Höhenlinienim Ort: DOM dunkelblau, DGM hellblau, Stereoauswertung rot. Äquidistanz 10 m.

Dass der exakte Verlauf von Höhenlinien in flachen Bereichen prinzipbedingt unsicher ist, lässt sich gut an einem Ausschnitt in den Weinbergen nordwestlich der Ortschaft beobachten, wenn das DGM mit dichteren Höhenlinien dargestellt wird (8). Es sind dann in einer Anzahl von Fällen plötzliche Sprünge der Linien (in allen drei Datensätzen) zu beobachten, die auf einer der Weinbergterassen von ihrem Verlauf an z. B. der unteren Böschungskante quer über die Terasse zur oberen Boschungskante verlaufen. Durch die veränderte Äquidistanz des DGMs ist hier deutlich zu sehen, dass beide Böschungskanten tatsächlich fast dieselbe Höhe haben.

Der Höhenunterschied der manuell ausgewerteten Linien zu den automatisch ausgewerteten Linien liegt an solchen Stellen in Extremfällen bei bis zu ca. 4 m, normalerweise jedoch darunter. Dies betrachten wir in Anbetracht des Verfahrens als sehr zufriedenstellendes Ergebnis.

[screenshot]
Vergleich der Höhenlinien auf Terassen: DOM dunkelblau, Stereoauswertung rot; Äquidistanz je 10 m. DGM hellblau, Äquidistanz 1 m.

Beim sorgfältigen Vergleich fielen uns eine Anzahl Stellen auf, bei denen der Verlauf der manuell bzw. automatisch ausgewerteten Linien in der 2D-Darstellung auf scheinbar große Differenzen hinweist (9). Wir notierten diese Stellen und prüften sie anschließend im ERDAS Stereo Analyst. In den meisten Fällen handelte es sich um flache Gebiete, wo eine eindeutige Höhenmessung – wie beschrieben – nur schwer möglich ist. In keinem der überprüften Fälle war ein Fehler in der manuellen Stereoauswertung festzustellen.

[screenshot]
Arbeitsunterlage beim Prüfen der Höhenlinien auf mögliche Fehler. Nachzuprüfende Stellen sind rot markiert.