Одним из наиболее эффективных средств для сборки фотопанорам является свободно распространяемая программа Hugin, которую можно бесплатно загрузить с сайта sourceforge.net, где вы можете выбрать готовый пакет для своей ОС или загрузить исходные коды для самостоятельной сбоорки.
Hugin (PDF)
Программа имеет очень широкий набор функций и параметров, разбираться с которыми можно достаточно долго и продуктивно. Ниже приведен простенький алгоритм, позволяющий получить достаточно хорошие результаты, практически не делая ничего вручную. Тексты и фрагменты экрана соответствуют сборке программы версии 2014.0.0 для Linux, поэтому у вас могут наблюдаться некоторые расхождения, но смысл уловить можно в любом случае. Итак, вперед.
1. После установки программы она появится с меню «Старт» и, возможно, на рабочем столе. Запустите ее удобным способом. При первом запуске после установки программа будет использовать английский интерфейс. Мне он представляется более удобным, но здесь я покажу, как переключиться в русский язык и далее примеры и рекомендации будут даваться для русского интерфейса программы.
2. В главном меню программы выберите Edit-Preferences после чего на экране откроется диалог Preferences — Hugin с активной по умолчанию вкладкой General. Она то и нужна нам для выбора языка интерфейса. Нажмите кнопку раскрытия списка языков справа от текста Language и выберите удобный для вас язык (Russian).
Рисунок 1 Выбор языка интерфейса
3. Выбрав язык, нажмите кнопку OK в показанном на рисунке 1 диалога. Далее программы нужно закрыть (меню File-Quit или клавиши Ctrl+Q). Закрыв программу, запустите ее снова и наслаждайтесь работой с русским интерфейсом.
Рисунок 2 Главное окно программы с русским интерфейсом
4. Снимки для сборки можно добавить непосредственно из главного окна (кнопка «Добавить снимки») но я покажу вам более простой и эффективный способ. Для начала работы со снимками нажмите кнопочку «Быстрый предпросмотр панорамы». Это 4-я справа кнопочка в ряду значков под главным меню программы (при наведении на нее курсора появится текст с названием кнопки).
5. На экране появится новое окно «Быстрый предпросмотр панорамы» (Рисунок 3). По умолчанию окно отрывается с активной вкладкой (страницей) «Ассистент», которая нам и нужна для начала работы. В левой верхней части окна видна большая кнопка с надписью «1. Загрузить снимки». Нажмите ее и в появившемся на экране диалоговом окне выбора файлов укажите снимки, которые вы надеетесь собрать в панораму с помощью чудо-программы Hugin. Программа умеет работать с изображениями в формате JPEG, TIFF, PNG, HDR, EXR. На мой взгляд собирать программы из JPEG-ов не самое разумное решение, но и это может пригодиться. Я обычно собираю из 16-битовых файлов TIFF, которые создаю из RAW-файлов с помощью программы RAWtherapee, но у вас могут быть свои любимые конвертеры.
Рисунок 3: Диалог предварительного просмотра панорамы
6. Итак, вы указали программе из каких файлов следует собирать панораму. Дальше программа будет работать за вас, а вы можете наслаждаться наблюдением за этим увлекательным процессом, иногда слегка (или посильнее по мере освоения программы) принимая в нем участие. На экране сначала появится небольшое окно «Выполняется ассистент» в котором будут пробегать скорее всего совершенно непонятные сообщения о манипуляциях программы с вашими снимками (Рисунок 4).
Рисунок 4: Окно «Выполняется ассистент»
7. Подождите немножко и программа выведет в окне предварительного просмотра панорамы тот или иной результат.
Рисунок 5: Вкладка «Сдвиг/Смещение»
Если вместо предварительного варианта панорамы появится сообщение об отсутствии вертикальный линий, вы можете добавить эти линии вручную. Для этого следует перейти в редактор контрольных точек и выбрать в обеих панелях один и тот же кадр. Далее в левой панели указываете точку на одном конце нужной линии, а в другом – точку на другом конце. Программа скорей всего автоматически нарисует вторую точку так, чтобы она совпала с первой. В этом случае просто укажите в этой панели нужную точку еще раз и нажмите кнопку “Добавить” (справа внизу). В списке контрольных точек должна появиться строка со свойством “вертикальная линия” или “горизонтальная линия”. Если программа неверно истолкует направление линии, его можно указать вручную в из раскрывающегося списка с нижней части окна справа. После добавления линий вручную может потребоваться сброс автоматически установленных программой параметров. Для этого перейдите на вкладку “Фотографии”, отметьте все снимки и нажмите правую кнопку мыши на какой-либо из строк с отмеченными файлами. Далее выберите вариант “Сброс” и во раскрывшемся списке – “Пользовательские параметры”. Названия могут меняться в зависимости использованного в вашей версии программы перевода, но смысл будет именно такой. После этого можно вручную запустить команду выравнивания снимков, нажав кнопку в окне предварительного просмотра.
8. Для просмотра результата автоматической подготовки перейдите на вкладку «Сдвиг/Смещение» в окне предварительного просмотра. Не факт, что в окне сразу появится что-то, похожее на изображенное на рисунке 5. Если все будет гораздо хуже, нажмите кнопку «Уместить», расположенную второй слева над картинкой. Можно также воспользоваться кнопками «По центру» и «Выпрямить», расположенные слева и справа от кнопки «Уместить». В конце концов получится что-то, похожее на панораму. Если панорама покажется «кривоватой», можно попытаться выбрать тип проекции на вкладке «Проекция». Там много вариантов, о которых можно говорить много и долго, предоставлю вам возможность разобраться с этим самостоятельно. Метод проб и ошибок вполне подойдет, поскольку результаты будут видны сразу и никто не помешает выбрать любой из поддерживаемых программой вариантов проекций. Здесь я лишь отмечу, что во многих случаях программа самостоятельно и достаточно грамотно выбирает тип проекции. Пойдем дальше, поскольку сейчас нам потребуется выполнить некоторое количество действий самостоятельно.
9. Для начала нужно избавиться от контрольных точек, которые программа выбрала недостаточно хорошо. Возвращаемся в главное окно программы. Оно должно где-то найтись на вашем рабочем столе (я обычно просто размещаю окна на разных мониторах и долго искать не приходится). В меню «Правка» выберите команду «Точно скорректировать все точки». Программа непродолжительное время поработает сама и выдаст сообщение о результатах в диалоге «Результат точной коррекции» (Рисунок 6).
Рисунок 6: Диалог с результатами корректировки
10. В этом окне уже содержится прямая подсказка по поводу дальнейших действий, поэтому следует внимательно прочесть приведенный в окне текст. В любом случае следует прочесть последнюю фразу сообщения и нажать клавишу F3.
11. После нажатия клавиши появится диалог «Контрольные точки» в котором приведены данные по уровню соответствия для каждой пары найденных программой контрольных точек (Рисунок 7 слева).
До сортировки | После сортировки |
Рисунок 7: Результаты оптимизации контрольных точек
12. Для простоты удаления ненужных точек разумно отсортировать из по уровню корреляции. Щелкните кнопкой мыши по заголовку колонки «Расстояние». Результат сортировки показан на рисунке 7 справа.
13. В соответствии с рекомендациями диалога «Результат точной коррекции» (Рисунок 6) удалим точки, для которых уровень корреляции меньше 0,81. Просто выделите нужные строки в отсортированном списке и нажмите кнопку «Удалить» в диалоговом окне или клавишу Del на клавиатуре вашего компьютера.
14. После удаления точек закрываем диалог и возвращаемся в главное окно программы, перейдя на вкладку «Фотоснимки» (после процедуры удаления активной в главном окне будет вкладка «Контрольные точки»).
15. На вкладке «Фотоснимки» нам потребуются кнопки оптимизации, расположенные в правом нижнем углу окна (Рисунок 8).
Рисунок 8: Кнопки оптимизации на вкладке “Фотоснимки”
16. Сначала выполним геометрическую оптимизацию. Вариантов оптимизации довольно много, для простоты мы здесь рассмотрим два наиболее употребительных (с остальными разберетесь самостоятельно). Если снимки сделаны с эффективным фокусным расстоянием (реальный фокус, умноженный на кроп-фактор) не менее 70 мм, можно оставить принятый по умолчанию вариант «Позиции (с приращением, начиная с фиксированного снимка). Если же вы пользовались при съемке более широкоугольным объективом (скорей всего это было ошибкой), воспользуйтесь вариантом оптимизации «Все без переноса», выбрав его из раскрывающегося списка.
17. После выбора варианта геометрической оптимизации нажмите кнопку «Вычислить» справа от выбранного варианта.
18. На экране появится диалоговое окно с информацией о процессе оптимизации. Если снимков в панораме не слишком много, то содержимое этого окна вы даже не успеете рассмотреть и сразу увидите сообщение о результатах (Рисунок 9).
Рисунок 9: Результаты геометрической оптимизации
19. Значения трех выводимых в окне результатов параметров служат показателями качества совмещения контрольных точек после оптимизации. Эти значения не должны быть большими. Если среднее расстояние между точками или стандартное отклонение имеют значения 10 и более, это говорит о том, что с контрольными точками или самими снимками не все в порядке. В таком случае можно отказаться от результатов оптимизации (кнопка «Нет») и попытаться выбрать из списка другой вариант. Со временем вы научитесь понимать причины непорядка при оптимизации и станете осознанно выбирать нужный вариант, а сейчас будем просто уповать, что у вас появятся цифры, похожие на показанные на рисунке 9 или того меньше. Если значение максимум составляет несколько десятков, можно просто удалить соответствующие точки (оставляю вам это в качестве самостоятельного упражнения).
20. Результаты оптимизации сразу же отражаются в окне предварительного просмотра, которое, как мы помним, расположено на соседнем мониторе 🙂
21. Итак, результаты оптимизации нас устраивают. Жмем кнопку «Да» и переходим к фотометрической оптимизации. Здесь я сделаю небольшое отступление — при подготовке снимков для сборки («цифровая проявка») разумно использовать одинаковые параметры баланса белого цвета и экспозиции для всех снимков. Как это сделать, не мне вас учить.
22. Для фотометрической оптимизации обычно используется принятый по умолчанию вариант «Узкий динамический диапазон» или «Узкий динамический диапазон, переменный баланс белого». Выбрав тот или иной вариант жмем кнопку «Вычислить»
23. Фотометрическая оптимизация обычно занимает чуть больше времени, чем геометрическая. Обычно через несколько секунд появляется диалог с результатами оптимизации (Рисунок 10).
Рисунок 10: Результат фотометрической оптимизации
24. Если значение не среднеквадратичной погрешности не превышает 50, можно согласиться с результатами оптимизации. При большей погрешности нажмите кнопку «Нет» и попробуйте другой вариант оптимизации.
25. Будем считать, что результат нас устраивает и нажмем кнопку «Да». Как и для геометрической оптимизации, результат будет виден в окне предварительного просмотра (Рисунок 3).
26. Основная работа сделана и можно сохранить мета-файл с результатами. Жмем кнопку с изображением диска в главном окне программы или выбираем в меню команду «Файл->Сохранить». Можно также воспользоваться комбинацией клавиш Ctrl+S.
27. Файл сохранен и можно уже заняться сборкой панорамы в окончательный файл. Формат и параметры записи выходного фала можно задать на вкладке «Сшивка» в главном окне программы или воспользоваться установленными по умолчанию параметрами. Эти параметры вы можете задать самостоятельно, используя вкладку «Сборка» диалогового окна «Настройка Hugin» (меню «Файл->Настройки»), показанного на рисунке 11. В верхней части окна укажите нужный формат файла и параметры изображения, зависящие от выбранного формата. Я обычно сохраняю результат в формате TIFF-16 с компрессией LZW, поскольку этот вариант сжатия не вносит потерь. Но тут дело вкуса и личных предпочтений.
Рисунок 11: Диалог параметров сборки
28. Далее возвращаемся в окно предварительного просмотра и работаем в нем до завершения сборки. Активизируем панель «Сдвиг/Смещение» в окне предварительного просмотра. О кнопках «По центру», «Уместить», «Выправить» я коротко уже упоминал и назначение их вполне понятно из названий. На этой вкладке есть еще ряд кнопок, с которыми я предлагаю разобраться самостоятельно. Здесь же немного поговорим о дополнительных геометрических преобразованиях итоговой панорамы.
29. Над изображением панорамы вы увидите три поля со значениями 0, названные «Вокруг вертикали», «Наклон горизонтали» и «Вокруг оптической оси». Названия полей наводят на мысли об их возможном использовании, но тут впору вспомнить о том, что переводчики интерфейсных сообщений совсем не обязательно хорошо знают русский язык и разбираются в фотографии и направлениях в пространстве. Поэтому дальше я немножко расскажу о назначении каждого поля и способах использования.
30. «Вокруг вертикали». Значение этого поля задает изменение панорамы, как будто вы повернетесь относительно висящего на стене снимка вокруг вертикальной оси снимка на угол, заданный в градусах в поле справа от текста. Положительные значения угла соответствуют вашему повороту налево (смещению изображения в окне просмотра направо).
31. «Наклон горизонта». Значение этого поля задает наклон оптической оси объектива относительно горизонта. При положительном значении поля панорама изменится так, как будто вы наклонили объектив к земле на соответствующий угол. Отрицательное значение поля соответствует «задиранию объектива в небо».
32. «Вокруг оптической оси». Этот параметр позволяет контролировать «завал горизонта». При положительных значениях панорама будет повернута по часовой стрелке на заданный угол, при отрицательных — против часовой стрелки.
33. С этими параметрами имеет смысл просто поупражняться на пробных панорамах, чтобы понять их воздействие. Рекомендую лишь (как при упражнениях, так и «в бою») менять не все параметры сразу, а задавать лишь один угол поворота, установив в остальных полях значения 0. Для поворота панорамы нажмите кнопку «Применить» и результат будет выведен в окне предварительного просмотра. Если вы ошиблись при выборе значения, можно полностью отказаться от него, изменив знак числа в поле и снова нажав кнопку «Применить».
Со временем наверное вы научитесь вводить компенсационные значения во всех полях сразу и применять повороты вокруг трех осей сразу. Однако следует отметить, что программа достаточно хорошо все делает сама и пользоваться этими параметрами приходится нечасто.
Можно также управлять поворотом снимка с помощью мыши, «захватывая» изображение и перемещая курсор при нажатой кнопке мыши. Однако мне с моими кривыми руками почти никогда не удавалось добиться таким путем адекватных результатов. Может быть у вас получится лучше.
34. Закончив с поворотами приступим к обрезке панорамы, перейдя на вкладку «Обрезка» (Рисунок 12).
Рисунок 12: Диалог кадрирования панорамы
35. Здесь имеется кнопка «Автообрезка» для оптимального кадрирования результата с точки зрения программы. В большинстве случаев он вполне приемлем, но вы можете задать границы обрезки самостоятельно с помощью мыши или путем указания координат в полях ввода над снимком. С остальными кнопками этого окна я предложу вам разобраться самостоятельно в качестве факультатива. Добавлю лишь, что на вкладке кадрирования имеется возможность выбора нескольких вариантов направляющих линий (желтые линии на рисунке 12) для кадрирования с учетом тех или иных канонов композиции. Это тоже для самостоятельного упражнения.
36. Закончив с кадрированием, возвращаемся на вкладку «Ассистент» в том же окне предварительного просмотра (Рисунок 13).
Рисунок 13: Окончательная сборка панорамы
37. После нажатия кнопки «3. Создать панораму» программа выведет диалоговое окно «Выходные параметры» (), где вы можете выбрать вариант вывода результата и поменять формат результирующего файла. Тут вроде все просто и понятно интуитивно, поэтому не стану отнимать ваше время. Жмем кнопку «ОК»
Рисунок 14: Диалог «Выходные параметры»
38. Далее появится диалог с предложенным именем файла (алгоритм выбора имени можно задать в диалоге настройки) и каталога для записи панорамы в выбранном формате. Согласитесь с предложенными именами или предложите свои варианты. После нажатия кнопки «Сохранить» программа выведет небольшое диалоговое окно, в котором будет отображаться результат работы промежуточных программ, применяемых при сборке. Процесс сборки в зависимости от числа фалов может занять достаточно продолжительное время. По завершении сборки диалоговое окно автоматически закроется. Если же сборка приведет к ошибке, информация о ней будет выведена в диалоговом окне и процесс сборки прервется. Надеюсь, что это в вашей практике будет встречаться нечасто.
Текст подготовлен на основании личного опыта сборки панорам, которые вы могли видеть на разных фотосайтах, а также на моих сайтах www.nmalykh.org или www.photo4x4.org.
При возникновении тех или иных вопросов, связанных с текстом или описанной в нем программой обращайтесь по приведенному ниже адресу.
Не допускается распространение текста и иллюстраций из данного документа без согласования с автором. Печать документа в единичных экземплярах для личного некоммерческого использования не возбраняется.
Николай Малых
photo@nmalykh.org