Disponible con licencia de Image Analyst.
Disponible con una licencia de Spatial Analyst.
All supervised deep learning tasks depend on labeled datasets, which means humans must apply their knowledge to train the neural network on what it is working to identify. The labeled objects will be used by the neural network to train a model that can be used to perform inferencing on data.
Image annotation, or labeling, is vital for deep learning tasks such as computer vision and learning. A large amount of labeled data is required to train a good deep learning model. When the right training data is available, deep learning systems can be highly accurate in feature extraction, pattern recognition, and complex problem solving. The Label Objects for Deep Learning pane can be used to quickly and accurately label data.
The Label Objects for Deep Learning button is found in the Classification Tools drop-down menu, in the Image Classification group on the Imagery tab. The pane is divided into two parts. The top part of the pane is used for managing classes, and the bottom part of the pane is used for managing the collection of the samples and for exporting the training data for the deep learning frameworks.
Create classes and label objects
The top portion of the pane allows you to manage object classes and manually create the objects used for training the deep learning model. There are many tools available to help you create labeled objects.
Tool | Function |
---|---|
Create a labeled object by drawing a rectangle around a feature or object in the raster. | |
Create a labeled object by drawing a polygon around a feature or object in the raster. | |
Create a labeled object by drawing a circle around a feature or object in the raster. | |
Create a labeled object by drawing a freehand shape around a feature or object in the raster. | |
Create a feature by selecting a segment from a segmented layer. This option is only available if there is a segmented layer in the Contents pane. Activate the Segment Picker by highlighting the segmented layer in the Contents pane, then select the layer from the Segment Picker drop-down list. | |
Assigns the selected class to the current image. This is only available in Image Collection mode. | |
Select and edit a labeled object. | |
Create a classification schema. | |
Select a classification schema option.
| |
Save changes to the schema. | |
Save a new copy of the schema. | |
Add a class category to the schema. Select the name of the schema first to create a parent class at the highest level. Select the name of an existing class to create a subclass. | |
Remove the selected class or subclass category from the schema. |
- Click one of the sketch tools, such as Rectangle, Polygon, Circle, or Freehand, to begin collecting object samples.
- Using a sketch tool,
delineate the image feature representing the object on the map.
- If you are creating a feature without a class specified, the Define Class dialog box appears. For more information about this dialog box, see the Define Class section.
- Continue to create and label objects as specified in the steps above.
- You can use the Labeled Objects tab (at the bottom of the pane) to delete and organize your labeled object samples.
- Once you are satisfied with all your labeled objects, save your samples by clicking the Save button on the Labeled Objects tab.
Now that you have manually labeled a representative sample of objects, these can be used to export your training data.
Define Class
The Define Class dialog box allows you to create a new class or define an existing class. If you choose Use Existing Class, select the appropriate Class Name option for that object. If you choose Add New Class, you can optionally edit the information and click OK to create the new class.
Label image collections
If you have an image collection, or want to label individual images within a mosaic dataset, use the Image Collection tab. For more information about image collections, see Mosaic datasets.
Using the mosaic layer, you can label each of the images. Using the Image Collection tab, you can access the list of images in the drop-down list. The selected image will draw in the map. You can then label the image with the appropriate class. Use the arrow buttons to choose the next image you want to view and label.
When your image is in an Image Coordinate System (ICS), the image may be in an unusual orientation, especially when dealing with oblique or perspective imagery. To view your image in pixel space, check the Label in pixel space check box. This will draw the image in an orientation more conducive to intuitive image interpretation.
Label the entire image
For instances when you don't want to draw a boundary around an object, you can use the Label Image button to label the entire image with the selected class, irrespective of the spatial aspect of the object.
Labeled Objects
The Labeled Objects tab is located in the bottom section of the pane and manages the training samples you have collected for each class. Collect representative sites, or training samples, for each class in the image. A training sample has location information (polygon) and an associated class. The image classification algorithm uses the training samples, saved as a feature class, to identify the land cover classes in the entire image.
You can view and manage training samples by adding, grouping, or removing them. When you select a training sample, it is selected on the map. Double-click a training sample in the table to zoom to it on the map.
Tool | Function |
---|---|
Open an existing training samples feature class. | |
Save edits made to the current labeled objects feature class. | |
Save the current labeled objects as a new feature class. | |
Delete the selected labeled objects. |
Export Training Data
Once samples have been collected, you can export them into training data by clicking the Export Training Data tab. The training data can then be used in a deep learning model. Once the parameters have been filled in, click Run to create the training data.
Parameter | Description |
---|---|
Output Folder | Choose the output folder where the training data will be saved. |
Mask Polygon Features | Una clase de entidad poligonal que delinea el área en la que se crearán los chips de imagen. Solo se crean los chips de imagen que recaen completamente dentro de los polígonos. |
Image Format | Specifies the raster format for the image chip outputs.
Los formatos PNG y JPEG admiten hasta tres bandas. |
Tile Size X | El tamaño de los chips de imagen para la dimensión x. |
Tile Size Y | El tamaño de los chips de imagen para la dimensión y. |
Stride X | La distancia a la que se desplaza la dirección x al crear los siguientes chips de imagen. Cuando el paso equivale al tamaño de la tesela, no habrá ninguna superposición. Cuando el paso equivale a la mitad del tamaño de la tesela, habrá una superposición del 50 por ciento. |
Stride Y | La distancia a la que se desplaza la dirección y al crear los siguientes chips de imagen. Cuando el paso equivale al tamaño de la tesela, no habrá ninguna superposición. Cuando el paso equivale a la mitad del tamaño de la tesela, habrá una superposición del 50 por ciento. |
Rotation Angle | The rotation angle that will be used to generate additional image chips. An image chip will be generated with a rotation angle of 0, which means no rotation. It will then be rotated at the specified angle to create an additional image chip. The same training samples will be captured at multiple angles in multiple image chips for data augmentation. The default rotation angle is 0. |
Output No Feature Tiles | Especifica si se exportarán los chips de imagen que no capturen muestras de entrenamiento.
|
Metadata format | Especifica el formato que se utilizará para las etiquetas de metadatos de salida. Si los datos de muestra de entrenamiento de entrada son una capa de clase de entidad, como por ejemplo una capa de edificios o un archivo de muestra de entrenamiento de clasificación estándar, utilice la opción Etiquetas KITTI o PASCAL Visual Object Classes (KITTI_rectangles o PASCAL_VOC_rectangles en Python). Los metadatos de salida son un archivo .txt o un archivo .xml que contiene los datos de muestra de entrenamiento incluidos en el rectángulo mínimo de delimitación. El nombre del archivo de metadatos coincide con el nombre de la imagen de origen de entrada. Si los datos de muestra de entrenamiento de entrada son un mapa de clase, utilice la opción Teselas clasificadas (Classified_Tiles en Python) como formato de metadatos de salida.
El formato de metadatos KITTI permite 15 columnas, pero solo se utilizan 5 de ellas en la herramienta. La primera columna es el valor de clase. Las siguientes 3 columnas se omiten. Las columnas 5 a 8 definen el rectángulo mínimo de delimitación, que consta de cuatro ubicaciones de coordenada de imagen: píxeles izquierdo, superior, derecho e inferior. El rectángulo mínimo de delimitación comprende el chip de formación utilizado en el clasificador de aprendizaje profundo. Las columnas restantes no se utilizan. |
Blacken Around Feature | Especifica si se ocultarán los píxeles situados alrededor de cada objeto o entidad de cada tesela de imagen.
Este parámetro solo se aplica si el parámetro Formato de metadatos tiene el valor Teselas etiquetadas y se ha especificado una clase de entidad de entrada o un ráster clasificado. |
Crop Mode | Especifica si las teselas exportadas se deben recortar de forma que todas tengan el mismo tamaño.
Este parámetro solo se aplica si el parámetro Formato de metadatos tiene el valor Teselas etiquetadas o bien ImageNet y se ha especificado una clase de entidad de entrada o un ráster clasificado. |
Reference System | Especifica el tipo de sistema de referencia que se usará para interpretar la imagen de entrada. El sistema de referencia especificado debe coincidir con el sistema de referencia utilizado para entrenar el modelo de aprendizaje profundo.
|
Additional Input Raster | An additional input imagery source for image translation methods. This parameter is valid when the Metadata Format parameter is set to Classified Tiles, Export Tiles, or CycleGAN. |
The exported training data can now be used in a deep learning model.