Оглавление:

Как сделать замедленное видео: 7 шагов
Как сделать замедленное видео: 7 шагов

Видео: Как сделать замедленное видео: 7 шагов

Видео: Как сделать замедленное видео: 7 шагов
Видео: Как сделать плавное замедление/ускорение видео в Кап Кут? Кривые скорости в CapCut 2024, Июль
Anonim
Image
Image

В этом руководстве я подробно опишу шаги, которые я использую для создания замедленного видео. Система и оборудование, которые я использую для получения изображений, - это компьютер с Linux и сетевая IP-камера. Сценарий запускается на компьютере Linux и каждые x секунд опрашивает IP-камеру, захватывает изображение, изменяет его размер, ставит отметку времени и даты и сохраняет на жесткий диск компьютера. Чтобы создать видео из изображений, я расскажу о двух различных бесплатных приложениях на ПК с Windows и рассмотрю возможность использования Linux в качестве опции.

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

В случае с моим ледяным видео. Я делал снимки каждые 20 секунд, непосредственно перед восходом солнца в первый день, и переходил к закату следующего дня. Я удалил большую часть ночных изображений, прежде чем обрабатывать их в видео, но решил сохранить "восход луны"

У меня осталось около 4 430 изображений. Если я создаю видео со скоростью 25 кадров в секунду, длина будет:

4, 430/25 = 177,2 секунды. 177,2 секунды - это почти 3 минуты.

Если вы хотите запечатлеть что-то вроде строящегося дома, то лучше всего начинать каждые 3-5 минут.

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

Шаг 1. Изображения с IP-камеры

Изображения с IP-камеры
Изображения с IP-камеры

Большинство IP-камер, используемых либо для видеонаблюдения, либо для полнофункциональных веб-камер, позволяют просматривать неподвижное изображение в формате-j.webp

"https:///snap.jpg"

Для камеры Planet:

"https:///image.cgi? Resolution = 1920x1080"

Вам нужно будет ввести в Google URL-адрес, который будет использоваться для вашей марки камеры.

И изображения Ubiquiti, и Planet, которые я беру, имеют размер 1920x1080 (по умолчанию для каждой камеры, поскольку это камеры 1080). С таким размером вы получаете огромное количество данных и огромный видеофайл. Мне нравится изменять размер изображения, когда я беру его и записываю на диск, и я покажу этот шаг в своем скрипте. Я использую convert, который является частью инструментов ImageMagick.

Шаг 2: Захват изображений - метод 1

Захват изображений - метод 1
Захват изображений - метод 1
Захват изображений - метод 1
Захват изображений - метод 1

Я использую этот метод для съемки более коротких событий, таких как ледяной покров. Вы можете использовать этот метод для захвата чего-то вроде движения и настройки события - что-то, что занимает несколько часов или 1 или 2 дня, и где вы можете вручную удалить любые нежелательные изображения, такие как ночное время, перед обработкой в видео.

Под Linux сценарий для моей камеры Ubiquiti выглядит так:

#! / bin / bash

# перейти в правильную папку

cd / home / steve / iceoff

# Ubiquiti - камера ubnt

URL = "https://192.168.2.114/snap.jpg"

# куда писать изображения

ubnt_dir = / домой / Стив / iceoff / ubnt

# задержка между изображениями

задержка = 20

# петля

в то время как правда

# использовать время / дату для отметки имени файла - это должно быть в секции цикла

сейчас = $ (/ bin / date '+% Y% m% d% H% M% S')

# получаем изображение и записываем его как ubnt.jpg

/ usr / bin / wget -q -O "$ ubnt_dir / ubnt.jpg" -t 1 $ URL

# изменить размер изображения ubnt-j.webp

convert -geometry 1024x "$ ubnt_dir / ubnt.jpg" "$ ubnt_dir / $ {now}.jpg"

# засыпаем на время задержки, затем получаем другое изображение

/ bin / sleep "задержка $"

сделано

Что делает сценарий:

установить переменный URL-адрес, где изображение находится в сети / камере

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

установите переменную задержку на сколько секунд между изображениями - это позволяет легко изменять время между изображениями, просто измените эту переменную и повторно запустите скрипт

начать цикл с while true do - этот цикл должен продолжаться до тех пор, пока вы не остановите скрипт с помощью ctrl-c

установите переменную сейчас как год, месяц, день, час, секунду

16 февраля 2019 г. через 8 минут и 29 секунд после 13:00 будет выглядеть как 20190216130829

используйте wget, чтобы взять изображение из URL-адреса и записать его как ubnt-j.webp

преобразуйте изображение ubnt-j.webp

сон на количество секунд в переменной задержки

вернуться и начать в то время как правда сделать шаг

Чтобы запустить этот скрипт, я вхожу в свою учетную запись и запускаю его с терминала - так что это хорошо для съемки чего-то вроде ледяного покрова озера - это делается за день или два, и мне нужно изображение каждые 20 секунд.

Шаг 3: Захват изображений - метод 2

Захват изображений - метод 2
Захват изображений - метод 2

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

Cron - это утилита, которая запускает команду каждые x минут, часов, дней или месяцев. Таким образом, вы можете настроить выполнение команды по минутам, часам, дням, дням месяца и т. Д. Пользователь в системе Linux может иметь собственное задание cron, и оно хранится в его файле crontab.

Для промежутка времени, который длится несколько месяцев, когда я получаю изображение каждые X минут, я использую задание cron и немного другой сценарий, поскольку он не требует цикла (while true do and done), поскольку cron будет вызывать сценарий каждые X число минут.

Вы можете не только использовать его для запуска скрипта каждые X минут, но и ограничить его запуск между определенными часами, чтобы вам не пришлось удалять много ночных изображений. По мере смены времени года и светового дня я меняю свою работу cron, чтобы отразить это.

Чтобы создать задание cron, войдите на ваш сервер Linux и выполните: crontab -e Это запустит редактирование вашего crontab. В моем файле crontab есть такая строка:

* / 5 4-23 * * * /home/steve/timelapse/get.ubnt> / dev / null 2> & 1

* / 5 означает запускать каждые 5 минут.

4-23 означает запуск с 4 утра до 11 вечера (для меня это меняется в зависимости от сезона).

Первый * означает запускать каждый день месяца.

Второй * означает запускать его каждый месяц в году.

Третий * означает запускать каждый день недели.

/home/steve/timelapse/get.ubnt - это имя скрипта, который запускается

/ dev / null 2> & 1 означает, что стандартный вывод будет иметь значение null, а любые ошибки - null - если у вас его нет, вы будете получать электронную почту каждый раз, когда запускается задание cron.

Мой скрипт /usr/steve/timelapse/get.ubnt выглядит так:

#! / bin / bash

cd / home / steve / таймлапс

URL = "https://192.168.2.114/snap.jpg"

сейчас = $ (/ bin / date '+% Y% m% d% H% M% S')

/ usr / bin / wget -q -O ubnt-j.webp

convert -geometry 1024x ubnt-j.webp" />

Что делает этот скрипт:

изменить на / home / steve / timelapse

установить переменный URL-адрес, где изображение находится в сети / камере

установите переменную сейчас на год, месяц, день, час, минуту, секунду (чтобы мы могли позже поставить отметку времени / даты на окончательном jpg-изображении)

получить изображение из URL и записать его в ubnt.jpg

измените размер изображения до 1024 пикселей в ширину, сохраняя правильное соотношение, и запишите файл как отметку даты / времени.

Как и в предыдущем методе / скрипте, он сделает имена файлов последовательными и позволит нам создать видео с кадрами в правильной последовательности. После того, как у меня будет несколько дней изображений, я скопирую их в папку на моем ПК с Windows, чтобы создать видеофайл. Обычно я использую ftp для получения файлов на ПК с Windows, поскольку они находятся в одной сети, а логин / пароль, являющийся открытым текстом, не виден в Интернете.

Шаг 4. Скопируйте изображения на ПК с Windows

Чтобы скопировать изображения из системы Linux на ПК с Windows для обработки в видео, я использую FTP.

Для этого я использую программу Windows FileZilla Client. Вы можете использовать любой ftp-клиент, который вам нравится, даже версию с командной строкой в Windows.

Если вы знаете, что делаете, вы также можете использовать Samba или NFS, и файлы Linux будут отображаться в виде папки в Windows.

Шаг 5: Создание видео - Фотолапс 3

Создание видео - Photolapse 3
Создание видео - Photolapse 3
Создание видео - Photolapse 3
Создание видео - Photolapse 3
Создание видео - Photolapse 3
Создание видео - Photolapse 3

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

Есть много программ, которые вы можете использовать для этого, и вы можете поэкспериментировать с разными программами.

Однако для относительно небольшого количества изображений, таких как я делаю во время одного или двух дней отсутствия льда, я использую программу для Windows Photolapse 3, которая, к сожалению, больше не обновляется, и я больше не могу найти для нее исходный веб-сайт. Однако он доступен на нескольких сайтах для «загрузки». Быстрый поиск в Google подойдет.

Что было / приятно в этой программе, так это то, что это единый двоичный файл, поэтому установка не требуется. Просто скачайте двоичный файл и запустите его. Обратной стороной является то, что он не обрабатывает огромное количество файлов. Под огромным я имею в виду, вероятно, 20 тысяч или больше, но для чего-то вроде моего ледяного видео с примерно 5 000 изображений это нормально.

Вы запускаете программу, в верхнем левом окне просматриваете детали или находите, где хранятся ваши изображения, затем вводите количество кадров в секунду (меньшее число заставит видео выглядеть как замедленное). Затем нажмите кнопку «Загрузить файлы из текущей папки».

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

Когда он завершит обработку всей папки, нажмите кнопку «Создать фильм», измените имя файла, если хотите, затем нажмите «Сохранить».

Далее вам нужно выбрать метод сжатия видео или оставить его без сжатия. Я использую «Microsoft Video 1». Осталось только нажать «ОК».

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

Изображения, которые я использовал для снимков экрана на этом этапе, были взяты из исходных изображений льда. Я использовал 1191 изображение размером 1024x576 пикселей. Они занимали около 110 МБ дискового пространства. Размер сжатого видео составлял 235 МБ, а несжатого - 1,96 ГБ.

Шаг 6: Создание видео - VirtualDub

Создание видео - VirtualDub
Создание видео - VirtualDub
Создание видео - VirtualDub
Создание видео - VirtualDub
Создание видео - VirtualDub
Создание видео - VirtualDub

Другая программа, которую я использовал, - VirtualDub.

Загрузите zip-файлы здесь. Есть 32-битная и 64-битная версии.

Разархивируйте файлы в их собственную папку.

Одна из вещей, которые вам нужно будет сделать с вашими изображениями, - это последовательно перенумеровать их. Использование имен файлов с отметками даты и времени, таких как мои сценарии, не будет работать с VirtualDub. Есть несколько способов изменить нумерацию файлов:

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

Откройте папку с изображениями, измените вид на «подробности», выделите первый файл в списке, нажмите ctrl-a, чтобы выбрать все файлы, щелкните правой кнопкой мыши и выберите «переименовать». Измените имя файла на 1 и нажмите Enter.

Это обработает список файлов и добавит (1).jpg, затем (2)-j.webp

Второй способ - использовать программу Irfanview. Он имеет пакетный режим, в котором вы можете последовательно переименовывать файлы в 1.jpg, 2.jpg, 3-j.webp

После переименования файлов запустите VirtualDub, нажмите «файл», затем «открыть видеофайл». Выберите первый файл-j.webp

Нажмите «Видео», затем «Частота кадров», измените это значение на 30 (или любую другую частоту кадров, которую вы хотите попробовать).

Нажмите «Видео», затем «Сжатие» - как и в случае с фотолапсом 3, я использовал «Microsoft video 1».

Чтобы начать обработку изображений, нажмите «Файл», затем «Сохранить как AVI». Назовите файл и нажмите «Сохранить».

Это запустит обработку и покажет, сколько времени это займет.

Хотя использование VirtualDub включает больше шагов, он обработает больше файлов, чем photolapse 3.

Я сделал таймлапс с более чем 88 000 изображений, используя VirtualDub.

Шаг 7: Заключение

Для просмотра видеороликов с замедленной съемкой вы можете использовать такую программу, как VLC или собственный медиаплеер Windows.

Есть много-много способов захвата изображений и создания таймлапса.

Если у вас есть камера Canon, для некоторых моделей есть сторонняя прошивка CHDK, которая позволит вам использовать камеру в режиме интервалометра и делать снимки каждые x секунд.

Экспериментируйте много! Надеюсь, вы нашли это руководство интересным, и если вы все же сделаете таймлапс, обязательно оставьте ссылку на него в комментариях.

Рекомендуемые: