Слияние двух картинок
Есть ли в Ubuntu инструмент для автоматического объединения двух изображений, имеющих общую полосу? Мне нужно отсканировать большое изображение, которое не поместится сразу в сканер. Я думал о том, чтобы отсканировать его в две части и вручную отредактировать результат в Gimp, чтобы присоединиться к ним. Но, вероятно, автоматический инструмент может сделать то же самое быстрее и лучше.
РЕДАКТИРОВАТЬ Я думаю, что я, возможно, не разъяснил свою точку зрения. Моя сложность заключается не в выравнивании двух изображений. Моя проблема заключается в том, что нужно компенсировать вращение или искажение, вызванные ручным процессом помещения листа в сканер, и автоматический инструмент должен получать более точные результаты при анализе общих рисунков на двух изображениях, чтобы вращать и выравнивать их плавно.
4 ответа
Я наконец остановился на Хугине. Это требует некоторого ручного вмешательства, но дало действительно хороший результат.
Вот учебник, который объясняет, как использовать Hugin, чтобы он не пытался деформировать ваши плоские изображения (этот инструмент был создан для получения панорамных изображений из отдельных изображений, следовательно, он обычно компенсирует предполагаемые эффекты).
Использование инструментов, поставляемых с ImageMagick
Мы можем легко объединить, т.е. "смонтировать" изображения в одно большое изображение с помощью следующей команды
montage -geometry 500 image1 image2 [...] output
Смотрите страницу проекта для многих параметров геометрии. В приведенном выше примере все изображения будут масштабированы до ширины 500
пикселей, прежде чем они будут объединены. Адаптируйте это значение для ваших размеров изображения. Если вам нужна фиксированная высота, выберите x500
вместо. Другое измерение будет масштабировано, чтобы сохранить соотношение сторон.
Вдохновленный этим сообщением о том, что ImageMagick имеет инструмент командной строки с именем convert
объединять изображения. Чтобы объединить изображения по горизонтали (в алфавитном порядке):
convert +append *.png out.png
Чтобы расположить изображения вертикально:
convert -append *.png out.png
Это должно быть запущено в терминале в папку, содержащую png файлы, чтобы объединить их все.
Gui для этого будет:
контекстное меню файлового менеджера для объединения выбранных изображений.
Простой способ, когда дело доходит до этого, - это пользовательские действия Thunar:
Объединить выбранные изображения по вертикали (в один png
файл, в алфавитном порядке, независимо от их расширения) добавьте это пользовательское действие:
convert -append %F joined-vertical.png
Чтобы присоединиться горизонтально:
convert +append %F joined-horizontal.png
Для более сложного способа сборки изображений вы можете поискать программное обеспечение для сшивания панорамных фотографий, такое как hugin
или пандора плагин для Gimp.
Вы можете легко достичь этого с Gimp.
1) Создать новый файл Файл-> Новый
В диалоговом окне "Создать новое изображение" добавьте желаемую высоту и ширину. Это даст вам новый файл, который может выглядеть следующим образом (в зависимости от заданных размеров):
2) Откройте два изображения, которые вы хотите объединить из File -> Open...
3) Затем нажмите "Копировать" на изображении " Правка" -> "Копировать"
4) Перейдите к пустому файлу, который вы создали первым на шаге 1, и вставьте изображения (Скопируйте и вставьте первое изображение, а затем скопируйте и вставьте второе) Правка -> Вставить
5) Расположите два изображения с помощью опции "Переместить" на панели инструментов.
Когда вставленное изображение окажется там, где вы хотите, установите его на место. Либо перемещайте курсор на холст, пока не увидите маленький символ привязки, либо нажмите "Слой" на панели инструментов, затем выберите "Якорь":
6) Масштабировать новый файл с двумя объединенными изображениями Image -> Scale Image...
Я успешно включил jpg в панораму с помощью программы fotoxx. У него есть инструмент как раз для этой цели под панелью инструментов "Объединить"