LINUX.ORG.RU

Сшить изображения в определенном порядке через ImageMagic

 


0

3

Здравствуйте! В общем суть: есть 900+ png файлов, которые необходимо сшить в одно единое изображение, имя файла соответствует координате:
x_y.png
0_0.png
0_1.png
0_2.png
0_-1.png
1_0.png и т.д.
То есть известно, какое изображение за каким должно быть. Так вот, честно говоря, даже не знаю с какой стороны подойти к решению поставленной задачи, сшивать руками 900 картинок дело самоубийственное, а программы для составления панорам, либо не сшивают правильно, либо падают от объема работы.
Нагуглил, что есть пакет imagemagic и команда montage для склейки, но не особо представляю как заставить его склеивать картинки в определенной последовательности.
Предполагаю, что придется склеивать вертикальными рядами, а потом эти ряды между собой, но опять же, не особо понимаю как все это реализовать.
Подскажите пожалуйста с как это реализовать, или что конкретно гуглить и изучить ?

Для начала почитать доки, я думаю.

Xenius ★★★★★
()

Сконвертировать все в ppm: convert x_y.png x_y.ppm ppm легко читается. Дальше самодельной прогой на С или скриптом сшить ppm-ы, потом сконвертировать итог в png.

anonymous
()

Делал как-то прогу, которая клеила куски космоснимков 256*256 с google-earth. А эти куски другая прога похищала и перепрятывала из кэша squid-а по крону.)))

Программа была на C. sprintf-ом создавала команды и system-ом их выполняла. Работала склейка примерно так (типа псевдокода, очень сумбурно):

Создавался файл результата "convert -size 1024x1024 xc:gray result.bmp"
В цикле по y создавались линии "convert -size 1024x256 xc:gray line-0y.bmp"
  Во вложенном цикле по x вставлялись фрагменты в линию "composite -geometry +смещ_x+0  фрагмент  line-0y.bmp line-0y.bmp"
  Линия вставлялась в результат "composite -geometry +0+смещ_y line-0y.bmp result.bmp result.bmp"

В конце конвертируем в jpg "convert result.bmp -quality 70% result.jpg"

bugs-bunny
()
Ответ на: комментарий от bugs-bunny

Спасибо всем, кто отписался, буду пробовать..

VVSLawyer
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.