Welche Interpolationstechnik eignet sich für eine Bathymetrie eines kleinen Sees?

16

Dies ist ein See von ungefähr 13 ha mit 81 untersuchten Tiefenpunkten in ungefähr 10 Schnittlinien:

Abgetastete Punkte

Zuvor hatte ich in ARCgis mit einem 50 ha großen See und etwa 100 Tiefenmesspunkten mit dem TopotoRasterTool eine anständige Leistung erzielt . Bei QGIS oder Open-Source-Software scheint es jedoch kein derart genaues Äquivalent zu geben.

In QGIS habe ich das unten stehende interpolierte Raster mithilfe der TIN-Methode im Raster-Interpolations-Plugin erhalten. Dies schien jedoch ein glückliches Ergebnis zu sein, als ich versuchte, es zu wiederholen, bekam ich unterschiedliche Ergebnisse (unbefriedigend), obwohl ich keinen Parameter wirklich variierte.

Interpoliertes Raster

Dies sind eher städtische (gebaute) Tanks als Seen, daher weisen sie ein relativ gleichmäßiges Bodenprofil auf, weshalb die Probenahmedichte niedrig ist. Einige Artikel schienen Inverse Distance Weighting (IDW) als die am besten geeignete Technik vorzuschlagen, aber ich schien damit die schlechtesten Ergebnisse zu erzielen (möglicherweise aufgrund der geringen Punktdichte).

Gibt es Heuristiken, die hier unter Berücksichtigung der Größe des Sees, seines regelmäßigen Profils und der Punktabtastdichte angewendet werden können, um zu welcher Interpolationsmethode zu gelangen, die geeignet ist? (zwischen Kriging, IDW, Bilinear, Cubic Convolution, TIN oder Spline)

Oder ist es immer ein bisschen Versuch und Irrtum?

SaRo89
quelle
Intuitiv würde ich die Interpolation mit Nearest Neighbour am sinnvollsten finden, da die Tiefenunterschiede relativ regelmäßig sind. Es wäre großartig, wenn jemand eine Ressource vorschlagen könnte, in der einige Verfahren / Richtlinien beschrieben sind, um sicherzustellen, dass bei der Interpolation dieser Art und auch in anderen Fällen eine konsistente Ausgabe erzielt wird.
SaRo89,
Reefmaster erstellt mit TIN gut aussehende Konturen und schattierte Reliefs. Reefmaster.com.au/index.php/forum/support/… .
user30184
2
Durch Betrachten des Bildes nutzt QGIS die Begrenzung nicht automatisch. Ich würde eine Reihe von Punkten mit einer Tiefe von Null entlang der Grenze hinzufügen.
user30184
1
Es scheint Abtastpunkte außerhalb der Grenze zu geben, daher vermute ich, dass entweder die Grenze falsch ist oder es eine Unsicherheit in den Bathymetriestellen gibt.
Spacedman
2
IDW ist am besten geeignet, wenn Sie eine relativ dichte Punktedichte über Ihrem Untersuchungsgebiet haben, aber Sie vermuten, dass es eine niedrige Punktedichte hat. In diesem Fall ist Splining vielleicht eine gute Option. Es glättet die Oberfläche, von der ich annehme, dass sie so aussieht wie ein Seeboden (aber ich weiß es wirklich nicht) Die gesamte Krümmung der Oberfläche. Diese Methode eignet sich am besten für leicht variierende Oberflächen, z. B. Höhenunterschiede, Grundwasserhöhen oder Verschmutzungskonzentrationen. " - gisresources.com/types-interpolation-methods_3
ed.hank

Antworten:

10

Eine Alternative ist die Spline-Interpolation, wie im zugehörigen Beitrag vorgeschlagen: Interpolation der Mehrstrahl-Bathymetrie .

Verwenden Sie in QGIS das GRASS-Tool v.surf.rst:

Führt eine Oberflächeninterpolation von einer Vektorpunktkarte durch Splines durch.

Anschließend können Sie verschiedene Arten der Parametrisierung testen, die im Tool verfügbar sind. Es besteht die Möglichkeit, für die Parameteroptimierung eine einmalige Kreuzvalidierung durchzuführen, bei der die Spannung, die Glättung usw. allmählich variiert werden. um den minimalen Vorhersagefehler zu finden.

Stellen Sie, wie von user30184 vorgeschlagen, sicher, dass im Eingabedatensatz Bodenniveaupunkte an den Seegrenzen verwendet werden, um eine Extrapolation zu vermeiden.

Andre Silva
quelle
Spline habe ich für ein River Bathymetry-Projekt verwendet, das ich als Auftragnehmer für USGS durchgeführt habe. Ich habe nie genau gefragt, warum, aber wir waren mit den Ergebnissen zufrieden. Fast hätte ich eine ähnliche Antwort gegeben, aber ich war mir der Rechtfertigung nicht sicher. Gute Antwort!
jbchurchill
Danke Andre, weiß deine schnelle und klare Antwort wirklich zu schätzen. Ich hatte einige Probleme beim Versuch, v.surf.rst auszuführen. In QGIS lehnte es ab, mir eine korrekte Rasterausgabe mit Werten zu geben. Ich vermute, dass es Probleme mit der Art und Weise gibt, wie ich Daten projiziert habe. Wenn ich es herausgefunden habe, werde ich die Ergebnisse in die Bearbeitungen der Frage einfließen lassen.
SaRo89