Tengo alrededor de 600 archivos de mapas GeoTIFF, cada uno de unos 140 mb de tamaño que me gustaría convertir a archivos KMZ para que las personas puedan descargarlos y usarlos con las unidades GPS de Garmin, Google Earth, etc.
¿Alguien sabe una manera fácil de procesar estos lotes, preferiblemente convirtiendo la imagen tiff a una imagen jpeg mucho más pequeña como parte del proceso?
Me topé con gdal_translate, que creo que podría ser útil para optimizar las imágenes en algo más pequeño usando la opción "-co COMPRESS = JPEG".
convert
batch
kmz
geotiff-tiff
Gavin
fuente
fuente
Respuestas:
Las versiones recientes de gdal_translate tienen soporte para KML Superoverlay. Aunque todavía no está documentado en el sitio web de GDAL, se puede utilizar lo siguiente:
gdal_translate.exe -of KMLSUPEROVERLAY c: \ in.tif c: \ out.kmz -co FORMAT = JPEG
Esto guardará una versión en mosaico en un archivo kmz usando la compresión jpeg.
En Windows puede automatizar usando
forfiles / m * .tif / c "cmd / c gdal_translate.exe -de KMLSUPEROVERLAY @FILE @ FNAME.kmz -co FORMAT = JPEG"
Esto supone que los archivos de entrada están en WGS84.
fuente
Si los archivos Geotiff tienen un tamaño de 140 mb, los archivos jpg resultantes podrían ser bastante grandes. Puede ser interesante dividir los archivos en archivos más pequeños, para que puedan mostrarse más fácilmente. Puede intentar con un archivo usando http://www.maptiler.org/ que tiene una opción para generar un KML Superoverlay. MapTiler puede no ser apropiado para procesar por lotes todos los archivos, pero es fácil de usar, por lo que es bueno hacer algunas pruebas preliminares.
Si funciona como lo desea, puede intentar procesar por lotes todos los archivos con GDAL2Tiles . No lo he probado, pero creo que debería ser posible ya que MapTiler se basa en GDAL2Tiles.
fuente
Nunca he usado imágenes en KML, aunque parece que gdal2tiles.py puede ayudar. Dependiendo del sistema operativo, puede realizar la conversión por lotes de varias maneras. En Windows con CMD, use el comando: ruta DIR > su archivo .txt (genere una lista de sus archivos), importe .txt a Excel / OpenOffice, límpielo y agregue su sintaxis para GDAL. Guarde como filename.bat y ejecútelo desde la línea de comandos.
fuente
También hay un complemento QGIS para crear archivos .kmz desde su lienzo QGIS para dispositivos Garmin. Se llama GarminCustomMap
fuente
Publiqué un script de Python para usar desde ArcGIS aquí:
¿Exportar 3GB ArcGIS Raster a KML sin perder resolución?
Los diferentes modelos admiten diferentes números de mosaicos. Debe tener en cuenta esta limitación, el alcance de las imágenes que desea usar y la resolución mínima que desea usar. Luego, posiblemente deba crear varios archivos a partir de sus imágenes originales, procesar cada sección de imágenes con la herramienta de secuencia de comandos y transferir los archivos desde una computadora portátil al GPS cuando los necesite (Garmin solo admite 1 "Mapa personalizado" a la vez) . Muchos de los modelos de mapas * solo admiten 100 mosaicos de 1024x1024. Colorado y Montana apoyan más. Experimenté con cambiar el tamaño del mosaico a 2048 x 2048 y eso parecía seguir funcionando y permitir bastante más datos a la vez.
En su caso, haría un mosaico de algunas imágenes de varios conciertos y procesaría estas grandes áreas de imágenes y dejaría que los usuarios las subconjustaran en Google Earth y ahorraran su propio kmz desde allí. Lo de los mapas personalizados es intencionalmente muy limitante, ya que Garmin preferiría admitir su formato jnx y venderle una suscripción a Birdseye ... O forzarlo a hackear sus dispositivos.
fuente
OkMap Desktop (versión completa y paga) ahora incluye una función por lotes para generar archivos KMZ compatibles con Garmin Custom Map, así que ahora estoy usando esto.
fuente