Resumen
Genera un archivo de definición de clasificador de Esri (.ecd) utilizando la definición de clasificación de Máquina de vectores de soporte (SVM).
Uso
El clasificador SVM es un método de clasificación supervisado eficaz. Es idóneo para entradas de ráster segmentadas, pero también permite manejar imágenes estándar. Es un método de clasificación que se suele utilizar en la comunidad de investigación.
Para las entradas de imagen estándar, la herramienta acepta imágenes de varias bandas con cualquier profundidad de bit y realiza la clasificación de SVM por píxel, según el archivo de entidades de formación de entrada.
Para los rásteres segmentados, que tienen establecida la propiedad clave en Segmentada, la herramienta calcula la imagen de índice y los atributos de segmento asociados del ráster segmentado RGB. Se calculan los atributos para generar el archivo de definición de clasificador que se va a utilizar en una herramienta de clasificación aparte. Los atributos de cada segmento se pueden calcular desde cualquier imagen compatible con Esri.
La herramienta de clasificador de SVM ofrece varias ventajas, en comparación con el método de clasificación tradicional:
- El clasificador SVM necesita muchas menos muestras y no requiere que las muestras estén distribuidas normalmente.
- Es menos susceptible al ruido, a las bandas correlacionadas y al desequilibrio entre la cantidad o el tamaño de los sitios de formación dentro de cada clase.
Se acepta como entrada cualquier ráster compatible con Esri, incluidos productos de ráster, rásteres segmentados, mosaicos, servicios de imágenes o datasets ráster genéricos. Los rásteres segmentados deben tener 8 bits y 3 bandas.
Para crear el archivo de ejemplo de formación, utilice el Administrador de ejemplos de formación de la barra de herramientas Clasificación de imagen. Para obtener información sobre cómo utilizar la barra de herramientas Clasificación de imagen, consulte ¿Qué es la clasificación de imagen?
El parámetro Atributos de segmento solo está habilitado si una de las entradas de capa ráster es una imagen segmentada.
Sintaxis
TrainSupportVectorMachineClassifier (in_raster, in_training_features, out_classifier_definition, {in_additional_raster}, {max_samples_per_class}, {used_attributes})
Parámetro | Explicación | Tipo de datos |
in_raster | Seleccione el dataset ráster que desee clasificar. Como entrada se prefiere un dataset de ráster segmentado de 3 bandas y 8 bits, donde todos los píxeles del mismo segmento tienen el mismo color. La entrada también puede ser un ráster segmentado en escala de grises de 1 banda y 8 bits. Si no hay disponible ningún ráster segmentado, puede utilizar cualquier dataset ráster compatible con Esri. | Raster Layer; Mosaic Layer; Image Service; String |
in_training_features | Seleccione el archivo de muestra de formación o la capa que delinea los sitios de formación. Estos pueden ser shapefiles o clases de entidad que contengan las muestras de formación. | Feature Layer; Raster Catalog Layer |
out_classifier_definition | Se trata de un archivo JSON que contiene información de atributos, estadísticas, vectores de hiperplano y otra información necesaria para el clasificador. Se crea un archivo con la extensión .ecd. | File |
in_additional_raster (Opcional) | Existe la opción de incorporar datasets ráster auxiliares, como una imagen multiespectral o un DEM, para generar atributos, así como otra información necesaria para la clasificación. | Raster Layer; Mosaic Layer; Image Service; String |
max_samples_per_class (Opcional) | El número máximo de muestras que se van a utilizar para definir cada clase. Se recomienda un valor predeterminado de 500 cuando las entradas son rásteres no segmentados. Un valor igual o menor que 0 significa que el sistema siempre utilizará todas las muestras de los sitios de formación para preparar el clasificador. | Long |
used_attributes [used_attributes;used_attributes,...] (Opcional) | Especifique los atributos que se deben incluir en la tabla de atributos asociada al ráster de salida.
Este parámetro solo está habilitado si la propiedad clave Segmentado se establece en verdadera en el ráster de entrada. Si la única entrada en la herramienta es una imagen segmentada, los atributos predeterminados son COLOR, COUNT, COMPACTNESS y RECTANGULARITY. Si también se incluye un in_additional_raster como entrada junto a la imagen segmentada, MEAN y STD están disponibles como opciones. | String |
Muestra de código
Ejemplo 1 de TrainSupportVectorClassifier (ventana de Python)
En este ejemplo de Python se utiliza el clasificador de SVM para clasificar un ráster segmentado.
import arcpy
from arcpy.sa import *
arcpy.gp.TrainSupportVectorMachineClassifier(
"c:/test/moncton_seg.tif", "c:/test/train.gdb/train_features",
"c:/output/moncton_sig_SVM.ecd", "c:/test/moncton.tif", "10",
"COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY")
Ejemplo 2 de TrainSupportVectorClassifier (secuencia de comandos independiente)
En esta secuencia de comandos de Python se utiliza el clasificador de SVM para clasificar un ráster segmentado.
# Import system modules
import arcpy
from arcpy.sa import *
# Set local variables
inSegRaster = "c:/test/moncton_seg.tif"
train_features = "c:/test/train.gdb/train_features"
out_definition = "c:/output/moncton_sig.ecd"
in_additional_raster = "c:/moncton.tif"
maxNumSamples = "10"
attributes = "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
#Execute
arcpy.gp.TrainSupportVectorMachineClassifier(
inSegRaster, train_features, out_definition,
in_additional_raster, maxNumSamples, attributes)
Entornos
Información sobre licencias
- ArcGIS Desktop Basic: Requiere Spatial Analyst
- ArcGIS Desktop Standard: Requiere Spatial Analyst
- ArcGIS Desktop Advanced: Requiere Spatial Analyst