Conexiones de corredor óptimas (Spatial Analyst)

Resumen

Calcula las conexiones de corredor óptimas entre dos o más regiones de entrada.

Más información sobre cómo conectar ubicaciones con corredores

Uso

  • Las regiones de entrada pueden ser datos ráster o datos de entidad.

  • En un ráster, una región es un grupo de celdas con el mismo valor que son contiguas unas a otras (adyacentes). Cuando las regiones de entrada se identifican mediante un ráster, si hay zonas (celdas con el mismo valor) que están formadas por varias regiones, ejecute primero la herramienta Grupo de regiones como paso de preprocesamiento para asignar valores únicos a cada región. Luego utilice el ráster resultante como las regiones de entrada de la herramienta.

  • Si las regiones de entrada se identifican mediante datos de polígonos, líneas o puntos, estos se convierten a ráster utilizando el Id. de la entidad para garantizar que las regiones resultantes tengan valores únicos. Los polígonos multiparten o se pueden utilizar como entrada. Cuando se proporcionan datos multipunto, la herramienta selecciona aleatoriamente uno de los puntos en la ubicación como el valor de la región.

    No puede controlar la resolución de las regiones de la entidad de entrada rasterizada con el entorno de Tamaño de celda. De forma predeterminada, la resolución se establecerá en la resolución del ráster de costes de entrada si se proporciona uno.

  • Al utilizar datos de entidad poligonal para los datos de regiones de entrada, se debe tener cuidado con la manera en que el tamaño de celda de salida se maneja cuando es grueso en relación con los detalles presentes en la entrada. El proceso de rasterización interno utiliza el mismo método Tipo de asignación de celda predeterminado que la herramienta De polígono a ráster, que es Centro de celda. Esto significa que los datos no ubicados en el centro de la celda no se incluirán en la región rasterizada intermedia y no se representarán en los cálculos de distancia. Por ejemplo, si las regiones son una serie de polígonos pequeños, como huellas de edificios que son pequeños en relación con el tamaño de celda de salida, quizá solo unos pocos caigan debajo de los centros de las celdas ráster de salida, ocasionando aparentemente que la mayor parte de los otros se pierdan en el análisis.

    Para evitarlo, rasterice las entidades de entrada directamente utilizando la herramienta De polígono a ráster, defina un valor para Campo de prioridad y utilice la salida resultante como entrada para la herramienta. Alternativamente, seleccione un tamaño de celda lo suficientemente pequeña para capturar la cantidad adecuada de detalle de las entidades de entrada.

  • Si la entrada de la región es una entidad, se utilizará el campo ObjectID como identificadores de la región.

  • Las ubicaciones identificadas por el parámetro Ráster de entrada o barreras de entidad, las ubicaciones con NoData en el parámetro Ráster de costes de entrada o las ubicaciones que no están dentro de la Máscara del entorno actúan todas como barreras.

  • El entorno Máscara se puede establecer en una clase de entidad o en un dataset de ráster. Si la máscara es una de entidades, se convertirá en un ráster. Las celdas que tienen un valor definen las ubicaciones que se encuentren dentro del área de la máscara. Las celdas NoData definen las ubicaciones que están fuera del área de la máscara y que se tratarán como unabarrera.

  • La extensión de procesamiento predeterminada es la misma que la del valor del parámetro Ráster de costes de entrada, si se proporciona alguna; de lo contrario, se definirá según la extensión de las regiones de entrada.

  • El valor del parámetro Ráster de costes de entrada no puede contener valores de cero porque el algoritmo es un proceso multiplicativo. Si el ráster de costes contiene valores de cero y estos valores representan áreas de coste más bajo, cambie los valores de cero a un valor positivo bajo (como 0,01) antes de ejecutar esta herramienta.

    Puede utilizar la herramienta Con para cambiar las celdas con valor de cero a otro valor. Si las áreas con un valor de cero representan áreas que deberían excluirse del análisis, ejecute primero la herramienta Establecer nulos para convertir estos valores a NoData.

  • Cuando se proporciona el valor del parámetro Ráster de costes de entrada, la herramienta realiza los cálculos en esa superficie de coste basándose en el valor del parámetro Ancho del corredor. Esto garantiza la creación de corredores óptimos para el ancho especificado y puede dar lugar a que las regiones situadas cerca del borde de la superficie queden desconectadas de los demás resultados.

    Especificar regiones situadas cerca del valor del parámetro Ráster de entrada o barreras de entidad también puede dar lugar a corredores inconexos.

  • Para los parámetros Polígonos de corredor de vecindad de salida y Líneas de conexión de vecindad de salida, si no se proporciona una superficie de coste, las vecindades se identificarán por la distancia euclidiana. En tal caso, el vecino más cercano a una región es el más cercano en cuando a distancia. Sin embargo, si se proporciona una superficie de coste, los vecinos se identificarán mediante coste-distancia, lo que hace que el vecino más cercano de una región sea el más barato al que viajar. Se lleva a cabo una operación de asignación de costes para identificar las regiones vecinas entre sí.

  • El valor del parámetro Polígonos de corredor de vecindad de salida se crea a partir de las rutas generadas en la salida opcional de líneas conexiones vecinas. Las rutas generadas en la salida opcional de líneas de conexiones vecinas se convierten en una teoría de grafos. Las regiones son los vértices, las rutas son los bordes y las distancias o costes acumulados son los pesos de los bordes. El árbol de expansión mínima se calcula a partir de la representación gráfica de las rutas para determinar la red de líneas de conexión óptima necesaria para viajar entre las regiones. A continuación, se crea la red óptima de polígonos de corredor a partir de la red óptima de líneas de conexión.

  • El valor del parámetro Líneas de conexión óptimas de salida es un subconjunto de las rutas generadas por el parámetro Líneas de conexión vecinas opcionales de salida. Para calcular este subconjunto, las líneas de conexión vecinas se convierten a la teoría de grafos. Las regiones son los vértices, las rutas son los bordes y las distancias o costes acumulados son los pesos de los bordes. El árbol de expansión mínima se calcula a partir de la representación gráfica de las rutas para determinar el subconjunto de líneas de conexión óptimas necesariar para viajar entre las regiones.

  • Cada línea óptima llega al límite exterior del polígono o región de varias celdas. Desde el perímetro de la región, la herramienta sigue las rutas con segmentos de línea adicionales, permitiendo la entrada y salida de puntos entre las regiones y el movimiento dentro de ellas. No existe distancia ni coste de movimiento adicional entre estos segmentos de línea.

  • En función de la configuración de las regiones de entrada y sus vecinos de asignación, una ruta puede atravesar una región intermedia para alcanzar una región vecina. Dicha ruta generará costes a medida que se mueve por esa región intermedia.

  • El valor del parámetro Líneas de conexión vecinas de salida se puede utilizar como red alternativa a la red del árbol de expansión mínima. Esta salida conecta cada región con sus regiones de coste vecinas, produciendo una red más compleja con muchas rutas. La clase de entidad se puede utilizar tal cual o como base desde la cual crear la red. Para ello, seleccione las rutas específicas que desea incluir en la red utilizando el botón Seleccionar por atributos, el grupo Seleccionar de la pestaña Mapa o la herramienta Seleccionar capa por atributos. La selección de las rutas puede basarse en el conocimiento del área y en las estadísticas asociadas con las rutas de la tabla de atributos resultante.

  • Los corredores creados por esta herramienta son corredores de ancho fijo. El parámetro Ancho de corredor identifica el ancho fijo de los corredores como distancia lineal. Cuando el valor del parámetro Ancho de corredor es 0, los corredores de salida serán líneas de ruta óptimas.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Ráster o regiones de entidades de entrada

Regiones de entrada a las que se conectarán los corredores óptimos.

Las regiones se pueden definir mediante un dataset ráster o un dataset de entidades.

Si la entrada de la región es un ráster, las regiones se definen mediante grupos de celdas contiguas (adyacentes) con el mismo valor. Cada región se debe numerar de forma única. Las celdas que no formen parte de ninguna región deberán ser NoData. El tipo de ráster debe ser un número entero y los valores pueden ser positivos o negativos.

Si la entrada de la región es un dataset de entidades, puede ser de polígonos, polilíneas o puntos. Las regiones de la entidad poligonal no pueden estar compuestas por polígonos multiparte.

Raster Layer; Feature Layer
Polígonos de corredor óptimos de salida

Clase de entidad de polígono o de línea de salida de los corredores óptimos que conectan cada una de las regiones de entrada. Los corredores (o líneas) se solaparán en los lugares donde los corredores recorran la misma ruta.

Cada corredor (o línea) está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • CORR_ID— Identificador único del corredor
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta
Feature Class
Ráster de entrada o barreras de entidad
(Opcional)

El dataset que define las barreras.

Las barreras pueden definirse mediante un ráster entero o de punto flotante, o mediante una entidad de punto, de línea o de polígono.

Raster Layer; Feature Layer
Ráster de costes de entrada
(Opcional)

Ráster que define la impedancia o el coste de hacer un movimiento planimétrico por medio de cada celda.

El valor de cada ubicación de celda representa la distancia de coste por unidad para moverse a través de la celda. Cada valor de ubicación de celda se multiplica por la resolución de la celda mientras que también se compensa por el movimiento diagonal para obtener el coste total de pasar por medio de la celda.

Los valores del ráster de coste pueden ser enteros o de punto flotante, pero no pueden ser negativos o cero (no puede tener un coste negativo o cero).

Raster Layer
Líneas de conexión óptimas de salida
(Opcional)

La clase de entidad de línea de salida identifica las líneas óptimas para conectar cada una de las regiones de entrada. Las líneas se solaparán en los lugares donde las rutas recorran la misma ruta.

Cada ruta (o línea) está numerada de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • PATHID— Identificador único de la ruta
  • PATHCOST— Distancia o coste acumulado total de la ruta
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Feature Class
Polígonos de corredor vecinos de salida
(Opcional)

Polígono o clase de entidad de línea de salida que identifica los corredores óptimos que conectan cada región con cada uno de los vecinos más próximos o de coste. Los corredores (o líneas) se solaparán en los lugares donde los corredores recorran la misma ruta.

Cada corredor está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • CORRIDORID— Identificador único del corredor
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Feature Class
Líneas de conexión vecinas de salida
(Opcional)

Clase de entidad de línea de salida que identifica la línea óptima desde cada región hasta cada uno de sus vecinos más cercanos o de coste.

Cada corredor (o polígono) está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • PATHID— Identificador único de la ruta
  • PATHCOST— Distancia o coste acumulado total de la ruta
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Como cada ruta se representa mediante una línea única, habrá varias líneas en las ubicaciones donde la misma ruta es óptima.

Feature Class
Método de corredor
(Opcional)

Especifica cómo se creará el corredor.

  • Corredor de ancho fijoEl corredor tendrá un ancho fijo y los corredores y rutas óptimos se crearán en función de este ancho. Esta es la opción predeterminada.
Nota:

Esta versión solo dispone de un método para crear corredores: ancho fijo. Al existir una única opción predeterminada, este parámetro estará inactivo y no aparecerá en el cuadro de diálogo de la herramienta.

String
Ancho del corredor
(Opcional)

Distancia lineal que define el ancho de los corredores resultantes. El valor debe ser mayor o igual que cero. El valor predeterminado es cero.

Double
Método de distancia
(Opcional)

Especifica si el cálculo se basará en un método planar (tierra plana) o geodésico (elipsoide).

  • PlanarEl cálculo de distancia se realizará sobre un plano plano proyectado usando un sistema de coordenadas cartesianas 2D. Esta es la opción predeterminada.
  • GeodésicaEl cálculo de distancia se realizará en el elipsoide. Los resultados no cambiarán, con independencia de la proyección de entrada o salida.
String

OptimalCorridorConnections(in_regions, out_optimal_polygons, {in_barriers}, {in_cost_raster}, {out_optimal_lines}, {out_neighbor_polygons}, {out_neighbor_lines}, {corridor_method}, {corridor_width}, {distance_method})
NombreExplicaciónTipo de datos
in_regions

Regiones de entrada a las que se conectarán los corredores óptimos.

Las regiones se pueden definir mediante un dataset ráster o un dataset de entidades.

Si la entrada de la región es un ráster, las regiones se definen mediante grupos de celdas contiguas (adyacentes) con el mismo valor. Cada región se debe numerar de forma única. Las celdas que no formen parte de ninguna región deberán ser NoData. El tipo de ráster debe ser un número entero y los valores pueden ser positivos o negativos.

Si la entrada de la región es un dataset de entidades, puede ser de polígonos, polilíneas o puntos. Las regiones de la entidad poligonal no pueden estar compuestas por polígonos multiparte.

Raster Layer; Feature Layer
out_optimal_polygons

Clase de entidad de polígono o de línea de salida de los corredores óptimos que conectan cada una de las regiones de entrada. Los corredores (o líneas) se solaparán en los lugares donde los corredores recorran la misma ruta.

Cada corredor (o línea) está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • CORR_ID— Identificador único del corredor
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta
Feature Class
in_barriers
(Opcional)

El dataset que define las barreras.

Las barreras pueden definirse mediante un ráster entero o de punto flotante, o mediante una entidad de punto, de línea o de polígono.

Raster Layer; Feature Layer
in_cost_raster
(Opcional)

Ráster que define la impedancia o el coste de hacer un movimiento planimétrico por medio de cada celda.

El valor de cada ubicación de celda representa la distancia de coste por unidad para moverse a través de la celda. Cada valor de ubicación de celda se multiplica por la resolución de la celda mientras que también se compensa por el movimiento diagonal para obtener el coste total de pasar por medio de la celda.

Los valores del ráster de coste pueden ser enteros o de punto flotante, pero no pueden ser negativos o cero (no puede tener un coste negativo o cero).

Raster Layer
out_optimal_lines
(Opcional)

La clase de entidad de línea de salida identifica las líneas óptimas para conectar cada una de las regiones de entrada. Las líneas se solaparán en los lugares donde las rutas recorran la misma ruta.

Cada ruta (o línea) está numerada de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • PATHID— Identificador único de la ruta
  • PATHCOST— Distancia o coste acumulado total de la ruta
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Feature Class
out_neighbor_polygons
(Opcional)

Polígono o clase de entidad de línea de salida que identifica los corredores óptimos que conectan cada región con cada uno de los vecinos más próximos o de coste. Los corredores (o líneas) se solaparán en los lugares donde los corredores recorran la misma ruta.

Cada corredor está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • CORRIDORID— Identificador único del corredor
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Feature Class
out_neighbor_lines
(Opcional)

Clase de entidad de línea de salida que identifica la línea óptima desde cada región hasta cada uno de sus vecinos más cercanos o de coste.

Cada corredor (o polígono) está numerado de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Los campos adicionales son:

  • PATHID— Identificador único de la ruta
  • PATHCOST— Distancia o coste acumulado total de la ruta
  • REGION1— Primera región que conecta la ruta
  • REGION2— La otra región que conecta la ruta

Como cada ruta se representa mediante una línea única, habrá varias líneas en las ubicaciones donde la misma ruta es óptima.

Feature Class
corridor_method
(Opcional)

Especifica cómo se creará el corredor.

Nota:

Esta versión solo dispone de un método para crear corredores: ancho fijo. Al existir una única opción predeterminada, este parámetro estará inactivo y no aparecerá en el cuadro de diálogo de la herramienta.

  • FIXED_WIDTH_CORRIDOREl corredor tendrá un ancho fijo y los corredores y rutas óptimos se crearán en función de este ancho. Esta es la opción predeterminada.
String
corridor_width
(Opcional)

Distancia lineal que define el ancho de los corredores resultantes. El valor debe ser mayor o igual que cero. El valor predeterminado es cero.

Double
distance_method
(Opcional)

Especifica si el cálculo se basará en un método planar (tierra plana) o geodésico (elipsoide).

  • PLANAREl cálculo de distancia se realizará sobre un plano plano proyectado usando un sistema de coordenadas cartesianas 2D. Esta es la opción predeterminada.
  • GEODESICEl cálculo de distancia se realizará en el elipsoide. Los resultados no cambiarán, con independencia de la proyección de entrada o salida.
String

Muestra de código

Ejemplo 1 de OptimalCorridorConnections (venana de Python)

El siguiente script de la ventana de Python muestra cómo utilizar la función OptimalCorridorConnections.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/arcpyexamples/data"
out_OCC_raster = OptimalCorridorConnections("InRegions.tif", 
    "OutCorridors.shp", "InBarriers.tif", "InCostRaster.tif", 
    "OutOptimalPaths.shp", "OutNbrPoly.shp", "OutNbrLines.shp", 
    "FIXED_WIDTH_CORRIDOR", 5000, "PLANAR")
Ejemplo 2 de OptimalCorridorConnections (secuencia de comandos independiente)

Calcular una red óptima de corredores de fauna entre zonas habitadas conocidas.

# Name: OptimalCorridorConnections_standalone.py
# Description: Calculates corridor.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set environment settings
env.workspace = "C:/arcpyexamples/data"

# Set local variables
regions = "Lakes.tif"
outCorridors = "NewCorridors.shp"
roadBarriers = "Roads.shp"
costSurface = "CostSurface.tif"
optimalLines = "OutCorridorCenterLines.shp"
outAllCorridors = "OutAllCorridors.shp"
outAllLines = "OutAllCenterLines.shp"
corridorMethod = "FIXED_WIDTH_CORRIDOR"
corridorWidth = 5000
distanceMethod = "GEODESIC"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute  OptimalCorridorConnections

OptimalCorridorConnections(regions, outCorridors, roadBarriers,
                           costSurface, optimalLines,
                           outAllCorridors, outAllLines,
                           corridorMethod, corridorWidth, distanceMethod)