Convertir enormes geotiffs en tilepyramid

9

Estoy tratando de convertir un geotiff comprimido LZW de 20 GB a una pirámide de mosaico usando gdal2tiles. Desafortunadamente, gdal2tiles parece no ser capaz de manejar esto, después de ejecutarlo durante 10 horas todavía no ha llegado al primer "punto". Intenté esto con un archivo más pequeño (1 GB) y funcionó bien. Mi pregunta ahora es, ¿hay algún otro software que me permita hacer esto (comercial o de código abierto)? Uno puede crear mosaicos desde GlobalMapper, pero no puedo cargar el archivo de 20GB en la memoria.

AndreJ
fuente

Respuestas:

4

Si está utilizando una computadora con procesador multinúcleo, puede encontrar Parallel GDAL2Tiles (ppgdal2tiles) útiles. En este tipo de computadoras, ppgdal2tiles debería ejecutarse más rápido que la versión de "núcleo único". Citando la página web ppgdal2tiles:

"La versión estándar de GDAL2Tiles utiliza solo un núcleo de procesamiento a la vez.

En caso de que tenga una computadora con más procesadores (o uno de los procesadores Mutli-Core de Intel o AMD), se pueden iniciar varios procesos para utilizar toda la potencia informática de su computadora para finalizar el procesamiento de mosaico lo más rápido posible ".

dariapra
fuente
Y ciertamente puede pedirle ayuda a Petr con este problema y apoyar el proyecto si es uno. -> maptiler.com
relet
El enlace provisto está muerto.
mrgloom
4

Tuve el mismo problema hace solo unas semanas. Por una vez, usas la opción

--config GDAL_CACHEMAX 2047

(¡debe mantenerse por debajo de 2048 por el momento!) Y segundo, puede copiar el script gdal2tiles.py en otra ubicación y alterar el ciclo for que itera sobre los mosaicos para contar hacia atrás. en mi versión de gdal2tiles que está en la línea 1174:

for ty in range(tmaxy, tminy-1, -1):

cambiar a:

for ty in range(tminy, tmaxy+1):

luego use ambas secuencias de comandos con los mismos argumentos al mismo tiempo y agregue -e (es decir, continúe, no elimine los archivos ya existentes) Tenga en cuenta que debe abandonar una de las secuencias de comandos a medida que llegan al 50% de finalización (de la base fichas), o obtendrás fichas rotas. Si olvida, solo busque todos los archivos con tamaño 0, elimínelos y comience de nuevo, con el interruptor -e;)

espero que haya ayudado


fuente
Una pregunta: ¿por qué GDAL_CACHEMAX debe mantenerse por debajo de 2047? Lo uso felizmente con 8GB o más para gdalwarp y similares ...
markusN 12/12/11
1

Pruebe el segundo parche de este número para una versión paralela de gdal2tiles.py usando el módulo 'multiprocesamiento': http://trac.osgeo.org/gdal/ticket/4379

Obtuve una aceleración de 5.5 x en una CPU de 6 núcleos.

Stefan Talpalaru
fuente
1

Espero que FME pueda hacer eso. Ciertamente puede hacer el mosaico, y estoy seguro de que puede manejar los tamaños de archivo grandes. La parte de la pirámide de ráster es bastante sencilla, vea el ejemplo de la pirámide de ráster en las páginas de ejemplos y demostraciones.

Puede obtener una copia de evaluación para probarlo primero

Mark Ireland, evangelista de productos, software seguro

Mark Ireland
fuente
1
Este es un anuncio límite. Para sacarlo de la cerca a una respuesta sólida, resuma cómo se usaría FME para producir mosaicos y enlace a la documentación que cubre el problema de los OP directamente en lugar de solo la página principal. Gracias.
Matt wilkie
Lo siento. No estaba destinado a ser. La parte piramidal ráster es bastante sencilla ( fmepedia.safe.com/articles/Samples_and_Demos/… ). Era un poco vago, ya que la pregunta era más sobre el rendimiento y no quería comprometerme cuando no lo había intentado personalmente. Es por eso que invité al OP a probarlo directamente.
Mark Ireland