10 votos

Determinar el número mínimo de polígonos del shapefile para cubrir un área de interés

Tengo un gran número de shapefiles que representan áreas de interés para un análisis que se realizará utilizando varias fuentes de imágenes de satélite (IKONOS, RapidEye, etc.). Lamentablemente, las imágenes no utilizan un sistema de hileras como el Landsat, por ejemplo, por lo que las extensiones varían mucho.

Tengo archivos shape recortados en cada AOI que representan las extensiones de diferentes adquisiciones de imágenes, todas ellas ya consideradas aceptables. Algunos de estos archivos shape tienen 500 o más polígonos.

Necesito encontrar un enfoque, preferiblemente uno que pueda ser automatizado (Python y ArcInfo 10 preferiblemente, FOSS sería aceptable también) para determinar el menor número de polígonos para cubrir cada una de mis áreas de interés.

18voto

GeneQ Puntos 2885

Como señala whuber, generalizar este tipo de problema para encontrar una solución de alta calidad sería complicado, pero este enfoque podría acercarte lo suficiente sin mucho trabajo. Aquí hay un poco de pseudocódigo basado en las siguientes suposiciones:

  1. Área de interés A
  2. Conjunto de polígonos Y que cubren completamente A

    Start loop
     Iterate through Y
       Select the polygon x from Y that has greatest area of intersection with A
    
     Clip A with polygon x
     Remove x from Y 
     If A is null then end program

La idea es que usted está reduciendo iterativamente su Área de Interés con la extensión del satélite que tiene la mayor superposición con el Área de Interés restante. El AOI se reduce en cada iteración hasta que no queda nada. Esto probablemente no será una solución óptima, pero debería ser razonable y debería funcionar bastante rápido.

3voto

Kasprzol Puntos 2954

Ok, así que tienes el área A que representa algún área y un montón de extensiones de imágenes que pueden ser definidas como el conjunto Y.

Si lo he entendido bien, puedes hacer un montón de funciones diferentes:

  1. Recorte de las extensiones de las imágenes por el área A
  2. Realice una selección por ubicación utilizando los polígonos de extensión y la opción contiene completamente

A continuación, puede examinar las áreas de cada uno y determinar si tiene polígonos de auto-selección haciendo un poco de ordenación de la geometría espacial utilizando ArcPy y cursores.

Espero que esto ayude.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X