Étiquette | Explication | Type de données |
Input Raster | The input image that will be used to detect objects. The input can be a single raster or multiple rasters in a mosaic dataset, image service, or folder of images. A feature class with image attachments is also supported. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder; Feature Layer; Feature Class |
Output Classified Objects Feature Class | The output feature class that will contain geometries surrounding the objects or feature from the input feature class, as well as a field to store the categorization label. | Feature Class |
Model Definition | Le paramètre Définition du modèle Esri peut être un fichier JSON de définition de modèle Esri (.emd), une chaîne JSON ou un paquetage de modèle d’apprentissage profond (.dlpk). Une chaîne JSON est utile lorsque cet outil est utilisé sur le serveur de manière à pouvoir coller la chaîne JSON au lieu de télécharger le fichier .emd. Le fichier .dlpk doit être stocké localement. Il contient le chemin d’accès au fichier du modèle binaire d’apprentissage profond, le chemin d’accès à la fonction raster Python à utiliser et d’autres paramètres, tels que le remplissage ou la taille de préférence des tuiles. | File; String |
Input Features (Facultatif) | The point, line, or polygon input feature class that identifies the location of each object or feature to be classified and labelled. Each row in the input feature class represents a single object or feature. If no input feature class is specified, it is assumed that each input image contains a single object to be classified. If the input image or images use a spatial reference, the output from the tool is a feature class in which the extent of each image is used as the bounding geometry for each labelled feature class. If the input image or images are not spatially referenced, the output from the tool is a table containing the image ID values and the class labels for each image. | Feature Class; Feature Layer |
Class Label Field (Facultatif) | The name of the field that will contain the class or category label in the output feature class. If no field name is specified, a ClassLabel field will be generated in the output feature class. | 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 |
Model Arguments (Facultatif) | Arguments des fonctions définis dans la classe de fonctions raster Python. C’est là que sont répertoriés les paramètres d’apprentissage profond supplémentaires et les arguments des expériences et améliorations, tels qu’un seuil de confiance pour l’ajustement de la sensibilité. Les noms des arguments sont renseignés à partir du module Python. | Value Table |
Caption
(Facultatif) |
The name of the field that will contain the text or caption in the output feature class. This parameter is only supported when an Image Captioner model is used. If no field name is specified, a Caption field will be generated in the output feature class. Remarque :This parameter will not appear in the Geoprocessing pane. To change the default field name, use the Class Label Field parameter. | String |
Disponible avec une licence Image Analyst.
Synthèse
Exécute un modèle d’apprentissage profond entraîné sur un raster en entrée et une classe d’entités facultative afin de générer une classe d’entités ou une table dans laquelle un objet ou une entité en entrée a une catégorie ou une étiquette de classe attribuée.
Cet outil nécessite un fichier de définition de modèle contenant des informations de modèle entraîné. Le modèle peut être entraîné avec l’outil Préparer le modèle d’apprentissage profond ou par un logiciel d’entraînement tiers tel que TensorFlow, PyTorch ou Keras. Le fichier de définition de modèle peut être un fichier JSON de définition de modèle Esri (.emd) ou un paquetage de modèle d’apprentissage profond. Il doit contenir le chemin d’accès à la fonction raster Python à appeler pour traiter chaque objet, ainsi que le chemin d’accès au fichier de modèle d’apprentissage profond binaire entraîné.
Utilisation
Vous devez installer l’API Python de structure Deep Learning appropriée (PyTorch ou Keras) dans l’environnement Python de ArcGIS Pro. Si vous ne le faites pas, une erreur se produit lorsque vous ajoutez le fichier de définition du modèle Esri dans l’outil. Les informations sur la structure appropriée doivent être fournies par la personne ayant créé le fichier de définition de modèle Esri.
Pour configurer votre machine afin d’utiliser des structures d’apprentissage profond dans ArcGIS Pro, consultez la rubrique Installer les structures d’apprentissage profond pour ArcGIS.
Cet outil appelle une API Python Deep Learning tierce (telle que PyTorch ou Keras) et utilise la fonction raster Python spécifiée pour traiter chaque objet.
Vous trouverez des exemples de cas d’utilisation de cet outil sur la page de la fonction raster Python de Esri dans GitHub. Vous pouvez également écrire des modules Python personnalisés en suivant les exemples et les instructions.
Le paramètre Définition du modèle Esri peut être un fichier JSON de définition de modèle Esri (.emd), une chaîne JSON ou un paquetage de modèle d’apprentissage profond (.dlpk). Une chaîne JSON est utile lorsque cet outil est utilisé sur le serveur de manière à pouvoir coller la chaîne JSON au lieu de télécharger le fichier .emd. Le fichier .dlpk doit être stocké localement.
The following sample is for an .emd file:
{ "Framework": "Keras", "ModelConfiguration":"KerasClassifier", "ModelFile":"C:\\DeepLearning\\Damage_Classification_Model_V7.h5", "ModelType":"ObjectClassification", "ImageHeight":256, "ImageWidth":256, "ExtractBands":[0,1,2], "CropSizeFixed": 1, "BlackenAroundFeature": 1, "ImageSpaceUsed": "MAP_SPACE", "Classes": [ { "Value": 0, "Name": "Damaged", "Color": [255, 0, 0] }, { "Value": 1, "Name": "Undamaged", "Color": [76, 230, 0] } ] }
The CropSizeFixed property defines the crop mode of the raster tile around each object. A value of 1 means a fixed raster tile will be used, defined by the ImageHeight and ImageWidth properties in the .emd file. The object is centered within the fixed tile size. A value of 0 means a variable tile size will be used in which the raster tile is cropped using the smallest bounding box around the object.
The BlackenAroundFeature property specifies whether the pixels that are outside each object will be masked. A value of 0 means the pixels outside of the object will not be masked. A value of 1 means the pixels outside of the object will be masked.
L’outil peut traiter l’imagerie en entrée existant dans l’espace cartographique ou la résolution. L’imagerie dans l’espace cartographique se trouve dans un système de coordonnées basé sur une carte. L’imagerie dans la résolution se trouve dans un espace d’image brut, sans rotation ni distorsion. Le système de référence peut être spécifié lors de la génération des données d’entraînement dans l’outil Exporter les données d’apprentissage pour l’apprentissage profond à l’aide du paramètre Reference System (Système de référence). Si le modèle est entraîné dans un logiciel d’entraînement tiers, le système de référence doit être spécifié dans le fichier .emd à l’aide du paramètre ImageSpaceUsed , qui peut être défini sur MAP_SPACE ou PIXEL_SPACE.
Le raster en entrée peut consister en un raster unique, en plusieurs rasters ou en une classe d’entités avec des images rattachées. Pour plus d’informations sur les fichiers joints, reportez-vous à la section Ajouter ou supprimer des fichiers joints.
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. .
Pour obtenir plus d’informations sur l’apprentissage profond, reportez-vous à la rubrique Apprentissage profond dans ArcGIS Pro.
Paramètres
ClassifyObjectsUsingDeepLearning(in_raster, out_feature_class, in_model_definition, {in_features}, {class_label_field}, {processing_mode}, {model_arguments}, {caption_field})
Nom | Explication | Type de données |
in_raster | The input image that will be used to detect objects. The input can be a single raster or multiple rasters in a mosaic dataset, image service, or folder of images. A feature class with image attachments is also supported. | Raster Dataset; Raster Layer; Mosaic Layer; Image Service; Map Server; Map Server Layer; Internet Tiled Layer; Folder; Feature Layer; Feature Class |
out_feature_class | The output feature class that will contain geometries surrounding the objects or feature from the input feature class, as well as a field to store the categorization label. | Feature Class |
in_model_definition | La valeur du paramètre in_model_definition peut être un fichier JSON de définition de modèle Esri (.emd), une chaîne JSON ou encore un paquetage de modèle d’apprentissage profond (.dlpk). Une chaîne JSON est utile lorsque cet outil est utilisé sur le serveur de manière à pouvoir coller la chaîne JSON au lieu de télécharger le fichier .emd. Le fichier .dlpk doit être stocké localement. Il contient le chemin d’accès au fichier du modèle binaire d’apprentissage profond, le chemin d’accès à la fonction raster Python à utiliser et d’autres paramètres, tels que le remplissage ou la taille de préférence des tuiles. | File; String |
in_features (Facultatif) | The point, line, or polygon input feature class that identifies the location of each object or feature to be classified and labelled. Each row in the input feature class represents a single object or feature. If no input feature class is specified, it is assumed that each input image contains a single object to be classified. If the input image or images use a spatial reference, the output from the tool is a feature class in which the extent of each image is used as the bounding geometry for each labelled feature class. If the input image or images are not spatially referenced, the output from the tool is a table containing the image ID values and the class labels for each image. | Feature Class; Feature Layer |
class_label_field (Facultatif) | The name of the field that will contain the class or category label in the output feature class. If no field name is specified, a ClassLabel field will be generated in the output feature class. | 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 |
model_arguments [model_arguments,...] (Facultatif) | Arguments des fonctions définis dans la classe de fonctions raster Python. C’est là que sont répertoriés les paramètres d’apprentissage profond supplémentaires et les arguments des expériences et améliorations, tels qu’un seuil de confiance pour l’ajustement de la sensibilité. Les noms des arguments sont renseignés à partir du module Python. | Value Table |
caption_field (Facultatif) |
The name of the field that will contain the text or caption in the output feature class. This parameter is only supported when an Image Captioner model is used. If no field name is specified, a Caption field will be generated in the output feature class. | String |
Exemple de code
This example generates a new feature class with a label field to classify damaged and undamaged buildings in an image.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
ClassifyObjectsUsingDeepLearning("C:/Data/Input_Image.tif",
"C:/Data/MyProject.gdb/Classified_Results", "C:/Data/BuildingDamageClassifier.emd",
"C:/Data/building_footprints.shp","Class_Label",
"PROCESS_AS_MOSAICKED_IMAGE", "padding 0;batch_size 4")
This example generates a new feature class with a label field to classify damaged and undamaged buildings in an image.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Define input parameters
in_raster = "C:/Classify_Objects/input_image.tif"
out_feature_class = "C:/Classify_Objects/MyProject.gdb/classified_results"
in_model_definition = "C:/Classify_Objects/BuildingDanmageClassifier.emd"
in_features = "C:/Classify_Objects/building_footprints.shp"
class_label_field = "Damaged_or_Undamaged"
model_arguments = "padding 0;batch_size 4"
process_all_raster_items = "PROCESS_AS_MOSAICKED_IMAGE"
# Execute
ClassifyObjectsUsingDeepLearning(in_raster, out_feature_class, in_model_definition,
in_features, class_label_field,
process_all_raster_items, model_arguments)
Environnements
Cas particuliers
Informations de licence
- Basic: Nécessite Image Analyst
- Standard: Nécessite Image Analyst
- Advanced: Nécessite Image Analyst
Rubriques connexes
- An overview of the Deep Learning toolset
- Installer des structures d’apprentissage profond pour ArcGIS
- Train Deep Learning Model
- Deep learning models
- Rechercher un outil de géotraitement
- Detect Objects Using Deep Learning
- Exporter les données d’apprentissage pour l'apprentissage en profondeur
- Object classification
Vous avez un commentaire à formuler concernant cette rubrique ?