Analyser les différences entre deux fichiers de formes pour mettre les résultats dans un nouveau fichier de formes?

9

J'ai deux fichiers de formes polygonales de la même région de deux années différentes (1985 et 1997) et j'ai besoin d'analyser les différences entre les deux fichiers de formes pour aboutir à un troisième fichier de formes polygonales affichant uniquement les différences.

Les fichiers de formes couvrent une zone du centre-ville avec des bâtiments, des parcs, des zones scellées / non scellées et des zones aquatiques. J'ai besoin de savoir par exemple si un bâtiment a été déconstruit / construit ou si un parc a été déplacé ou fermé ou des choses similaires. Toutes les différences entre les formes.

J'ai besoin que la sortie soit dans un troisième, nouveau fichier de formes. Existe-t-il un moyen automatisé d'y parvenir?

Je travaille avec la géodatabase fichier de propriété dans ArcGIS 10.1, donc je préfère les solutions dans ArcGIS. Mais s'il existe un moyen simple de le faire dans QGIS, je serais également heureux de le faire.

Je pensais qu'il serait possible de travailler avec l'analyse de la topologie dans ArcGIS mais je ne sais pas par exemple comment comparer les formes par attributs: chaque forme a un champ "type" dans la table attributaire et j'ai besoin de comparer non seulement les formes mais les types de polygones.

Remarque: Vous recherchez des différences entre les fichiers de formes à l'aide d'ArcGIS for Desktop? semble similaire, mais je cherche une sortie dans un format de fichier de forme polygonale.

Il s'agit d'un processus de détection des changements sur les données vectorielles (pas de problème de télédétection). Il y a de bons commentaires dans cette réponse mais aucune solution du tout.

Afr
la source
1
Quand vous dites différence, voulez-vous dire la différence de géométrie, d'attribut ou les deux? S'agit-il d'un processus de détection de changement?
Ryan Garnett
Oui, c'est un processus de détection de changement. J'ai d'abord besoin de changements de géométrie, secondaire j'ai besoin de changements d'attributs. Mais la géométrie est plus importante car la sortie doit être visualisée d'une manière ou d'une autre.
Afr

Réponses:

2

Bien que je pense que la réponse de Ryan est la solution la plus raisonnable, vous pouvez utiliser l' outil de géotraitement Intersect en utilisant vos deux classes de fonctions en entrée.

La sortie que vous obtenez contiendra des attributs des deux entrées. Vous pouvez vérifier les fonctionnalités ayant des valeurs différentes dans les deux champs «type».

Il y a quelques limitations à ce processus:

  • Tout d'abord, l'outil d'intersection, comme tous les outils excessifs, ne peut fonctionner que sur un nombre limité de sommets . Si vous avez trop de sommets dans vos données, vous devrez carreler vos données et exécuter le processus par étapes.

  • Vous trouverez de nombreux polygones de ruban dans la sortie.

  • Cela nécessite que vos classes d'entités couvrent entièrement votre domaine d'intérêt et qu'il n'y ait pas de lacunes.

Devdatta Tengshe
la source
Cela fait le travail, merci! C'est une solution assez basique mais c'est quelque chose avec laquelle je peux travailler.
Afr
6

Il y a quelques façons de le faire. J'ai réalisé cela dans le passé avec d'excellents résultats en utilisant une combinaison d'attributs et de traitement raster. Le principe du processus est d'attribuer à chaque entité une valeur de n (1, 2, 4, 8, 16, 32, 64, etc.). L'attribution de ces valeurs garantit que lorsque vous soustrayez le calque un (1985) du calque 2 (1997), vous obtenez une valeur unique, qui identifie ce qu'il a changé. Par exemple, si 1 = bâtiments, 2 = parcs, 4 = phoque / descellé et 8 = eau; en soustrayant les valeurs, il n'y a aucun moyen d'obtenir la même valeur. Lorsque vous ajoutez cette colonne de valeurs, vous allez vouloir convertir les polygones en raster, en utilisant ArcGIS ou QGIS. Je recommanderais que vous définissiez la taille de pixel du raster sur une petite valeur (c'est-à-dire: si les données ont été collectées à partir de l'imagerie Quickbird, puis définissez-la à la taille de pixel de l'imagerie Quickbird). À l'aide de la calculatrice raster (dans ArcGIS ou QGIS), soustrayez la couche 2 de la couche 1. Cela se traduira par Layer3, le changé en couche. Vous pouvez reconvertir ces données en une couche polygonale pour une analyse SIG plus approfondie. Si vous souhaitez plus d'informations ou de détails, je peux en partager plus avec vous.

Ryan Garnett
la source
C'est une très bonne approche, mais je ne vais pas convertir mes formes en données raster et inversement car je perdrai trop d'informations. Est-ce de toute façon possible à réaliser avec des couches vectorielles uniquement?
Afr
Vous pouvez faire quelque chose de similaire avec les vecteurs, mais il n'utilise pas l'approche de la valeur. Vous souhaiterez peut-être jouer avec l'outil Différence symétrique disponible dans ArcGIS et QGIS. Je ne connais pas d'approche vectorielle qui imite l'approche que j'ai décrite.
Ryan Garnett
votre approche me rappelle d'utiliser des opérations au niveau du bit comme décrit ici blog.millermedeiros.com/…
geogeek
ARCGIS 9.2 possède-t-il un outil de différence symétrique. Je ne trouve pas. Quelle version d'ARCGIS peut être utilisée pour cette analyse de différence symétrique?
Bandrush Barda du
Je pense que vous avez besoin d'une licence ArcInfo. Si vous n'avez pas ce type de licence, vous pouvez télécharger ETGeoWizards. La différence symétrique est un outil disponible dans l'onglet Géotraitement. QGIS propose également la Différence symétrique dans les outils vectoriels, qui est gratuite.
Ryan Garnett
0

Pour effectuer la détection des modifications dans ArcGIS, à partir de deux fichiers de polygones, utilisez l'opération de superposition (UNION). Cela vous donne la matrice de transition montrant les détails des changements (peut être dans la couverture terrestre).

Ayele A.
la source
Je pense que ce n'est qu'une variation de la réponse acceptée mais avec des instructions moins détaillées. De plus, bien que Union et Intersection soient des opérations de superposition de polygones, c'est Intersection que j'utiliserais dans ce cas pour minimiser la taille de la sortie et de tout ensemble de données intermédiaire.
PolyGeo