Сшивка плиток TIF в большое изображение

У меня есть список из 25 изображений TIF (фрагментов карты), каждое размером около 400 МБ (здесь каждый маленький прямоугольник):

Мне нужно сшить их в один огромный TIF. Есть ли в Linux команда, которая может это сделать? Я могу предоставить абсолютные координаты X/Y для каждой плитки.

Я попробовал это сmontage(часть Imagemagick), но, похоже, она поддерживает только наборы плиток, в которых каждая строка/столбец имеет одинаковое количество плиток.

1 ответ

Есть ли в Linux команда, которая может это сделать?

Лично мне не известна ни одна команда, позволяющая делать то, что вы хотите.

Я попробовал это с помощью команды монтажа (часть Imagemagick), но, похоже, она поддерживает только наборы плиток, в которых каждая строка/столбец имеет одинаковое количество плиток.

Я не знаю, подойдет ли это вам, но вы могли бы (теоретически) заранее сгенерировать недостающие изображения, а затем просто включить их в команду.

Для вашего примера изображения, если у вас есть, например,slice_1_1.tifкslice_1_6.tifдля первого ряда,slice_2_1.tifкslice_2_6.tifдля второй строки и т. д. вы можете создать «пустые» изображения примерно следующим образом:

      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

Конечно, вам нужно будет использовать правильные размеры для ваших реальных изображений. Затем вы могли бы запуститьmontageкак обычно:

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

что даст вам что-то вроде:

Предполагая, что не было никаких других соображений, я думаю, что самой сложной частью здесь будет (потенциально) автоматизация генерации «отсутствующего» изображения (при условии, что вам нужно это сделать по какой-то причине).


Ссылки на ImageMagick

Другие вопросы по тегам