Crear máscara binaria (Image Analyst)

Disponible con licencia de Image Analyst.

Resumen

Convierte un dataset ráster de entrada en un ráster binario. Los píxeles se etiquetan como máscara o fondo según los valores definidos por el usuario.

Uso

  • Esta herramienta clasifica un ráster de entrada como fondo o máscara en función de los valores de los parámetros y genera un ráster de máscara binaria en la que un valor de 1 indica píxeles de máscara y un valor de 0 indica píxeles de fondo.

    Nota:

    Cree el fondo inicial del ráster de entrada utilizando primero una función de umbral como Nueva representación cartográfica, Umbralización binaria, Nueva representación cartográfica zonal, Máscara, operadores matemáticos (<, <, >, >) y otros.

  • Cuando el ráster de máscara binaria de salida se aplica a un ráster, los píxeles que se solapan con los píxeles de fondo del ráster de máscara binaria se convertirán en NoData.

  • Con esta herramienta puede eliminar regiones pequeñas, reducir o ampliar regiones, rellenar regiones de fondo pequeñas y suavizar límites.

  • El parámetro Relleno por inundación del límite de la imagen permite especificar si los píxeles situados dentro del límite de la máscara se clasificarán como fondo.

  • Utilice el parámetro Relleno de inundación desde el límite de la imagen si desea crear una máscara de una isla que mantenga los píxeles de agua de la isla como valores de máscara. La herramienta realiza el relleno de inundación en los píxeles de agua y finaliza cuando alcanza los píxeles de tierra. Los límites de la máscara de salida permanecerán intactos.

    Resultados del parámetro Relleno por inundación del límite de la imagen
    El parámetro Relleno de inundación desde el límite de la imagen está activado (primera imagen) y desactivado (segunda imagen).

  • Las unidades de los valores de los parámetros Expandir máscara y Expandir fondo son píxeles. Los valores pueden ser negativos, lo que resulta en la reducción de la máscara y el fondo.

  • Para eliminar pequeños grupos de píxeles de fondo, utilice un valor negativo para el parámetro Expandir máscara y un valor positivo para el parámetro Expandir fondo.

Parámetros

EtiquetaExplicaciónTipo de datos
Ráster de entrada

El dataset ráster de entrada. Si la entrada es multibanda, se utilizará por defecto la primera banda.

Mosaic Layer; Raster Layer; Image Service; String; Raster Dataset; Mosaic Dataset
Ráster de máscara de salida

El dataset ráster binario de salida. Los formatos compatibles son TIFF, CRF y PNG.

Raster Dataset
Valor de fondo
(Opcional)

El valor de fondo para el ráster de salida. El valor predeterminado es 0.

Double
Relleno de inundación desde límite de imagen
(Opcional)

Especifica cómo se determinarán los valores de los píxeles de fondo.

  • Activado: los valores de los píxeles de fondo se determinarán mediante la operación de relleno por inundación, que rellena los píxeles conectados desde el límite de la imagen hasta el límite de la máscara. Los píxeles dentro de la máscara no se convertirán en fondo independientemente de su valor.
  • Desactivado: los valores de los píxeles de fondo se determinarán por el valor de fondo especificado. Esta es la opción predeterminada.

Boolean
Expandir fondo
(Opcional)

El número de píxeles que se utilizarán para expandir o encoger el fondo. Los valores negativos reducirán el fondo.

Long
Expandir máscara
(Opcional)

El número de píxeles que se utilizarán para expandir o encoger la máscara. Los valores negativos reducirán la máscara.

Long
Tamaño mínimo de región de máscara
(Opcional)

El número de píxeles conectados que se utilizarán para definir una región de máscara. Las regiones de la máscara que sean más pequeñas que este tamaño se clasificarán como fondo.

Long
Establecer fondo como NoData
(Opcional)

Especifica si el valor de fondo se establecerá en NoData.

  • Activado: el valor de fondo se establecerá en NoData.
  • Desactivado: el valor de fondo se establecerá en NoData. Esta es la opción predeterminada.

Boolean

CreateBinaryMask(in_raster, out_raster, {background_value}, {flood_fill}, {expand_background}, {expand_mask}, {min_region_size}, {background_nodata})
NombreExplicaciónTipo de datos
in_raster

El dataset ráster de entrada. Si la entrada es multibanda, se utilizará por defecto la primera banda.

Mosaic Layer; Raster Layer; Image Service; String; Raster Dataset; Mosaic Dataset
out_raster

El dataset ráster binario de salida. Los formatos compatibles son TIFF, CRF y PNG.

Raster Dataset
background_value
(Opcional)

El valor de fondo para el ráster de salida. El valor predeterminado es 0.

Double
flood_fill
(Opcional)

Especifica cómo se determinarán los valores de los píxeles de fondo.

  • FLOOD_FILLLos valores de los píxeles de fondo se determinarán mediante la operación de relleno por inundación, que rellena los píxeles conectados desde el límite de la imagen hasta el límite de la máscara. Los píxeles dentro de la máscara no se convertirán en fondo independientemente de su valor.
  • NO_FLOOD_FILLLos valores de los píxeles de fondo se determinarán por el valor de fondo especificado. Esta es la opción predeterminada.
Boolean
expand_background
(Opcional)

El número de píxeles que se utilizarán para expandir o encoger el fondo. Los valores negativos reducirán el fondo.

Long
expand_mask
(Opcional)

El número de píxeles que se utilizarán para expandir o encoger la máscara. Los valores negativos reducirán la máscara.

Long
min_region_size
(Opcional)

El número de píxeles conectados que se utilizarán para definir una región de máscara. Las regiones de la máscara que sean más pequeñas que este tamaño se clasificarán como fondo.

Long
background_nodata
(Opcional)

Especifica si el valor de fondo se establecerá en NoData.

  • BACKGROUND_NODATAEl valor de fondo se establecerá en NoData.
  • BACKGROUND_DATAEl valor de fondo no se establecerá en NoData. Esta es la opción predeterminada.
Boolean

Muestra de código

CreateBinaryMask (ventana de Python)

Este ejemplo crea un ráster binario en la que se rellenan todos los píxeles dentro del límite de la máscara.

#Import system modules and check out extension
import arcpy 
from arcpy.ia import *
arcpy.CheckOutExtension("ImageAnalyst") 

#Execute
output = arcpy.ia.CreateBinaryMask(r'C:\data\in_raster.crf”, 0, True, 0, 0, 100, 'BACKGROUND_DATA'') 

#Save output
output.save('c:\data\out_mask.tif')
CreateBinaryMask (script independiente)

Este ejemplo crea un ráster binario en la que se rellenan todos los píxeles dentro del límite de la máscara.

# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy 
from arcpy.ia import *
arcpy.CheckOutExtension("ImageAnalyst") 

#Set local variables
in_raster = r'C:\data\input_raster.crf'         
background_value=0        
flood_fill=True     
expand_background=0        
expand_mask=0     
min_region_size=100       
background_nodata=False     
   
#Execute
out_raster = arcpy.ia.CreateBinaryMask(in_raster, background_value, flood_fill, 
				expand_background, expand_mask, min_region_size, 
				background_nodata)

#Save the output
out_raster.save(r'C:\Data\FloodMap\WaterMask.crf')

Temas relacionados