Съдържание:

Как да направите видео с интервал: 7 стъпки
Как да направите видео с интервал: 7 стъпки

Видео: Как да направите видео с интервал: 7 стъпки

Видео: Как да направите видео с интервал: 7 стъпки
Видео: 7 идей Как сделать презентацию интереснее. Видео урок PowerPoint 2019 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"

За камера на планета:

"https:///image.cgi? резолюция = 1920x1080"

Ще трябва да потърсите URL адреса в Google, за да използвате за вашата марка камера.

И изображенията на Ubiquiti и на планетата, които хващам, са с размер 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 =/home/steve/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

преобразуване -геометрия 1024x "$ ubnt_dir/ubnt.jpg" "$ ubnt_dir/$ {сега}.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

спя за броя секунди в променливата за забавяне

върнете се и започнете от стъпката while true

За да стартирам този скрипт, влизам в акаунта си и го стартирам от терминала - така че това е добре за заснемане на нещо като ледохода на езеро - това се прави за ден -два и имам нужда от изображение на всеки 20 секунди.

Стъпка 3: Заснемане на изображения - Метод 2

Заснемане на изображения - Метод 2
Заснемане на изображения - Метод 2

За по -дълги периоди от време, като строителството на сграда или едногодишен проект, използвам различен начин за заснемане на изображения. За това използвам cron.

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

За период от време, който продължава месеци, когато получавам изображение на всеки X минути, използвам задача за cron и малко по -различен скрипт, тъй като не изисква цикъл (докато true прави и прави), тъй като cron ще извика скрипта всеки Х числови минути.

Не само можете да го използвате, за да стартирате скрипта на всеки 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 сутринта до 23:00 (това се променя със сезона за мен)

Първият * означава да го изпълнявате всеки ден от месеца

Вторият * означава да се изпълнява всеки месец от годината

Третият * означава да го изпълнявате всеки ден от седмицата

/home/steve/timelapse/get.ubnt е името на скрипта, който се изпълнява

/dev/null 2> & 1 означава да поставите стандартния изход на null и всички грешки в null - ако нямате това, ще получавате имейл всеки път, когато се изпълнява заданието cron.

Моят скрипт /usr/steve/timelapse/get.ubnt изглежда така:

#!/bin/bash

cd/home/steve/timelapse

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

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

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

преобразуване -геометрия 1024x ubnt-j.webp" />

Какво прави този скрипт:

промяна на/home/steve/timelapse

задайте променлив URL на мястото, където изображението е в мрежата/камерата

задайте променливата сега на година, месец, ден, час, минута, секунда (за да можем да маркираме времето/датата на последното изображение в-j.webp

вземете изображението от URL и го запишете в ubnt.jpg

преоразмерете изображението до 1024 пиксела в ширина, като запазите правилното съотношение и запишете файла като печат за дата/час.

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

Стъпка 4: Копирайте изображенията на компютър с Windows

За да копирам изображенията от системата Linux на компютър с Windows за обработка във видео използвам FTP.

Програмата за Windows, която използвам за това, е FileZilla Client. Можете да използвате всеки предпочитан от вас ftp клиент, дори версията на командния ред в Windows.

Ако знаете какво правите, можете също да използвате Samba или NFS и файловете на Linux да се показват като папка в Windows.

Стъпка 5: Създаване на видео - Photolapse 3

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

Сега, когато имаме изображенията, трябва да ги съберем, за да създадем видео файл.

Има много програми, които можете да използвате за това и може да искате да експериментирате с различни програми.

Въпреки това, за сравнително малък брой изображения, които заснех по време на един или два дни почивка, използвам програмата на Windows Photolapse 3 - която за съжаление вече не се актуализира и вече не мога да намеря оригиналния уебсайт за нея. Той обаче е достъпен от редица сайтове за изтегляне. Бързо търсене в Google би трябвало да оправи.

Това, което е/беше хубаво в тази програма, е, че тя е единичен двоичен файл, така че няма инсталация. Просто изтеглете двоичния файл и го стартирайте. Недостатъкът е, че няма да обработва огромен брой файлове. Под огромни имам предвид вероятно 20 хиляди или повече, но за нещо като моето видео с лед с приблизително 5 000 изображения е добре.

Стартирате програмата, в горния ляв прозорец пробийте надолу или намерете къде се съхраняват вашите изображения, след това въведете броя на кадрите в секунда (по -малък брой ще накара видеото да изглежда като забавено движение). След това щракнете върху бутона „Зареждане на файлове от текущата папка“

Photolapse ще зареди и визуализира всеки кадър и ще получите представа как ще изглежда видеото.

Когато приключи с обработката на цялата папка, щракнете върху бутона „Създаване на филм“, променете името на файла, ако искате, след което кликнете върху „Запазване“.

След това трябва да изберете метод за компресиране на видеоклипа или да го оставите некомпресиран. Използвам „Microsoft Video 1“. Остава само да кликнете върху „OK“

Въпреки че ще трябва да преминете отново през всички стъпки, за да изберете различен метод на компресиране или кодек, струва си да опитате различни настройки тук, ако имате нужда от компресиране на видео.

Изображенията, които използвах за заснемане на екрана в тази стъпка, бяха някои от оригиналните изображения на лед. Използвах 1191 изображения с 1024x576 пиксела. Те заеха около 110 MB дисково пространство. Компресираното видео беше с размер 235 MB, а некомпресираното - 1,96 GB

Стъпка 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 видео 1“

За да започнете обработката на изображения, щракнете върху „Файл“, след това „Запазване като AVI“. Дайте име на файла, след което кликнете върху „Запазване“

Това ще започне обработката и ще покаже колко време ще отнеме.

Въпреки че има повече стъпки при използването на VirtualDub, той ще обработва повече файлове, отколкото photolapse 3.

Направих timelapse с над 88 000 изображения, използвайки VirtualDub.

Стъпка 7: Заключение

За да видите видеоклиповете с таймлапс, можете да използвате програма като VLC или собствен медиен плейър на Windows.

Има много, много начини да заснемете изображения и да направите timelapse.

Ако имате камера на Canon, има фърмуер на трети страни CHDK за някои модели, който ще ви позволи да използвате камерата в режим на интервалометър и да правите снимки на всеки x секунди.

Експериментирайте много! Надявам се, че този Instructable ви е бил интересен и ако все пак направите timelapse, не забравяйте да оставите връзка към него в коментарите.

Препоръчано: