Étiquette | Explication | Type de données |
Raster en entrée | L’imagerie source en entrée, généralement une imagerie multispectrale. Les exemples de types d’imagerie source en entrée sont par exemple l’imagerie satellite multispectrale, issue de drones, aérienne et du programme NAIP (National Agriculture Imagery Program). L’entrée peut être un dossier contenant des images. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
Dossier en sortie | Dossier dans lequel les fragments d’images et les métadonnées seront stockés. Le dossier peut aussi être une URL de dossier qui utilise un fichier de connexion au stockage cloud (*.acs). | Folder |
Classe d’entités en entrée, raster classé ou table | Données d’échantillon d’entraînement sous forme vectorielle ou raster. Les entrées vectorielles doivent suivre le format d’échantillon d’apprentissage généré dans la fenêtre Gestionnaire d’échantillons d’apprentissage. Les entrées raster doivent suivre un format raster classé généré par l’outil Classer le raster. L’entrée du raster peut également provenir d’un dossier de rasters classés. Les tables en entrée doivent suivre un format d’échantillon d’apprentissage généré par l’outil Étiqueter les objets pour le Deep Learning dans la fenêtre Gestionnaire d’échantillons d’apprentissage. Le respect du format de l’échantillon d’apprentissage permet de générer des résultats optimisés avec les informations statistiques. L’entrée peut cependant également être une classe d’entités ponctuelles sans champ de valeur de classe ou un raster de type entier sans information de classe. | Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
Format de l’image | Spécifie le format raster qui sera utilisé pour les fragments d’images en sortie. Les formats PNG et JPEG prennent en charge jusqu’à trois canaux.
| String |
Taille de tuile X (Facultatif) | Taille des fragments d’images pour la dimension x. | Long |
Taille de tuile Y (Facultatif) | Taille des fragments d’images pour la dimension y. | Long |
Pas en X (Facultatif) | Distance de déplacement sur la direction x lors de la création des fragments d’image suivants. Lorsque le pas est égal à la taille de tuile, il n’y a pas de superposition. Lorsque le pas correspond à la moitié de la taille de tuile, il y a une superposition de 50 pour cent. | Long |
Pas en Y (Facultatif) | Distance de déplacement sur la direction y lors de la création des fragments d’image suivants. Lorsque le pas est égal à la taille de tuile, il n’y a pas de superposition. Lorsque le pas correspond à la moitié de la taille de tuile, il y a une superposition de 50 pour cent. | Long |
Aucune tuile d'entités en sortie (Facultatif) | Spécifie si les fragments d’images qui ne capturent pas d’échantillons d’apprentissage seront exportés.
Lorsque ce paramètre est activé, les fragments d’image ne capturant pas de données étiquetées sont également exportés ; s’il n’est pas sélectionné, ces fragments ne sont pas exportés. | Boolean |
Format de métadonnées (Facultatif) | Indique le format utilisé pour les étiquettes de métadonnées en sortie. Si les données d’échantillons d’apprentissage en entrée sont une couche de classe d’entités, telle qu’une couche d’emprise de bâtiment ou un fichier d’échantillon d’apprentissage de classification standard, utilisez l’option Étiquettes KITTI ou PASCAL Visual Object Classes (KITTI_rectangles ou PASCAL_VOC_rectangles dans Python). Les métadonnées en sortie sont un fichier .txt ou un fichier .xml comportant les données d’échantillons d’apprentissage contenues dans le rectangle d’emprise minimale. Le nom du fichier de métadonnées correspond à celui de l’image source en entrée. Si les données d’échantillons d’apprentissage en entrée sont une carte de classe, utilisez l’option Tuiles classées (Classified_Tiles dans Python) comme format de métadonnées en sortie. Pour le format de métadonnées KITTI, 15 colonnes sont créées, mais seulement 5 d’entre elles sont utilisées dans l’outil. La première colonne est la valeur de classe. Les 3 colonnes suivantes sont ignorées. Les colonnes 5 à 8 définissent le rectangle d’emprise minimale comportant quatre emplacements de coordonnées d’image : pixels de gauche, en haut, de droite et en bas. Le rectangle d’emprise minimale englobe le fragment d’apprentissage utilisé dans le classificateur d’apprentissage en profondeur. Les autres colonnes ne sont pas utilisées.
| String |
Index de début (Facultatif) | Héritage :Ce paramètre est désormais obsolète. | Long |
Champ de valeur de classe (Facultatif) | Champ contenant les valeurs de classe. Si aucun champ n’est spécifié, le système recherche un champ value ou classvalue. Si l’entité ne contient pas de champ de classe, le système détermine que tous les enregistrements appartiennent à une même classe. | Field |
Rayon de la zone tampon (Facultatif) | Rayon d’une zone tampon autour de chaque échantillon d’apprentissage qui est utilisé pour délimiter une zone d’échantillon d’entraînement. Vous pouvez ainsi créer des échantillons d’apprentissage surfaciques circulaires à partir de points. L’unité linéaire de la référence spatiale de la valeur du paramètre Classe d’entités en entrée, raster classé ou table est utilisée. | Double |
Input Mask Polygons (Polygones de masque en entrée) (Facultatif) | Classe d’entités surfaciques qui délimite la zone de création des fragments d’images. Seuls les fragments d’images totalement inclus dans les polygones seront créés. | Feature Layer |
Angle de rotation (Facultatif) | Angle de rotation utilisé pour générer d’autres fragments d’images. Un fragment d’image sera généré avec un angle de rotation de 0, ce qui signifie qu’il n’y a pas de rotation. Il subira ensuite une rotation selon l’angle spécifié afin de créer un autre fragment d’image. Les échantillons d’apprentissage seront capturés sous plusieurs angles dans plusieurs fragments d’images, pour augmenter les données. L’angle de rotation par défaut est de 0. | Double |
Système de référence (Facultatif) | Indique le type de système de référence qui va être utilisé pour interpréter l’image en entrée. Le système de référence spécifié doit correspondre au système de référence utilisé pour entraîner le modèle d’apprentissage profond.
| String |
Mode de traitement (Facultatif) | Spécifie comment tous les éléments raster figurant dans un jeu de données mosaïque ou un service d’imagerie seront traités. Ce paramètre est appliqué lorsqu’un raster en entrée est un jeu de données mosaïque ou service d’imagerie.
| String |
Blacken Around Feature (Assombrir autour de l’entité) (Facultatif) | Indique si les pixels autour de chaque objet ou entité de chaque tuile d’images sont masqués. Ce paramètre s’applique uniquement lorsque le paramètre Format de métadonnées est défini sur Tuiles étiquetées et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.
| Boolean |
Crop Mode (Mode de rognage) (Facultatif) | Spécifie si les tuiles exportées sont rognées de telle sorte qu’elles fassent toutes la même taille. Ce paramètre s’applique uniquement lorsque le paramètre Format de métadonnées a pour valeur Tuiles étiquetées ou Imagenet et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.
| String |
Raster en entrée supplémentaire (Facultatif) | Source d’imagerie en entrée supplémentaire qui est utilisée pour les méthodes de conversion d’image. Ce paramètre est valide lorsque le paramètre Format de métadonnées est défini sur Tuiles classées, Exporter des tuiles ou CycleGAN. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
Classe d’entités d’instance (Facultatif) | Données d’échantillons d’entraînement collectées contenant les classes pour la segmentation d’instances. L’entrée peut également être une classe d’entités ponctuelles sans champ de valeur de classe ou un raster de type entier sans informations de classe. Ce paramètre n'est valide que si le paramètre Format de métadonnées est défini sur Segmentation panoptique. | Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
Champ de valeur de classe d’instance (Facultatif) | Champ contenant les valeurs de classe pour la segmentation d‘instances. Si aucun champ n’est spécifié, l’outil utilise un champ de valeur ou de valeur de classe le cas échéant. Si l’entité ne contient pas de champ de classe, l’outil détermine que tous les enregistrements appartiennent à une même classe. Ce paramètre n'est valide que si le paramètre Format de métadonnées est défini sur Segmentation panoptique. | Field |
Ratio de superposition de polygone minimale (Facultatif) | Pourcentage de superposition minimale pour qu’une entité soit incluse dans les données d’entraînement. Si le pourcentage de superposition est inférieur à la valeur spécifiée, l’entité est exclue du fragment d’entraînement et n’est pas ajoutée au fichier d’étiquette. La valeur de pourcentage est exprimée sous la forme d’un nombre décimal. Par exemple, pour spécifier une superposition de 20 %, indiquez la valeur 0,2. La valeur par défaut est 0, ce qui signifie que toutes les entités sont incluses. Ce paramètre améliore les performances de l’outil, ainsi que l’inférence. La vitesse est améliorée puisque moins de fragments d’entraînement sont créés. L’inférence est améliorée puisque le modèle est uniquement entraîné à détecter des lots importants d’objets et qu’il ignore les petits coins des entités. Cela signifie que l’outil Suppression non maximale détecte et retire un nombre moins important de faux positifs. Ce paramètre est activé si la valeur du paramètre Classe d’entités, raster classé ou table en entrée est une classe d’entités. | Double |
Disponible avec une licence Spatial Analyst.
Disponible avec une licence Image Analyst.
Synthèse
Convertit des données vectorielles ou raster étiquetés en jeux de données d’entraînement pour le Deep Learning grâce une image de télédétection. La sortie est un dossier de fragments d’images et un dossier de fichiers de métadonnées au format spécifié.
Utilisation
Cet outil crée des jeux de données d’apprentissage en vue de prendre en charge les applications d’apprentissage profond tierces, telles que Google TensorFlow, Keras, PyTorch et Microsoft CNTK.
Les échantillons d’apprentissage de classe Deep Learning reposent sur de petites images secondaires (appelées fragments d’image) contenant l’entité ou la classe présentant un intérêt.
Utilisez vos données d’échantillon d’apprentissage de classification existantes ou vos données de classes d’entités SIG (une couche d’emprise de bâtiment, par exemple) pour générer les fragments d’image contenant l’échantillon de classe à partir de l’image source. Les fragments d’image sont souvent composés de lignes de 256 pixels et de colonnes de 256 pixels, sauf si la taille de l’échantillon d’apprentissage est plus importante. Chaque fragment d’image peut contenir un ou plusieurs objets. Si le format de métadonnées du paramètre Tuiles étiquetées est utilisé, il ne peut exister qu’un seul objet par fragment d’image.
Vous pouvez attribuer une valeur au paramètre Système de référence pour exporter les données d’apprentissage dans l’espace cartographique ou l’espace pixel (espace image brut) à utiliser pour l’apprentissage du modèle Deep Learning.
Cet outil prend en charge l’exportation des données d’entraînement à partir d’une collection d’images. Vous pouvez ajouter un dossier d’images dans Raster en entrée. Si la valeur Raster en entrée est un jeu de données mosaïque ou un service d’imagerie, vous pouvez également préciser que le paramètre Mode de traitement traite la mosaïque en tant qu’entrée ou chaque élément du raster séparément.
La taille de cellule et l’étendue peuvent être ajustées grâce aux paramètres d’environnement de géotraitement.
Cet outil respecte le paramètre d’environnement Facteur de traitement parallèle. Par défaut, le paramètre Facteur de traitement parallèle n’est pas activé ; par conséquent, l’outil s’exécute sur un seul cœur. Lorsque des jeux de données volumineux sont utilisés, activez le paramètre Facteur de traitement parallèle en spécifiant le nombre de cœurs que l’outil peut employer pour distribuer la charge de travail.
Pour en savoir plus sur les exigences relatives à l’exécution de cet outil, ainsi que sur les problèmes que vous pouvez rencontrer, consultez les rubriques FAQ Apprentissage profond. .
Paramètres
ExportTrainingDataForDeepLearning(in_raster, out_folder, in_class_data, image_chip_format, {tile_size_x}, {tile_size_y}, {stride_x}, {stride_y}, {output_nofeature_tiles}, {metadata_format}, {start_index}, {class_value_field}, {buffer_radius}, {in_mask_polygons}, {rotation_angle}, {reference_system}, {processing_mode}, {blacken_around_feature}, {crop_mode}, {in_raster2}, {in_instance_data}, {instance_class_value_field}, {min_polygon_overlap_ratio})
Nom | Explication | Type de données |
in_raster | L’imagerie source en entrée, généralement une imagerie multispectrale. Les exemples de types d’imagerie source en entrée sont par exemple l’imagerie satellite multispectrale, issue de drones, aérienne et du programme NAIP (National Agriculture Imagery Program). L’entrée peut être un dossier contenant des images. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
out_folder | Dossier dans lequel les fragments d’images et les métadonnées seront stockés. Le dossier peut aussi être une URL de dossier qui utilise un fichier de connexion au stockage cloud (*.acs). | Folder |
in_class_data | Données d’échantillon d’entraînement sous forme vectorielle ou raster. Les entrées vectorielles doivent suivre le format d’échantillon d’apprentissage généré dans la fenêtre Gestionnaire d’échantillons d’apprentissage. Les entrées raster doivent suivre un format raster classé généré par l’outil Classer le raster. L’entrée du raster peut également provenir d’un dossier de rasters classés. Les tables en entrée doivent suivre un format d’échantillon d’apprentissage généré par l’outil Étiqueter les objets pour le Deep Learning dans la fenêtre Gestionnaire d’échantillons d’apprentissage. Le respect du format de l’échantillon d’apprentissage permet de générer des résultats optimisés avec les informations statistiques. L’entrée peut cependant également être une classe d’entités ponctuelles sans champ de valeur de classe ou un raster de type entier sans information de classe. | Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
image_chip_format | Spécifie le format raster qui sera utilisé pour les fragments d’images en sortie. Les formats PNG et JPEG prennent en charge jusqu’à trois canaux.
| String |
tile_size_x (Facultatif) | Taille des fragments d’images pour la dimension x. | Long |
tile_size_y (Facultatif) | Taille des fragments d’images pour la dimension y. | Long |
stride_x (Facultatif) | Distance de déplacement sur la direction x lors de la création des fragments d’image suivants. Lorsque le pas est égal à la taille de tuile, il n’y a pas de superposition. Lorsque le pas correspond à la moitié de la taille de tuile, il y a une superposition de 50 pour cent. | Long |
stride_y (Facultatif) | Distance de déplacement sur la direction y lors de la création des fragments d’image suivants. Lorsque le pas est égal à la taille de tuile, il n’y a pas de superposition. Lorsque le pas correspond à la moitié de la taille de tuile, il y a une superposition de 50 pour cent. | Long |
output_nofeature_tiles (Facultatif) | Spécifie si les fragments d’images qui ne capturent pas d’échantillons d’apprentissage seront exportés.
| Boolean |
metadata_format (Facultatif) | Indique le format utilisé pour les étiquettes de métadonnées en sortie. Si les données d’échantillons d’apprentissage en entrée sont une couche de classe d’entités, telle qu’une couche d’emprise de bâtiment ou un fichier d’échantillon d’apprentissage de classification standard, utilisez l’option Étiquettes KITTI ou PASCAL Visual Object Classes (KITTI_rectangles ou PASCAL_VOC_rectangles dans Python). Les métadonnées en sortie sont un fichier .txt ou un fichier .xml comportant les données d’échantillons d’apprentissage contenues dans le rectangle d’emprise minimale. Le nom du fichier de métadonnées correspond à celui de l’image source en entrée. Si les données d’échantillons d’apprentissage en entrée sont une carte de classe, utilisez l’option Tuiles classées (Classified_Tiles dans Python) comme format de métadonnées en sortie.
Pour le format de métadonnées KITTI, 15 colonnes sont créées, mais seulement 5 d’entre elles sont utilisées dans l’outil. La première colonne est la valeur de classe. Les 3 colonnes suivantes sont ignorées. Les colonnes 5 à 8 définissent le rectangle d’emprise minimale comportant quatre emplacements de coordonnées d’image : pixels de gauche, en haut, de droite et en bas. Le rectangle d’emprise minimale englobe le fragment d’apprentissage utilisé dans le classificateur d’apprentissage en profondeur. Les autres colonnes ne sont pas utilisées. Un exemple de l’option PASCAL_VOC_rectangles est présenté ci-dessous : Pour plus d’informations, consultez la rubrique Classes d’objets visuels PASCAL. | String |
start_index (Facultatif) | Héritage :Ce paramètre est désormais obsolète. Utilisez la valeur 0 ou # dans Python. | Long |
class_value_field (Facultatif) | Champ contenant les valeurs de classe. Si aucun champ n’est spécifié, le système recherche un champ value ou classvalue. Si l’entité ne contient pas de champ de classe, le système détermine que tous les enregistrements appartiennent à une même classe. | Field |
buffer_radius (Facultatif) | Rayon d’une zone tampon autour de chaque échantillon d’apprentissage qui est utilisé pour délimiter une zone d’échantillon d’entraînement. Vous pouvez ainsi créer des échantillons d’apprentissage surfaciques circulaires à partir de points. L’unité linéaire de la référence spatiale de la valeur du paramètre in_class_data est utilisée. | Double |
in_mask_polygons (Facultatif) | Classe d’entités surfaciques qui délimite la zone de création des fragments d’images. Seuls les fragments d’images totalement inclus dans les polygones seront créés. | Feature Layer |
rotation_angle (Facultatif) | Angle de rotation utilisé pour générer d’autres fragments d’images. Un fragment d’image sera généré avec un angle de rotation de 0, ce qui signifie qu’il n’y a pas de rotation. Il subira ensuite une rotation selon l’angle spécifié afin de créer un autre fragment d’image. Les échantillons d’apprentissage seront capturés sous plusieurs angles dans plusieurs fragments d’images, pour augmenter les données. L’angle de rotation par défaut est de 0. | Double |
reference_system (Facultatif) | Indique le type de système de référence qui va être utilisé pour interpréter l’image en entrée. Le système de référence spécifié doit correspondre au système de référence utilisé pour entraîner le modèle d’apprentissage profond.
| String |
processing_mode (Facultatif) | Spécifie comment tous les éléments raster figurant dans un jeu de données mosaïque ou un service d’imagerie seront traités. Ce paramètre est appliqué lorsqu’un raster en entrée est un jeu de données mosaïque ou service d’imagerie.
| String |
blacken_around_feature (Facultatif) | Indique si les pixels autour de chaque objet ou entité de chaque tuile d’images sont masqués. Ce paramètre s’applique uniquement lorsque le paramètre metadata_format est défini sur Labeled_Tiles et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.
| Boolean |
crop_mode (Facultatif) | Spécifie si les tuiles exportées sont rognées de telle sorte qu’elles fassent toutes la même taille. Ce paramètre s’applique uniquement lorsque le paramètre metadata_format est défini sur Labeled_Tiles ou sur Imagenet et qu’une classe d’entités en entrée ou qu’un raster classé a été spécifié.
| String |
in_raster2 (Facultatif) | Source d’imagerie en entrée supplémentaire qui est utilisée pour les méthodes de conversion d’image. Ce paramètre est valide lorsque le paramètre metadata_format est défini sur Classified_Tiles, Export_Tiles ou CycleGAN. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder |
in_instance_data (Facultatif) | Données d’échantillons d’entraînement collectées contenant les classes pour la segmentation d’instances. L’entrée peut également être une classe d’entités ponctuelles sans champ de valeur de classe ou un raster de type entier sans informations de classe. Ce paramètre est valide uniquement lorsque le paramètre metadata_format est défini sur Panoptic_Segmentation. | Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Table; Folder |
instance_class_value_field (Facultatif) | Champ contenant les valeurs de classe pour la segmentation d‘instances. Si aucun champ n’est spécifié, l’outil utilise un champ de valeur ou de valeur de classe le cas échéant. Si l’entité ne contient pas de champ de classe, l’outil détermine que tous les enregistrements appartiennent à une même classe. Ce paramètre est valide uniquement lorsque le paramètre metadata_format est défini sur Panoptic_Segmentation. | Field |
min_polygon_overlap_ratio (Facultatif) | Pourcentage de superposition minimale pour qu’une entité soit incluse dans les données d’entraînement. Si le pourcentage de superposition est inférieur à la valeur spécifiée, l’entité est exclue du fragment d’entraînement et n’est pas ajoutée au fichier d’étiquette. La valeur de pourcentage est exprimée sous la forme d’un nombre décimal. Par exemple, pour spécifier une superposition de 20 %, indiquez la valeur 0,2. La valeur par défaut est 0, ce qui signifie que toutes les entités sont incluses. Ce paramètre améliore les performances de l’outil, ainsi que l’inférence. La vitesse est améliorée puisque moins de fragments d’entraînement sont créés. L’inférence est améliorée puisque le modèle est uniquement entraîné à détecter des lots importants d’objets et qu’il ignore les petits coins des entités. Cela signifie que l’outil Suppression non maximale détecte et retire un nombre moins important de faux positifs. Ce paramètre est activé lorsque la valeur du paramètre in_class_data est une classe d’entités. | Double |
Exemple de code
Cet exemple permet de créer des échantillons d’apprentissage pour la formation en profondeur.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
ExportTrainingDataForDeepLearning("c:/test/image.tif", "c:/test/outfolder",
"c:/test/training.shp", "TIFF", "256", "256", "128", "128",
"ONLY_TILES_WITH_FEATURES", "Labeled_Tiles", 0, "Classvalue",
0, None, 0, "MAP_SPACE", "PROCESS_AS_MOSAICKED_IMAGE", "NO_BLACKEN", "FIXED_SIZE")
Cet exemple permet de créer des échantillons d’apprentissage pour la formation en profondeur.
# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy
arcpy.CheckOutExtension("ImageAnalyst")
from arcpy.ia import *
# Set local variables
inRaster = "c:/test/InputRaster.tif"
out_folder = "c:/test/OutputFolder"
in_training = "c:/test/TrainingData.shp"
image_chip_format = "TIFF"
tile_size_x = "256"
tile_size_y = "256"
stride_x= "128"
stride_y= "128"
output_nofeature_tiles= "ONLY_TILES_WITH_FEATURES"
metadata_format= "Labeled_Tiles"
start_index = 0
classvalue_field = "Classvalue"
buffer_radius = 0
in_mask_polygons = "MaskPolygon"
rotation_angle = 0
reference_system = "PIXEL_SPACE"
processing_mode = "PROCESS_AS_MOSAICKED_IMAGE"
blacken_around_feature = "NO_BLACKEN"
crop_mode = “FIXED_SIZE”
# Execute
ExportTrainingDataForDeepLearning(inRaster, out_folder, in_training,
image_chip_format,tile_size_x, tile_size_y, stride_x,
stride_y,output_nofeature_tiles, metadata_format, start_index,
classvalue_field, buffer_radius, in_mask_polygons, rotation_angle,
reference_system, processing_mode, blacken_around_feature, crop_mode)
Environnements
Informations de licence
- Basic: Nécessite Image Analyst ou Spatial Analyst
- Standard: Nécessite Image Analyst ou Spatial Analyst
- Advanced: Nécessite Image Analyst ou Spatial Analyst
Rubriques connexes
- Vue d’ensemble du jeu d’outils Classification et reconnaissance de modèles
- Rechercher un outil de géotraitement
- Présentation du jeu d’outils Deep Learning
- Installer des structures d’apprentissage profond pour ArcGIS
- Entraîner le modèle de Deep Learning
- Modèles de Deep Learning
- Classer des objets à l’aide du Deep Learning
- Classer des pixels à l’aide du Deep Learning
- Détecter des objets à l’aide du Deep Learning
Vous avez un commentaire à formuler concernant cette rubrique ?