Оглавление:
- Шаг 1. Изображения с IP-камеры
- Шаг 2: Захват изображений - метод 1
- Шаг 3: Захват изображений - метод 2
- Шаг 4. Скопируйте изображения на ПК с Windows
- Шаг 5: Создание видео - Фотолапс 3
- Шаг 6: Создание видео - VirtualDub
- Шаг 7: Заключение
Видео: Как сделать замедленное видео: 7 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-31 10:24
В этом руководстве я подробно опишу шаги, которые я использую для создания замедленного видео. Система и оборудование, которые я использую для получения изображений, - это компьютер с Linux и сетевая IP-камера. Сценарий запускается на компьютере Linux и каждые x секунд опрашивает IP-камеру, захватывает изображение, изменяет его размер, ставит отметку времени и даты и сохраняет на жесткий диск компьютера. Чтобы создать видео из изображений, я расскажу о двух различных бесплатных приложениях на ПК с Windows и рассмотрю возможность использования Linux в качестве опции.
При получении изображений вам нужно выяснить время между каждым изображением или сколько изображений в час или день вам понадобится для создания видео, которое будет хорошо выглядеть, не будет слишком длинным или коротким.
В случае с моим ледяным видео. Я делал снимки каждые 20 секунд, непосредственно перед восходом солнца в первый день, и переходил к закату следующего дня. Я удалил большую часть ночных изображений, прежде чем обрабатывать их в видео, но решил сохранить "восход луны"
У меня осталось около 4 430 изображений. Если я создаю видео со скоростью 25 кадров в секунду, длина будет:
4, 430/25 = 177,2 секунды. 177,2 секунды - это почти 3 минуты.
Если вы хотите запечатлеть что-то вроде строящегося дома, то лучше всего начинать каждые 3-5 минут.
В зависимости от того, как часто и как долго мне нужно снимать изображения, я использую один для двух разных методов.
Шаг 1. Изображения с IP-камеры
Большинство IP-камер, используемых либо для видеонаблюдения, либо для полнофункциональных веб-камер, позволяют просматривать неподвижное изображение в формате-j.webp
"https:///snap.jpg"
Для камеры Planet:
"https:///image.cgi? Resolution = 1920x1080"
Вам нужно будет ввести в Google URL-адрес, который будет использоваться для вашей марки камеры.
И изображения Ubiquiti, и Planet, которые я беру, имеют размер 1920x1080 (по умолчанию для каждой камеры, поскольку это камеры 1080). С таким размером вы получаете огромное количество данных и огромный видеофайл. Мне нравится изменять размер изображения, когда я беру его и записываю на диск, и я покажу этот шаг в своем скрипте. Я использую convert, который является частью инструментов ImageMagick.
Шаг 2: Захват изображений - метод 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
Для более длительных промежутков времени, таких как строительство здания или годичный проект, я использую другой способ захвата изображений. Для этого я использую 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
Теперь, когда у нас есть изображения, нам нужно соединить их вместе, чтобы создать видеофайл.
Есть много программ, которые вы можете использовать для этого, и вы можете поэкспериментировать с разными программами.
Однако для относительно небольшого количества изображений, таких как я делаю во время одного или двух дней отсутствия льда, я использую программу для Windows Photolapse 3, которая, к сожалению, больше не обновляется, и я больше не могу найти для нее исходный веб-сайт. Однако он доступен на нескольких сайтах для «загрузки». Быстрый поиск в Google подойдет.
Что было / приятно в этой программе, так это то, что это единый двоичный файл, поэтому установка не требуется. Просто скачайте двоичный файл и запустите его. Обратной стороной является то, что он не обрабатывает огромное количество файлов. Под огромным я имею в виду, вероятно, 20 тысяч или больше, но для чего-то вроде моего ледяного видео с примерно 5 000 изображений это нормально.
Вы запускаете программу, в верхнем левом окне просматриваете детали или находите, где хранятся ваши изображения, затем вводите количество кадров в секунду (меньшее число заставит видео выглядеть как замедленное). Затем нажмите кнопку «Загрузить файлы из текущей папки».
Photolapse загрузит и выполнит предварительный просмотр каждого кадра, и вы получите представление о том, как будет выглядеть видео.
Когда он завершит обработку всей папки, нажмите кнопку «Создать фильм», измените имя файла, если хотите, затем нажмите «Сохранить».
Далее вам нужно выбрать метод сжатия видео или оставить его без сжатия. Я использую «Microsoft Video 1». Осталось только нажать «ОК».
Хотя вам нужно будет снова пройти все шаги, чтобы выбрать другой метод сжатия или кодек, стоит попробовать другие настройки здесь, если вам нужно сжать видео.
Изображения, которые я использовал для снимков экрана на этом этапе, были взяты из исходных изображений льда. Я использовал 1191 изображение размером 1024x576 пикселей. Они занимали около 110 МБ дискового пространства. Размер сжатого видео составлял 235 МБ, а несжатого - 1,96 ГБ.
Шаг 6: Создание видео - 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 секунд.
Экспериментируйте много! Надеюсь, вы нашли это руководство интересным, и если вы все же сделаете таймлапс, обязательно оставьте ссылку на него в комментариях.
Рекомендуемые:
Как сделать крутые часы своими руками - StickC - Сделать просто: 8 шагов
Сделай сам Как сделать классные часы - StickC - Легко сделать: в этом уроке мы узнаем, как запрограммировать ESP32 M5Stack StickC с Arduino IDE и Visuino для отображения времени на ЖК-дисплее, а также установить время с помощью кнопок StickC
Как сделать видео с экрана вашего компьютера !!: 5 шагов
Как сделать видео с экрана вашего компьютера !!: Это руководство покажет вам быстрый & простой способ сделать видео с экрана вашего компьютераПодпишитесь на мой канал Спасибо
Как сделать видео с зеленым экраном из приложения: 5 шагов
Как сделать видео с зеленым экраном из приложения: в этой инструкции я покажу вам, как создать и использовать зеленый экран для создания фотографий и видео. Есть несколько приложений с зеленым экраном, которые вы можете использовать для получения нужного эффекта. Необходимые материалы: Устройство видеозаписи (может быть iPod, iPad и т. Д.)
Превратите графический калькулятор TI в интервалометр и создайте замедленное видео: 7 шагов (с изображениями)
Превратите графический калькулятор TI в интервалометр и создайте замедленные видеоролики: я всегда хотел снимать видеоролики с замедленной съемкой, но у меня нет камеры со встроенной функцией интервалометра. На самом деле, я не думаю, что очень много камеры имеют такую функцию (особенно не зеркальные камеры). Итак, что вы хотите сделать, если хотите
Как сделать тостер для видео VHS: 8 шагов (с изображениями)
Как сделать тостер для видео VHS: Вдохновение для этого проекта пришло от BBC TV's The Young Ones. Этот видеоклип должен достаточно хорошо объяснить идею. Проект был прост: преобразовать видеомашину VHS для приготовления тостов и извлечь ее через прорезь для кассеты. Если бы я подумал, что кто-нибудь