Сайт о телевидении

Сайт о телевидении

» » Как сшивать панорамы

Как сшивать панорамы

Раньше я сшивал панорамы с использованием программы от производителя фотоаппарата. Часто качество склейки снимков в одно большое полотно, оставляло желать лучшего - особенно при стыковке снимков с немного разной экспозицией. Пробовалсделать панораму в специальной программе для сшивки панорамных снимков. Например, бесплатная программа HUGIN 7.0 делает сшивку кадров очень качественно, особенно когда все контрольные точки выставляются вручную, однако по затратам времени это очень долго.

Замечательная возможность сшивать панорамные снимки появилась в версии Adobe Photoshop CS3. И хочу сказать, что сшить серию панорамных снимков стало удивительно легко. Сшиватель панорам встроенный в Photoshop не позволяет контролировать процесс вручную, однако скорость и простота работы подкупает любого фотографа начинающего заниматься панорамной фотосъёмкой. Да и качество на довольно высоком уровне. По крайней мере, мне понравился баланс между скоростью работы и качеством. И самое главное, фотошоп может выровнять экспозицию на уже сшитой панораме - тоже автоматически!

Я нашёл в своём фото-архиве три снимка не самого лучшего качества, однако для того, чтобы показать вам насколько просто сделать панораму используя фотошоп они вполне подходят. Вот эти фотографии:

IMG_8692

IMG_8693


IMG_8694

Склеивание панорамных фотографий

Пошаговая инструкция для Photoshop CS3

1. Загрузка панорамных снимков в Photoshop

Перед началом склеивания панорамных снимков в одну панорамную фотографию запустите фотошоп и откройте сразу все файлы из которых будет состоят ваша панорама:

  • выбираем команду File > Оpen... (Файл > Открыть...)
  • в открывшемся окне выделяем все нужные файлы фотографий и жмём кнопку ОТКРЫТЬ

Если вы собираетесь сшивать панораму состоящую больше чем из трёх кадров, советую сразу выровнять все снимки: Window > Arrange... > Cascade (Окно > Выровнять... > Каскадом).

В результате получим вот такой вид фотошопа с загруженными файлами:

2. Создаём файл панорамы

Создаём новый файл в котором и будем собирать нашу панораму, поэтому в окне запроса при создании файла вводим необходимые размеры With (ширина) и Height (высота) - на панели задач выбираем File > Оpen... (Файл > Открыть...) или просто нажимаем Ctrl+N. Переносим все слои фотографий для панорамы на вновь созданный слой, причём, выравнивать каким-либо образом новые слои получившиеся при переносе не обязательно.

3. Запускаем атоматическую склейку панорамных снимков

Перед тем как запустить команду склейки панорамных снимков необходимо выделить все слои, участвующие в панораме. Для этого, удерживая нажатой клавишу Shift, "кликаем" по первому и последнему слою участвующему в панораме - все промежуточные слои выделяться автоматически.

Только после этого можно запускать автоматическую склейку панорамы:

  • выбираем Edit > Auto-Align Layers...
    (Редактировать > Авто-Выравнивание слоёв)
  • в открывшемся окне выбираем режим выравнивания (проекцию сшивания панорамы) и нажмаем OK

В большинстве случаев автоматический режим работает весьма корректно, однако если вы точно не знаете каким способ сняты склеиваемые панорамные снимки, попробуйте все режимы проекции панорамы:

  • Auto [авто],
  • Perspective [перспективная панорама],
  • Celindrical [цилиндрическая панорама],
  • Reposition only [только позиционирование]

После этого начинается процесс анализа и непосредственного сшивания слоёв в один панорамный слой:

Скорость обработки зависит от мощности вашего компьютера, количества фотоснимков в панораме их качества и размера. После завершения этой команды у вас получиться вот такая панорама:

Если заметны стыки кадров из-за разности экспозиции воспользуйтесь ещё одной возможностью Adobe Photoshop: выделите все слои из которых сшита панорама и запустите команду Edit > Auto-Blend Layers (Редактировать > Авто-Смешивание слоёв), результатом которой будет появление масок на слоях подвергнутых выравниванию экспозиции.

Вот и всё, осталось сделать сведение слоёв и обрезку готовой панорамной фотографии.

Разрешите выполнение JavaScript в настройках вашего браузера и перезагрузите страницу

Вам когда-нибудь казалось, что фотографии со стандартным для зеркалок соотношением сторон 2:3 какие-то тесные, так хочется заглянуть за их край, перевести взгляд за границу кадра, узнать, что там происходит. А все дело в том, что мы видим гораздо шире, воспринимаем мир панорамно. Так давайте попробуем такие панорамы снять, чтобы затем заглянуть за все края разом.

Текст и фото: Антон Агарков

f/11.0, 1/100, ISO 200.

Киргизия, горное плато близ озера Сон-Куль. Панорама из восьми горизонтальных кадров.

Когда-то панорамная фотография была прерогативой владельцев панорамных камер. Если не брать в расчет не самые качественные “Горизонты”, которые за раз экспонировали сразу два кадра 35-мм пленки, то панорамные фотоаппараты были громоздкими и не самыми дешевыми, и к тому же работали исключительно с фиксами на среднеформатную пленку, где на ролике умещалось всего 4 панорамных кадра. Сложное дело.

С появлением цифровых камер процесс сборки панорамы стала куда проще. Самый примитивный способ сделать панораму - снять обычный кадр и обрезать его до вытянутого формата. Не лучший вариант - в результате вы получите изображение низкого разрешения и такого же качества. Гораздо интереснее снять несколько фотографий и потом склеить их в единую настоящую панораму.

ОбъективAF-S DX NIKKOR 16-80mm f/2.8-4E ED VR,

f/7.1, 1/125, ISO 200

Каньон Конорчек в Киргизии. Панорама из шести горизонтальных кадров

В те недавние времена, когда цифровые камеры еще не обзавелись мегапиксельными матрицами, можно было услышать разумные рекомендации склеивать горизонтальные панорамы из вертикальных кадров. Таким образом удавалось получить панораму большего разрешения, так как короткая сторона панорамы по вертикали будет ограничена высокой вертикалью отдельного кадра-заготовки. Но сейчас технологии шагнули вперед, разрешения камер, в том числе и Nikon D500, достаточно, чтобы склеивать панорамы из горизонтальных кадров. Поэтому вполне достойную панораму можно склеить из 3-4 кадров. Меньше кадров, проще склейка!

Теперь давайте разбираться, как и что снимать. Для начала должна появиться полная ясность с сюжетом. Выберите интересный фрагмент пейзажа и четко определитесь, где будет начало сцены, а где ее окончание. Обычно посыл “сейчас сниму все, а потом обрежу лишнее” не приводит ни к чему толковому - все кажется одновременно и важным, и бесполезным. Не забывайте, что панорамная фотография - это та же самая фотография, только немного другого формата. А это значит, что правил построения композиции и сюжета в панорамном кадре никто не отменял.

Как подготовиться к съемке панорамы? Сделайте замер экспозиции по центральному кадру. Очень важно, чтобы на всех кадрах для будущей панорамы были одинаковый фокус и экспозиции, так что и то, и другое придется зафиксировать. Для фиксации фокуса я предпочитаю использовать рычажок перевода режима фокусировки, который на D500, как и на прочих камерах Nikon, находится под мизинцем левой руки. Его перевод в режим M, по сути, отключает автофокус и фиксирует его в некотором выбранном положении.

Фиксировать экспозицию удобнее всего нажатием кнопки AF-ON, которую можно перепрограммировать. Для удобства съемки панорамы я задаю ей функцию фиксации экспозиции до следующего нажатия. Так вам не придется держать палец на кнопке во время съемки. Также будет удобно включить виртуальный горизонт, чтобы кадры шли на одном уровне, а не сваливались куда-то вниз.

Теперь можно начать снимать заготовки для будущей панорамы. И тут нас поджидает враг всех панорамных фотографов - параллакс. «Когда двоится в глазах», происходит то же самое: объекты меняют свое положение относительно друг друга в зависимости от угла зрения. В начале съемки дерево - справа от камня, в середине процесса - за ним, а в конце и вовсе уходит налево.

Чем больше фокусное расстояние объектива, тем меньше влияние параллакса, так что при съемке на телеобъектив о нем можно полностью забыть. Но при съемке на штатник и широкоугольник параллакс может привести к неожиданным дефектам сборки панорамы. Полностью избежать этого неприятного эффекта можно, воспользовавшись специальными панорамными головками. Но это тяжелое и громоздкое устройство, которое не всегда удобно притащить с собой на природу.

Выручает то, что алгоритмы современных программ эффективно распознают и борются с параллаксом. Нужно только дать им пространство для маневра. Это значит, чем меньше фокусное расстояние, тем больше нужно давать перекрытие между кадрами. Если при съемке на телеобъектив достаточно перекрытия в 20-30 процентов, то при съемке на широкоугольник лучше перекрывать кадры на 90 процентов.

Еще надо учитывать, что многие объективы дают существенное виньетирование, от которого можно избавиться, задав гораздо большее перекрытие, чем того требует фокусное расстояние объектива.

ОбъективAF-S DX NIKKOR 16-80mm f/2.8-4E ED VR,

f/8.0, 1/13, ISO 100

Панорама из пяти горизонтальных кадров

У вас получился цикл фотографий, теперь надо склеить из них панораму. Для предварительной обработки я предпочитаю использовать Adobe Camera RAW. Но если вы привыкли работать в Lightroom, то все описанные приемы подойдут и для него. Откройте все фрагменты будущей панорамы. Вам важно, чтобы все кадры панорамы были обработаны с одними настройками. Для этого после обработки одного кадра выделите все загруженные в ACR фотографии, найдите в верхнем левом углу, справа от заголовка Filmstrip небольшую иконку со стопкой полосок, нажмите на нее и выберите опцию Sync Settings (Синхронизировать настройки). В появившемся меню поставьте все галочки, включая Local Adjustments (локальные изменения), и нажмите ok.

Конечно, можно сразу выбрать все файлы и обработка одной фотографии автоматом применится сразу ко всем, за исключением тех самых локальных изменений Local adjustments - то есть разного рода индивидуальных градиентов и раскраски кистями. Так что вам все равно придется синхронизировать изменения через меню Sync Settings.

Сохраните все файлы в TIFF, чтобы избежать потери качества при последующей обработке. Закрывайте ACR и отправляйтесь в Photoshop. Там выберите File - Automate - Photomerge. Это встроенный в Photoshop инструмент, который с недавнего времени начал давать очень качественные результаты при склейке панорамы. В открывшемся меню выберите ваши файлы-заготовки и нажмите OK. В качестве типа панорамы выберите Auto.

Чтобы добавить геотаги потребуется скопировать EXIF-теги из исходных кадров в окончательный вариант панорамы. Я это делают так:

$ exiftool -tagsfromfile первый-кадр.jpg панорама.jpg
Это не совсем правильно, но быстро.

Что ещё можно сделать с панорамой?

Одно из самых интересных панорамных сообществ, на мой взгляд, группа Perfect Panoramas на фликере. Туда принимают только те панорамы, в которых модераторы не найдут дефектов.

Есть фотосообщество в ЖЖ, тоже посвященное панорамам. Не помню, как называется.

Панорамам с геотегами — самое место на Panoramio . Хорошие панорамы потом покажут в Google Earth:)

В интернете панорамы можно показывать с помощью апплета PTViewer .

Дополнение 2010-02: со времени написания заметки появился хороший панорамный хостинг pan0.net . На него можно выкладывать как круговые, так и частичные панорамы. Есть флэш-просмотрщик, который можно легко вставлять в блоги.

Перфекционисты и любители монументального искусства могут снимать гигапиксельные панорамы .

Ну и в общем ещё много разных применений этой техники. В том числе и вполне серьёзных .

PS. Я нашёл ещё два сходных руководства на русском языке: Клеим панораму Александра Прокудина и Склейка панорам в Hugin (© БэЖэ). доступно на сайте программы Hugin, но, увы, только на английском языке.

Ещё в 1998 г. Хельмут Дерш (Helmut Dersch), немецкий профессор физики на своём сайте выложил комплект программного обеспечения помогающий создавать панорамные фотографии — Panorama Tools. С тех пор, программа PanoTools настолько прочно закрепилась в среде фотографов, что стала самым популярным инструментом по созданию панорам, с помощью которого можно сшивать как однорядные, так и многорядные фотографии.

Уникальное достоинство PanoTools состоит в том, что в отличии от аналогичных программ, которые склеивают панорамы основываясь по контурам снимков, наша программа трансформирует исходные снимки так, чтобы свести к минимуму текстурные различия смежных областей, одновременно исправляя дисторсию и искажения перспективы. Немаловажное качество PanoTools — её бесплатность и открытость.

Хотя поначалу рассматриваемый нами пакет и не разрабатывался со своим графическим интерфейсом (GUI), на данный момент ситуация изменилась, как силами самих разработчиков PanoTools (вспомним PTPicker), так и сторонними производителями ПО. В нашей статье мы и обсудим конкретный пример использования одного из таких инструментов — программы PTGui, созданной на базе PanoTools.

Итак, мы опустим момент съёмки и предположим что нужные снимки вы уже приготовили. Если во время съёмки вы использовали панорамную головку — отлично, если нет — создать панорамную фотографию с качественной сшивкой всё равно можно.

Например, мы имеем вот это:

Исходные кадры и готовая панорама, созданная в PTGui

Исходники были сняты на камеру Canon 30D в количестве 16 шт. (сетка 8х2). После сшивания получился один файл размером13000х5500 пикс.

Запускаем PTGui и видим такое окно:

Окно запуска программы PTGui

Кнопкой Advanced переходим сразу в «продвинутый» режим, с помощью которого можно, например, задать алгоритм трансформации снимков панорамы - bicubick, lanczos, sinc и т.д.

Кликаем по кнопке Load images и отбираем кадры для нашей панорамы, одновременно с загрузкой фотографий, программа считывает EXIF (фокусное расстояние и множитель), после чего предложит их проверить:

EXIF из кадров панорамы

После загрузки фотографий в PTGui станет доступной кнопка Align images:

Кадры панорамы

Нажимаем кнопку Align images и после непродолжительного анализа панорамы программа высветит окошко Panorama Editor:

Окно Panorama Editor

В рассматриваемом случае всё разместилось практически идеально: точки проставились автоматически, линия горизонта не искажена.

Если у вас будут «падать» здания или искривляться горизонт, переходим в окно Panorama Editor, где линию горизонта можно сдвинуть «на место» левой кнопкой мыши, что в свою очередь повлияет на «падающие» здания или эффект «вогнутой/круглой» земли:

Смещение горизонта панорамы

Завалившийся горизонт можно исправить с помощью правой кнопки мыши:

Вращение панорамы

Далее жмём кнопку Create panorama которая переносит вас на одноимённый таб. Здесь, с помощью кнопки Set optimum size определяем размер, формат, указываем нужно ли сохранять панораму в послойном виде или же объединить в один слой, выбираем место сохранения и кликаем Create panorama:

В результате, через несколько минут (или часов) ваша панорама будет готова.

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

Через появившийся пункт Control Point Asistant можно узнать, какие именно кадры вызвали сложности:

Кликнув по номеру кадра в этом окне откроется таб Control Points, где нужно будет проставить вручную проблемные точки:

Pучная установка контрольных точек панорамы

На практике, обычно хватает проставить 3-4 пары точек, для того чтобы программа смогла ориентироваться. Переходим в закладку Optimizer:

В качестве Anchor image выбираете тот кадр, относительно которого будут выстраиваться все остальные. Обычно это средний кадр, с предварительно выровненными в Panorama Editor вертикалями.

В появившемся списке Minimaze lens distortion выбираем последнее значение Heavy+lens shift: оно позволит программе не только трансформировать, но и перемещать кадры панорамы.

Жмём Run otimizer после чего появится окошко, где PTGui скажет как хорошо удалось совместить кадры. Слова good или very good, я думаю понятны и без перевода, not bad значит что нужно внимательно изучить склейку панорамы, в случае дефектов панораму подвергнуть дополнительной обработке в Photoshop’e.

После оптимизации вам остаётся лишь указать параметры склейки и, собственно, склеить единую панораму.

Находясь в «продвинутом» режиме, в табе Create panorama обратите внимание и на такие параметры:

В stitch using укажите PTGui (but warp using Panorama Tools.

Blend using укажет «кто» отвечает за состыковку фотографий и плавность перехода между ними. Обычно, PTGui справляется со своей работой быстро, но это иногда чревато неудовлетворительными результататами.

Например, если в кадры попали двигающиеся объекты (или съёмка была проведена с рук), рекомендуется попробовать smartblend plugin. Он работает медленнее, зато самостоятельно убирает «призраки», половинки людей\машин и т. д.

Interpolation — это метод интерполяции панорамы. Poly3 — быстрый и хороший метод для предварительной склейки, но для конечной склейки лучше выбрать более качественный, например Spline64 или Sinc256.

После вышеописанных приготовлений — смело жмите кнопку Create panorama и идите пить чай. Дальше – дело техники:-), которое может растянуться на час, а то и более.

Не в первый раз уже спрашивают, как/чем сшивать панорамы. Я тоже не так давно задался этим вопросом, ибо PTGui своими косяками задрал уже давно, а всё время сшивать в фотошопе муторно, очень уж много уходит времени и усилий. Само собой, существует великое множество программ и рецептов для сшивки панорам. Тут уж каждый сам выбирает что ему по душе, поэтому я могу рассказать только о том, что подошло мне.

Меня интересовали в основном круговые панорамы (сферические как-то не прижились). Так вот, оказалось, что помимо приснопамятного PTGui, на первых страницах результатов Яндексе присутствует в основном только , где используется связка Pano2VR + Microsoft ICE. Естественно, я опробовал этот рецепт, и результатом также остался несколько недоволен. А вот на третьей-четвёртой странице пошли ссылки на менее известные программы, и одна из них реально пришлась по вкусу. Со мной такое вообще-то редко бывает, но это действительно крепко сбитый немецкий натурпродукт. Во-первых, практически всё автоматом, настраивать и подгонять почти ничего не надо - тык-тык, две минуты жужжит, результат готов. Во-вторых, почти не лажается при сшивке (PTGiu лажался постоянно - приходилось вручную сводить по точкам). В-третьих, умеет делать флэш. В-четвёртых, работает с уймой графических форматов, даже никоновский рав кушает с аппетитом. Есть и недостатки: нет откатки (то есть нельзя отменить последнюю выполненную операцию), а интерфейс только английский (русского нет), хотя для меня это особой проблемы не представляет.

Программа называется PanoramaStudio 2Pro. Ищите в интернете , а я пока расскажу, как сшить в ней панораму. Для начала снимаем круговую панораму (можно и частичную, то есть меньше 360 градусов), располагая кадр вертикально. Сегменты должны быть сняты с некоторым "перехлёстом", чтобы в панораме нечаянно не образовалось "щелей", из-за которых сшивка не получится. Но при этом перехлёст не должен быть больше 50% - тогда объекты на панораме могут начать двоиться (на одной из первых панорам у меня получилось рядом два памятника Орлёнку). То же самое относится к первому и последнему кадрам - если они перехлёстываются более чем на 50%, последний кадр лучше удалить. Ниже показан исходный материал с цифровой камеры.

Запускаем программу и выбираем "Create single-row panorama" (создать панораму в один ряд).

Сшивка работает в четыре этапа: Import > Align > Render > Save.
Этап первый, загрузка картинок. Выбираем меню File > Import Images (импорт изображений).

Выделяем все исходные файлы, а затем нажимаем кнопку "Открыть".

Картинки грузятся в окно, тут их можно проскроллить и, если где-нибудь найден перехлёст более 50%, удалить лишние изображения (через контекстное меню). Этап второй - Align (выравнивание). Если это круговая панорама, выбираем "Align a 360 degree panorama", а если частичная - то "Align (partial) panorama".

После этого программа выполняет разнообразные проверки и может задать самые разные вопросы. Может, например, спросить, не уменьшить ли картинки, поскольку суммарная ширина изображения превысила максимально допустимую, или не сконвертировать ли их с меньшей глубиной цвета, чтоб меньше памяти занимали. В данном случае программа нашла различия в фокусном расстоянии - видимо, я кольцо зума нечаянно сдвинул, когда снимал. Отвечаем так, чтобы продолжить сшивку. Следующий вопрос - про линию горизонта, будем ли её регулировать. Говорим, что будем.

Красная линия - это и есть линия горизонта. Перетаскиваем её туда, где она находится на снимках. Приблизительно, особая точность не нужна.

Через минуту жужжания получаем некоторое подобие сшивки. Вот тут видим лажу - нестыковка по уровню горизонта. Я специально подобрал пример, где возникла эта проблема, чтобы показать, как её решать - на самом деле в полусотне сшитых панорам она возникла всего два раза. На то, что соседние сегменты отличаются по цвету, не смотрите - всё это будет автоматически исправлено на следующем шаге. Итак, исправляем нестыковку: Edit > Change Image Alignment (изменить выравнивание изображений).

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

Примерно так. Полного совпадения не добиться, но оно и не нужно - после нажатия на кнопку "Done" программа снова выравнивает этот стык.

Проскрольте панораму ещё раз. Если всё нормально, нажмите "Render" (рендеринг).

Красным выделяются границы обрезки. Можно, ничего не меняя, нажать "ОК", а можно сначала поскроллить - иногда сверху-снизу удается безболезненно добавить десяток-другой пикселей.

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

Последний этап - сохранение. В меню Save - три варианта: Save as image (сохраняет в виде большого JPEG-файла), Save as Flash or Java panorama (для Интернета) и Save as Screensaver/.EXE (сохраняет как экранную заставку или как EXE-файл).

Тут показано сохранение в EXE/SCR. Если экранная заставка мне без надобности (баловство это всё), то EXE - очень полезная функция, очень удобно отдать такую панораму кому-нибудь на флешке, потому что для просмотра больше ничего не надо - запускай и смотри. Из всей массы параметров здесь я настраиваю только "Panorama output size" (выходной размер), обычно выбираю 85%.

А это сохранение в виде флэшки для публикации в Интернете. Здесь "Panorama output size" нужно выбрать поменьше (я выбираю 35%), чтобы файл получился не слишком большим. И ещё - вместо Java нужно выбрать Flash.

Ну и уж до кучи, раз уж начал, расскажу как выложить такую панораму в ЖЖ. В результате сохранения получается четыре файла: html, xml, jpg и panoStudioViewer.swf. Флешка одна на все панорамы, она подгружает в себя xml и jpg. Допустим, сайт будет называться mysite.narod.ru. Вносим изменения в.xml (розовым выделено то, что нужно добавить):

Вносим изменения в.html (розовым выделено то, что нужно добавить):

Теперь файлы panoStudioViewer.swf, .xml и.jpg загружаем на сайт (все три в один и тот же каталог).

При написании поста в ЖЖ копируем из.html код, выделенный голубым, не забыв заключить его в ..., как код для видеороликов на Ютубе. И не забывайте, что панорама - это всегда трафик, поэтому обязательно, при любых условиях, убирайте её под кат.

Не знаю, зачем я так много и так подробно про это расписал, там действительно всё делается очень просто и быстро. Но вдруг кому-нибудь пригодится.