Я взял несколько серий кадров, которые собираюсь обработать в таймлапс. Когда я просто запустил StopMotion, чтобы преобразовать их в последовательность фильмов, я понял, что изображение выглядит рывками по двум основным причинам:
Как я могу выровнять эти изображения, чтобы соответствующая последовательность изображений не выглядела рывками? Ограничения:
У Hugin есть учебник на своем веб-сайте, который послужил хорошей отправной точкой.
Необходимые инструменты:
Запустите Hugin и обязательно выберите «Интерфейс» > «Дополнительно» (Эксперт тоже подойдет). Перейдите в окно Panorama Stitcher .
Установите поле зрения (50° отлично подошло для камеры моего смартфона), параметры объектива и тип проекции. Прямолинейный должен работать в большинстве случаев.
Загрузите изображения для вашей последовательности.
Контрольные точки — это элементы изображения, которые Хьюгин использует для выравнивания. Каждая пара последовательных кадров должна иметь общие контрольные точки, чтобы правильно их выровнять.
По-прежнему на вкладке « Фотографии » в разделе « Сопоставление объектов » выберите стратегию создания контрольных точек. У меня хорошо сработало выравнивание стека изображений , возможно, вам придется немного поэкспериментировать.
Прежде чем сделать это в первый раз, вам необходимо убедиться, что контрольные точки созданы между парами хронологически последовательных изображений (по умолчанию изображения сортируются по экспозиции). Перейдите в меню « Файл» > «Настройки» и перейдите на вкладку « Детекторы контрольных точек ». Выберите «Выровнять стопку изображений» и нажмите «Редактировать…» . В разделе Аргументы добавьте --use-given-order
. Затем закройте оба диалога с помощью OK .
Выберите первую группу фотографий и нажмите « Создать контрольные точки » . К сожалению, Hugin не может обрабатывать более 128 изображений за один раз. Если в вашей серии более 120 изображений, просто повторите этот шаг партиями по 120 изображений. Обязательно включите последнее изображение каждой партии в следующую партию. Обработка может занять некоторое время.
Теперь перейдите на вкладку Контрольные точки . Выберите изображение № 0 на левой панели и изображение № 1 на правом. Вы должны увидеть контрольные точки, общие для изображений. Нажмите кнопку со стрелкой вправо, чтобы двигаться вперед по серии. Каждая пара последовательных изображений должна иметь общий набор контрольных точек. (Это может не всегда работать, когда камера движется, например, при съемке цейтраферной съемки из движущегося автомобиля.)
Если в вашей последовательности много облаков, на предыдущем шаге могли быть созданы контрольные точки на небе. Поскольку они могут испортить выравнивание, нам нужно их удалить: вернитесь на вкладку « Фотографии », выберите все изображения, щелкните правой кнопкой мыши список и выберите « Контрольные точки» > «Удалить контрольные точки на облаках» . Это займет некоторое время. Он может пропустить некоторые контрольные точки, но, по моему опыту, он уменьшает их количество настолько, чтобы выравнивание работало должным образом.
Примечание. Судя по всему, последние версии Hugin могут исключать облачные области уже при создании контрольной точки, в зависимости от выбранной стратегии.
Перейдите в окно быстрого предварительного просмотра панорамы ( Вид > Окно быстрого предварительного просмотра ) и проверьте предварительный просмотр сферы. Изображение должно заполнять только часть сферы с почти прямоугольными контурами и минимально искаженными краями (аналогично старомодным ЭЛТ-телевизорам).
Если контуры изображения почти круглые, вам может потребоваться изменить параметры объектива. (Я обнаружил, что это произошло с HDR-изображениями — очевидно, постобработка в устройстве сбрасывает информацию об объективе.) Вернитесь в Panorama Stitcher и на вкладке « Фотографии » выберите все изображения и щелкните правой кнопкой мыши список. Тогда либо:
Затем проверьте еще раз в Fast Panorama Preview .
Вернувшись в окно Panorama Stitcher , на вкладке « Фотографии » выберите один из следующих вариантов в разделе « Оптимизировать» > «Геометрический» :
Щелкните Рассчитать . Это снова займет некоторое время.
Перейдите в окно предварительного просмотра быстрой панорамы .
На вкладке « Проекция » выберите ту же проекцию, что и тип вашего объектива. На вкладке « Переместить/перетащить » нажмите «По размеру » и на вкладке « Обрезка » выберите «Автообрезка HDR» .
Вернувшись в окно Panorama Stitcher , перейдите на вкладку Stitcher .
В разделе Поле зрения щелкните Вычислить поле зрения . (Возможно, это уже установлено правильно.)
В разделе Размер холста щелкните Вычислить оптимальный размер .Затем в разделе «Обрезка » нажмите «Обрезка по размеру изображения » .(Не используйте здесь параметр обрезки, так как это может оставить пустые области рядом с границами некоторых изображений.)
Отмените выбор всего в разделе «Панорамные выходы» .
В разделе «Переназначенные изображения » выберите «Без коррекции экспозиции, низкий динамический диапазон» .
Щелкните Сшить . Вам будет предложено выбрать префикс — это путь и строка, которые будут добавлены к каждому сгенерированному файлу. Рекомендую поместить сгенерированные файлы в отдельный каталог.
Рендеринг кадров снова займет некоторое время.
После того, как Hugin закончит свою работу, вы получите серию изображений. Не хватает только двух вещей:
К счастью, эти две вещи можно исправить за один шаг. В качестве бонуса, если вы сделали кадры с разрешением выше, чем ваше целевое разрешение для последовательности видеороликов, этот шаг также изменит их размер.
Запустите bash
, перейдите в каталог, содержащий сгенерированные файлы, затем запустите:
for i in *.tif ; do convert $i -resize 1920x1080^ -gravity center -extent 1920x1080 `echo $i | sed s/.tif/.jpg/` ; done
rm *.tif
(если ваше целевое разрешение отличается от 1920×1080, соответствующим образом измените первую строку.)
Это будет масштабировать каждое изображение, чтобы заполнить ваше целевое разрешение, и обрезать его до размера, если пропорции не совсем подходят. Вторая строка удалит файлы, сгенерированные Hugin.
Вот и все! Теперь используйте ваш любимый инструмент, чтобы превратить полученную последовательность изображений в видеоклип.
Марко
"$i"
вместо$i
3) Используйте расширение параметра вместо эхаsed
, например,convert "$i" "${i%.tif}.jpg"
4) Используйтеmogrify
вместо,convert
чтобы вам не нужен цикл. Примерmogrify -resize '1920x1080^' -gravity center -extent 1920x1080 -format jpg -- *.tif