Unir mosaicos TIF en una imagen grande

Unir mosaicos TIF en una imagen grande

Tengo una lista de 25 imágenes TIF (mosaicos de mapas), cada una de alrededor de 400 MiB de tamaño (cada rectángulo pequeño aquí):

ingrese la descripción de la imagen aquí

Necesito unirlos en un solo TIF enorme. ¿Existe algún comando en Linux que pueda hacer esto? Puedo proporcionar coordenadas X/Y absolutas para cada mosaico.

Lo probé con el montagecomando (parte de Imagemagick), pero parece admitir solo conjuntos de mosaicos donde cada fila/columna tiene la misma cantidad de mosaicos.

Respuesta1

¿Existe algún comando en Linux que pueda hacer esto?

Personalmente no conozco ningún comando para hacer lo que quieres.

Lo probé con el comando de montaje (parte de Imagemagick), pero parece admitir solo conjuntos de mosaicos donde cada fila/columna tiene la misma cantidad de mosaicos.

No sé si esto sería una solución para usted, pero podría (teóricamente) generar las imágenes que faltan de antemano y luego simplemente incluirlas en el montagecomando.

Para su imagen de ejemplo, suponiendo que tuviera, slice_1_1.tifpor ejemplo, slice_1_6.tifpara la primera fila, slice_2_1.tifpara slice_2_6.tifla segunda fila, etc.,podrías generar imágenes "en blanco"con algo como lo siguiente:

magick -size 120x85 canvas:white slice_1_1.tif
magick -size 70x85 canvas:white slice_1_6.tif
magick -size 70x85 canvas:white slice_2_6.tif
magick -size 120x85 canvas:white slice_5_5.tif
magick -size 70x85 canvas:white slice_5_6.tif

Por supuesto, deberá utilizar los tamaños correctos para sus imágenes reales. Luego podrías ejecutar montagenormalmente:

magick montage *.tif -tile 6x5 -geometry +0+0 example.tif

lo que te daría algo como:

TIF de ejemplo

Suponiendo que no hubiera otras consideraciones, creo que la parte más difícil aquí sería (potencialmente) automatizar la generación de imágenes "faltantes" (suponiendo que fuera necesario hacerlo por alguna razón).


Referencias de ImageMagick

información relacionada