Interpolation de la bathymétrie multifaisceaux à l'aide d'ArcGIS Desktop?


8

J'essaie de faire une carte 3D avec une bathymétrie multifaisceaux (65536 entités, xyz), mais il semble que les méthodes d'interpolation soient trop rigides. J'ai besoin de lisser les données pour qu'elles soient plus naturelles et réalistes.

Quels paramètres dois-je faire varier pour pouvoir l'obtenir?


Im using ARCGIS 9.2
Romina

+1 Serait également curieux de savoir si les techniques de traitement Lidar seraient applicables.
Kirk Kuykendall

7
Je serais très méfiant à propos de la source de données car 65536 est exactement la limite de lignes d'une feuille de calcul Excel avant la v2010 :-)
WolfOdrade

Réponses:


7

Ce n'est probablement pas entièrement un problème avec le modèle d'interpolation. Les données bathymétriques peuvent présenter un bruit considérable. En raison d'un poids égal associé à chaque facette TIN et effet aberrant, une interpolation de base TIN peut atténuer ce bruit et n'est pas recommandée. Je voudrais appliquer une interpolation Spline Topogrid (Topo to raster tool) puis appliquer un filtre de lissage au résultat. J'utilise couramment un filtre pondéré gaussien avec un sigma de 2, mais dans ArcGIS, vous pouvez simplement utiliser une moyenne focale. La taille de la fenêtre dépendra de la résolution de la surface interpolée et d'un critère d'erreur. Vous ne voulez pas sur-lisser les données, il est donc essentiel d'évaluer l'erreur quadratique moyenne (RMSE) de la valeur observée par rapport à la valeur prédite. Trouvez une taille de fenêtre qui présente un équilibre acceptable entre la fluidité et l'erreur.


1

Essayez la FFT (Fast Fourrier Transform) dans ENVI ou un autre outil de traitement d'image après avoir créé votre raster. Vous pouvez également l'appliquer directement sur votre raster à l'aide de l'IDL.


très bonne suggestion!
Jeffrey Evans

1
La FFT en elle-même ne résout pas ce problème - c'est juste un moyen de ré-exprimer les mêmes données. Que proposez-vous exactement de faire avec la FFT pour lisser les données?
whuber

Vous devez appliquer un filtre à certaines fréquences (je pense que pour supprimer les hautes fréquences) sur votre image FFT, puis faire une FFT inverse
Sous le radar

0

Essayez de créer un TIN à partir de la bathymétrie. Un TIN effectuera une interpolation des points (lignes), créant une surface plus lisse qu'une grille. Vous pouvez également exécuter un ombrage sur la grille interpolée, cela peut produire quelque chose que vous aimez visuellement.


0

Vous pouvez essayer l'interpolation Topo vers Raster en une seule étape, en essayant différentes valeurs pour ses paramètres de lissage: le facteur d'erreur de discrétisation (1,5, 2 ou supérieur), la tolérance # 1 (essayez 2-3) et la tolérance # 2 (environ 100) . L'application du drainage doit être désactivée pour la bathymétrie (aucune application) et le type de données "spot". Peut-être que vous parvenez à obtenir la douceur souhaitée sans filtres.


0

Je déteste les contours contre nature que vous obtenez de la plupart des modèles. Voici mon workflow:

  1. Créer un littoral (essayez d'utiliser des images / lidars plus récents)
  2. Créer un TIN basé sur les données de sondage du rivage et des points
  3. Convertir l'étain en raster (j'utilise généralement une résolution de 1 m)
  4. Utilisez Multi Values ​​to Points pour extraire des valeurs raster vers des points de sondage
  5. Calculez un champ "Différence" dans vos données de sondage et inspectez manuellement les zones où la différence est> 0,5 mètre. Faites les suppressions nécessaires.
  6. Créer un TIN basé sur des sondages corrigés et le rivage
  7. Convertir le TIN en raster (j'utilise généralement une résolution de 5 m)
  8. Convertissez le raster en point.
  9. Faire une sélection dans l'ensemble de données de point de remplissage avec l'ensemble de données de point de sondage (j'utilise dans un rayon de 10 mètres) et supprimer ces points de l'ensemble de données de points de remplissage
  10. Effectuez des sélections aléatoires pour réduire la densité de l'ensemble de données de remplissage (je recherche simplement le FID / un certain nombre = PLAFOND (FID / un certain nombre) après avoir effectué les suppressions initiales et enregistré.
  11. Utilisez les points de remplissage aléatoires, les points de sondage, le littoral et un polygone d'étendue (du littoral) dans l'outil Topo vers raster.
  12. Créez des contours.

Cela vous donne des contours lissés, mais préserve les valeurs mesurées pour vos données de sondage. Ce n'est pas mieux, mais je pense que ça a l'air beaucoup mieux.


0

En termes de simplicité, un TIN peut fournir un rendement très raisonnable.

Je ne vois aucune raison pour laquelle le bruit empêche l'utilisation d'un NIF en soi. Ils modéliseront exactement vos points de données si vous définissez les paramètres de cette façon ou si vous les ajustez plus en douceur à la surface. Ils ont également l'avantage distinct d'être indépendants de l'échelle et de l'orientation de la grille, contrairement à toute méthode basée sur une fenêtre mobile.

Je voudrais suggerer :

  1. Vérifiez d'abord le point de WolfOdrade!
  2. Si les données bathymétriques sont disposées en rangées ou en une autre géométrie irrégulière (par exemple à partir de sondages de bateau), topogrillez-les à une surface raster. S'il s'agit de points dans une grille régulière ou dispersés de manière aléatoire, transformez-les en un TIN qui convient à chaque point.
  3. Visualisez dans quelque chose de simple, comme ArcScene.
  4. Ensuite, postez une photo de celui-ci quelque part afin que nous puissions réellement voir les données, montrant vos points de préoccupation.

Le bon algorithme de lissage dépend beaucoup du type de terrain, le filtre guassien peut être bon pour un DEM plus fluide. La FFT en vaut la peine pour des terrains variés et pourrait gérer des angles plus nets, mais le désherbage itératif des nœuds TIN pourrait être une option suffisante et plus simple qui minimise la simulation des données.


2
La "modélisation exacte" du bruit ne propage que l'erreur. Lorsqu'il y a du bruit, vous devez préférer des méthodes qui lissent les données plutôt que de les honorer. Cela suggère de chercher des alternatives aux NIF. Votre suggestion vers la fin du désherbage itératif des nœuds TIN est dans cet esprit, mais malheureusement, une fois que vous avez terminé, vous épinglez toujours le TIN aux nœuds restants, aucun d'entre eux n'est correct (en raison du bruit). L'application d'un lissage statistique semble être une meilleure idée.
whuber

Mon point de vue en ce qui concerne le TIN est qu'ils ne sont qu'une structure de données, avec leurs propres méthodes de lissage. Mais que ce soit dans TIN ou GRID, le filtrage laisse des données brutes avec des erreurs. Le lissage nécessite une bonne distribution ponctuelle. Les deux suppriment les maxima et les minima qui pourraient être réels et nécessaires. Toutes les méthodes de grille sont vulnérables à l'échelle et à l'orientation. Sans voir les données et connaître l'utilisation finale, nous ne savons pas quelles méthodes elles nécessitent ou peuvent soutenir. Si c'est juste pour la visualisation, un peu d'erreur aléatoire limitée pourrait en fait le rendre plus réaliste, filtrer / désherber plutôt que lisser.
AnserGIS
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.