Interpolation précise de l'élévation à partir des courbes de niveau dans QGIS?

8

J'essaie d'interpoler les élévations des courbes de niveau (~ 70000 à des intervalles de 1 m, couvrant ~ 20 km ^ 2) dans QGIS. 

Lorsque j'interpole à l'aide Inverse Distance Weighting (IDW)du Interpolationplugin, il utilise toutes les lignes de contour plutôt que les contours adjacents?

L'utilisation du GDAL Rasterplugin (distance inverse à une puissance) semble également utiliser tous les contours et traiter les courbes de niveau non pas comme des lignes mais comme des points?

J'ai également essayé de Triangular interpolation (TIN)traiter les courbes de niveau comme des lignes de structure, mais cela bloque QGIS, probablement en raison du nombre et de la densité des courbes de niveau.

Pour les puissances inférieures à 5, en utilisant le plugin raster GDAL, le DEM résultant est très bruyant et les points de contour ont tendance à devenir des maxima ou des minima locaux

c'est-à-dire pour les cellules de la grille qui ont une ligne de contour qui les traverse, mais qui ne contiennent pas les points qui définissent la ligne de contour, les élévations interpolées sont décalées vers l'élévation moyenne de toutes les données de contour, plutôt que d'être affectées à l'élévation de la ligne de contour en cours d'exécution à travers eux; cela est dû au fait que l'interpolation tient inutilement compte des élévations de chaque point de contour unique (bien que pondérée par la distance inverse).

Bien que ce problème soit réduit lorsque j'utilise IDW avec des puissances plus élevées, les régions relativement plates commencent à ressembler à des interpolations de voisins les plus proches - comme des étapes, plutôt qu'à une grande région avec une petite inclinaison.

D'après d'autres publications, il semble que l' r.surf.contouralgorithme GRASS ait des problèmes similaires.

Il est préférable d'utiliser un rayon de recherche, mais cela aplanit toujours les entités plus petites que le rayon de recherche et permet toujours aux contours non pertinents pour une cellule de la grille d'avoir un impact sur son élévation interpolée. 

Existe-t-il un moyen dans QGIS d'interpoler en utilisant uniquement les courbes de niveau immédiatement adjacentes dans toutes les directions?

Quelle est la meilleure pratique pour interpoler à partir des données de contour dans QGIS de sorte que les données de contour soient en fait traitées comme des contours, plutôt que comme un grand ensemble de points ou de lignes? 

jlnzbk
la source
Pour ce que ça vaut, j'ai trouvé que r.surf.contourc'était beaucoup plus naturel que v.surf.rstvous pouvez voir mes efforts sur gwprojects.org/forum/viewtopic.php?f=3&t=2084 et l'amorce que j'ai utilisée pour y aller sur grasswiki.osgeo. org / wiki / Contour_lines_to_DEM
M. Violet

Réponses:

3

Je viens du monde AutoCAD / ESRI et je ne connais pas les outils de QGIS. Cependant, j'ai créé de nombreuses surfaces à partir de contours.

Pour créer une surface à partir de contours de surface, un traitement supplémentaire est nécessaire. Vous devez d'abord désherber et compléter les points de contour Voir https://knowledge.autodesk.com/support/autocad-civil-3d/learn-explore/caas/CloudHelp/cloudhelp/2017/ENU/Civil3D-UserGuide/files/GUID- 523368FB-BF6D-4E7C-8E38-7BA9A2B7E38A-htm.html

Deuxièmement, vous devez créer des lignes de rupture pour le fond des vallées, des lignes de crête et d'autres fractures de la surface pour éviter les zones plates artificielles.

Le TIN donne alors les meilleurs résultats pour la topographie en utilisant les points de contour et les lignes de rupture. Le lissage des contours résultants les rend plus jolis mais pas plus précis.

Explication de l'ESRI sur le contournage des données statistiques et tographiques: https://www.esri.com/news/arcuser/0704/files/interpolating.pdf

Jerry
la source