Disponible avec une licence Spatial Analyst.
Résumé
Calcule le réseau de connectivité optimal entre deux régions en entrée ou plus.
Utilisation
Les régions en entrée peuvent être des données raster ou d'entités.
Dans un raster, une région est un groupe de cellules de même valeur qui sont contiguës (adjacentes). Lorsque vos régions en entrée sont identifiées par un raster, si des zones (cellules de même valeur) sont constituées de plusieurs régions, exécutez d'abord l'outil Groupes par régions pour procéder à un prétraitement et affecter des valeurs uniques à chaque région. Utilisez ensuite le raster obtenu comme régions en entrée dans l’outil Connexions optimales des régions.
Lorsque les régions en entrée sont identifiées par des données surfaciques, linéaires ou ponctuelles, elles sont converties en raster à l’aide de l’identifiant d’entité pour s’assurer que les régions résultantes correspondent à des valeurs uniques. Les polygones multi-parties ne peuvent pas être utilisés comme entrée. Lorsque des données multi-points sont entrées, l’outil Optimal Region Connections (Connexions optimales des régions) sélectionne de manière aléatoire un des points à l’emplacement comme valeur de la région.
Vous pouvez contrôler la résolution des régions des entités en entrée rasterisées avec l'environnement Taille de cellule. Par défaut, la résolution est définie sur la résolution du raster de coût en entrée si un tel raster est fourni.
Lorsque vous utilisez des données d'entité surfacique comme données de région en entrée, vous devez traiter la taille de cellule en sortie avec prudence si elle est grossière par rapport au détail des données en entrée. Le processus de tramage interne utilise la même méthode par défaut Cell assignment type (Type d’attribution de cellule) que l’outil Polygon to Raster (Polygone vers raster), à savoir Cell center (Centre de cellule). Cela signifie que les données ne figurant pas au centre de la cellule ne sont pas incluses dans la région rasterisée intermédiaire. Elles ne sont pas représentées dans les calculs de distance. Par exemple, si vos régions sont représentées par une série de petits polygones, tels que des emprises de bâtiments, dont la taille est petite par rapport à celle de la cellule en sortie, il se peut que seuls certains d’entre eux apparaissent au centre des cellules raster en sortie et que, vraisemblablement, la plupart des autres polygones soient perdus et exclus de l’analyse.
Pour éviter cette situation, rastérisez directement les entités en entrée à l’aide de l’outil Polygon to Raster (Polygone vers raster), définissez un champ Priority field (Champ de priorité) et utilisez le résultat obtenu comme entrée de l’outil Optimal Region Connections (Connexions optimales des régions). Vous pouvez également sélectionner une taille de cellule suffisamment petite pour capturer la quantité de détails appropriée à partir des entités en entrée.
Lorsque la région en entrée est une entité, le champ ObjectID est utilisé comme identifiant de la région.
Si les régions en entrée sont des rasters et que la plage des identifiants de ligne est très étendue (même avec seulement quelques régions), cela peut réduire les performances de l’outil Connexions optimales des régions.
Les emplacements identifiés par le paramètre Input barrier raster paramètre or feature data (Données d’entité ou raster d’interruption en entrée) ou les emplacements de cellule dont la valeur du paramètre Input cost raster (Raster de coût en entrée) est NoData, agissent comme des interruptions.
L’étendue de traitement par défaut est la même que celle du raster de coût en entrée lorsqu’il y en a un ; dans le cas contraire, elle est définie sur l’étendue des régions en entrée.
Le paramètre Input cost raster (Raster de coût en entrée) ne peut pas contenir de valeurs égales à zéro, puisque l’algorithme est un processus multiplicatif. Si votre raster de coût contient des valeurs égales à zéro, et que ces valeurs représentent des surfaces de plus faible coût, remplacez-les par une petite valeur (comme 0,01) avant d’exécuter l’outil Distance de coût.
Vous pouvez utiliser l’outil Con pour remplacer la valeur zéro dans les cellules par une autre valeur. Si les zones avec une valeur nulle représentent des zones à exclure de l’analyse, convertissez d’abord ces valeurs en valeurs NoData en exécutant l’outil Set Null.
Pour le paramètre Output feature class of neighboring connections (Classe d’entités en sortie de connexions voisines), si aucune surface de coût n’est indiquée, les voisins sont identifiés à l’aide de la distance euclidienne. Ainsi, le voisin le plus proche d’une région est le plus proche en termes de distance. Toutefois, si une surface de coût est indiquée, elle est utilisée pour identifier les voisins. Ainsi, le voisin le plus proche d’une région est le moins coûteux à atteindre. Une opération d'allocation de coût permet d'identifier les régions voisines les unes des autres.
Le réseau en sortie optimal est généré à partir des chemins produits dans les connexions voisines facultatives en sortie. Les chemins des connexions voisines facultatives en sortie sont convertis en théorie des graphes. Les régions sont les sommets, les chemins sont les tronçons et les distances ou les coûts cumulés sont les poids des tronçons. L’arbre couvrant de poids minimal est calculé à partir de la représentation du diagramme des chemins pour déterminer le réseau du chemin optimal nécessaire pour se déplacer entre les régions.
Chaque chemin optimal atteint d’abord la limite extérieure du polygone ou de la région multicellulaire. Du périmètre de la région, l’outil prolonge les chemins avec des segments de lignes supplémentaires pour créer des points d’entrée et de sortie entre les régions et permettre un déplacement au sein de ces dernières. Il n’existe aucune distance ni aucun coût de déplacement supplémentaire le long de ces segments de lignes.
En fonction de la configuration des régions en entrée et de leurs voisins d’allocation, un chemin peut traverser une région intermédiaire pour atteindre une région voisine. Ce chemin implique alors des coûts pendant le déplacement dans cette région intermédiaire.
Vous pouvez utiliser les connexions voisines facultatives en sortie en tant qu'alternative au réseau de l'arbre couvrant de poids minimal. Cette sortie connecte chaque région à ses régions de coût voisines, ce qui génère un réseau plus complexe comportant de nombreux chemins. La classe d’entités peut être utilisée telle quelle ou en tant que base pour créer votre propre réseau. Pour ce faire, sélectionnez les chemins que vous voulez inclure dans le réseau à l’aide du bouton Select By Attributes (Sélectionner selon les attributs), du groupe Select (Sélectionner) de l’onglet Map (Carte) ou encore de l’outil Select Layer By Attributes (Sélectionner une couche par attributs). Le choix des chemins peut se baser sur la connaissance de la zone et sur les statistiques associées aux chemins dans la table attributaire obtenue.
Le réseau obtenu, que ce soit pour l’arbre couvrant de poids minimum ou les connexions voisines facultatives, peut être converti en réseau Network Analyst pour effectuer une analyse complémentaire du réseau.
Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.
Syntaxe
OptimalRegionConnections(in_regions, out_feature_class, {in_barrier_data}, {in_cost_raster}, {out_neighbor_paths}, {distance_method}, {connections_within_regions})
Paramètre | Explication | Type de données |
in_regions | Régions en entrée qui doivent être connectées par le réseau optimal. Les régions peuvent être définies par un raster ou un jeu de données d'entité. Si la région en entrée est un raster, les régions sont définies par groupes de cellules contiguës (adjacentes) de même valeur. Un numéro unique doit être attribué à chaque région. Les cellules qui ne font pas partie d'une région doivent être de type NoData. Le type raster doit être un entier et les valeurs peuvent être positives ou négatives. Si la région en entrée est un jeu de classes d’entités, il peut s’agir de polygones, de polylignes ou de points. Les régions d'entités surfaciques ne peuvent être constituées de polygones multi-parties. | Raster Layer; Feature Layer |
out_feature_class | Classe d’entités polyligne en sortie du réseau de chemins optimal qui connecte chacune des régions en entrée. Chaque chemin (ou ligne) est numéroté de manière unique et les champs supplémentaires dans la table attributaire stockent des informations spécifiques concernant le chemin. Ces champs supplémentaires sont les suivants :
Ces informations permettent de mieux comprendre les chemins du réseau. Comme chaque chemin est représenté par une ligne unique, plusieurs lignes seront présentes aux emplacements où les chemins empruntent le même itinéraire. | Feature Class |
in_barrier_data (Facultatif) | Jeu de données qui définit les interruptions. Les interruptions peuvent être définies par un raster d’entiers ou à virgule flottante ou par une couche d’entités. | Raster Layer; Feature Layer |
in_cost_raster (Facultatif) | Raster définissant l'impédance ou le coût de déplacement planimétrique à travers chaque cellule. La valeur de chaque emplacement de cellule représente le coût par unité de distance du déplacement à travers la cellule. Chaque valeur d'emplacement de cellule est multipliée par la résolution de cellule (avec également une compensation simultanée pour mouvement diagonal) afin d'obtenir le coût total du passage à travers la cellule. Les valeurs du raster de coût peuvent être des entiers ou valeurs à virgule flottante, mais elles ne peuvent pas être négatives ni nulles (un coût ne peut pas être négatif ou nul). | Raster Layer |
out_neighbor_paths (Facultatif) | Classe d’entités polylinéaires en sortie qui identifie tous les chemins depuis chaque région jusqu’à ses voisins les plus proches en termes de distance ou de coût. Chaque chemin (ou ligne) est numéroté de manière unique et les champs supplémentaires dans la table attributaire stockent des informations spécifiques concernant le chemin. Ces champs supplémentaires sont les suivants :
Ces informations permettent de mieux comprendre les chemins du réseau, et elles sont utiles lorsque vous devez identifier les chemins à supprimer, s’il y a lieu. Comme chaque chemin est représenté par une ligne unique, plusieurs lignes seront présentes aux emplacements où les chemins empruntent le même itinéraire. | Feature Class |
distance_method (Facultatif) | Spécifie le calcul de la distance selon une méthode plane (terre plate) ou géodésique (ellipsoïde).
| String |
connections_within_regions (Facultatif) | Spécifie si les chemins continuent et sont connectés dans les régions en entrée.
| String |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil OptimalRegionConnections.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outOptRegConnect = OptimalRegionConnections("source.shp", "elevation")
outOptRegConnect.save("C:/sapyexamples/output/optregconnect.tif")
Génère le réseau de chemins optimal de moindre coût connectant entre elles les régions en entrée.
# Name: OptimalRegionConnections_Ex_02.py
# Description: Calculates for each cell the optimum region connections.
#
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inSourceData = "source.shp"
inCostRaster = "elevation"
maxDistance = 20000000
outBkLinkRaster = "C:/sapyexamples/output/outbklink.tif"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute the tool
outOptRegConnect = OptimalRegionConnections(inSourceData, inCostRaster)
# Save the output
outOptRegConnect.save.save("C:/sapyexamples/output/optregconnect.tif")
Environnements
Informations de licence
- Basic: Requiert Spatial Analyst
- Standard: Requiert Spatial Analyst
- Advanced: Requiert Spatial Analyst
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?