1 votos

Archivo GRID: obtener la extensión máxima para todos los valores z por encima del valor dado

Tengo un archivo GRID con una extensión bastante grande. Para un flujo de trabajo automático necesito la extensión máxima/cuadro delimitador para todos los valores z que están sobre un cierto rango. Por ejemplo: Obtener la extensión máxima para todos los valores z que sean mayores o iguales a 0.05

¿Existe la posibilidad de hacerlo con Python, GDAL o GMT-tools (herramientas genéricas de mapeo), para que se ejecute automáticamente?

1voto

Ducain Puntos 208

No es la mejor solución pero me solucionó el problema. Para quien quiera saber cómo lo hice:

gdal_contour -i 1000 -off 0.05 input.grd output.shp

-i = algún número muy alto -off = valor mínimo del píxel

entonces:

ogrinfo -al -so output.shp

y analizar la salida de ogrinfo para obtener las coordenadas de extensión

EDITAR Solución mejor (Python3 con subproceso):

gdal_calc.py -A input.grd --oufile=temp.tif --calc=logical_an(A>=min, A<=max)
gdal_polygonize.py temp.tif -f GMT temp.gmt

con Python3:

gmt_file = open(temp.gmt)
extent_temp = gmt_file.readlines[1]
extent = re.findall("(-?\d+.\d+)",extent_temp)

west = extent_w_time[0]   
east = extent_w_time[1]   
south = extent_w_time[2]   
north = extent_w_time[3]

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