Disponible avec une licence Image Analyst.
Disponible avec une licence Spatial Analyst.
Résumé
Regroupe en segments les pixels adjacents qui possèdent des caractéristiques spectrales similaires.
Utilisation
L’entrée peut être n’importe quel raster pris en charge par Esri, avec n’importe quelle profondeur de bit.
Le paramètre Index de canal est une liste de trois canaux, chacun étant séparés par un espace.
Pour optimiser les résultats, utilisez l'onglet Symbologie dans les propriétés du jeu de données afin d'étirer interactivement votre raster en entrée et de rendre apparentes les entités que vous voulez classer. Puis, utilisez ces paramètres optimaux dans la fonction raster Stretch pour obtenir le meilleur résultat avec votre image, et précisez le Output Pixel Type (Type de pixel en sortie) comme 8 bit unsigned dans l'onglet General.
La couche de sortie de la fonction raster Stretch exécutée précédemment peut être le Input Raster (Raster d'entrée) pour l'outil Segment Mean Shift (Décalage moyen de segment).
Syntaxe
SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail}, {min_segment_size}, {band_indexes}, {max_segment_size})
Paramètre | Explication | Type de données |
in_raster | Jeu de données raster à segmenter. Il peut s'agir d'une image multispectrale ou en nuances de gris. | Mosaic Layer; Raster Layer |
spectral_detail (Facultatif) | Niveau d’importance donné aux différences spectrales des entités dans votre imagerie. Les valeurs correctes sont comprises entre 1.0 et 20.0. Il convient d’attribuer une valeur élevée lorsque vous souhaitez classer séparément des entités dont les caractéristiques spectrales sont similaires. Des valeurs inférieures engendrent des sorties plus lisses spectralement. Par exemple, avec des détails spectraux supérieurs dans une zone forestière, la distinction entre les espèces d’arbres sera plus précise. | Double |
spatial_detail (Facultatif) | Niveau d’importance donné à la proximité entre des entités dans votre imagerie. Les valeurs correctes sont comprises entre 1.0 et 20. Une valeur plus élevée convient à une scène dans laquelle les entités présentant un intérêt sont petites et agrégées. Des valeurs inférieures engendrent des sorties plus lisses spatialement. Par exemple, dans une scène urbaine, vous pouvez classer une surface imperméable à l'aide d'un détail spatial plus petit ou classer des bâtiments et des routes en tant que classes séparées à l'aide d'un détail spatial supérieur. | Long |
min_segment_size (Facultatif) | Taille minimale d’un segment. Combinez les segments dont la taille est inférieure à celle-ci avec leur segment voisin le mieux adapté. Ceci dépend de l'unité de cartographie de votre projet. Les unités sont les pixels. | Long |
band_indexes (Facultatif) | Canaux qui seront utilisés pour segmenter l’imagerie, séparés par un espace. Si aucun index de canal n'est spécifié, ils sont déterminés selon les critères suivants :
L'ordre des bandes ne change pas le résultat. Sélectionnez les canaux qui offrent la différenciation la plus forte entre les entités présentant un intérêt. | String |
max_segment_size (Facultatif) | Taille maximale d’un segment. Les segments de taille supérieure à celle spécifiée seront divisés. Utilisez ce paramètre pour éviter les artefacts dans le raster en sortie qui résultent de segments volumineux. Les unités sont les pixels. La valeur par défaut est de -1, ce qui signifie que la taille de segment est illimitée. | Long |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster_dataset | Spécifiez un nom et une extension pour le jeu de données en sortie. Si l’entrée était une image multispectrale, la sortie sera une image RVB 8 bits. Si l'entrée était une image en nuances de gris, la sortie sera une image en nuances de gris 8 bits. | Raster |
Exemple de code
Cet exemple crée une sortie avec une taille de segment minimum de 20, à l'aide des entrées proches de l'infrarouge, rouges et vertes.
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
seg_raster = SegmentMeanShift("c:/test/moncton.tif", "15", "10",
"20", "4 3 2")
seg_raster.save("c:/test/moncton_seg.tif")
Cet exemple effectue un décalage moyen de segment (SegmentMeanShift) pour créer une sortie avec une taille de segment minimum de 20, à l'aide des entrées proches de l'infrarouge, rouges et vertes.
# Import system modules
import arcpy
from arcpy.ia import *
"""
Usage: SegmentMeanShift(in_raster, {spectral_detail}, {spatial_detail},
{min_segment_size}, {band_indexes})
"""
# Set local variables
inRaster = "c:/test/moncton.tif"
spectral_detail = "14.5"
spatial_detail = "10"
min_segment_size = "20"
band_indexes = "4 3 2"
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
seg_raster = SegmentMeanShift(inRaster, spectral_detail, spatial_detail,
min_segment_size, min_segment_size)
# Save the output
seg_raster.save("c:/output/moncton_seg.tif")
Environnements
Informations de licence
- Basic: Requiert Image Analyst or Spatial Analyst
- Standard: Requiert Image Analyst or Spatial Analyst
- Advanced: Requiert Image Analyst or Spatial Analyst
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?