INHOUDSOPGAWE:

Hoe om 'n time -lapse -video te maak: 7 stappe
Hoe om 'n time -lapse -video te maak: 7 stappe

Video: Hoe om 'n time -lapse -video te maak: 7 stappe

Video: Hoe om 'n time -lapse -video te maak: 7 stappe
Video: Hoe om 'n drukker vanlyn na aanlyn te verander 2024, November
Anonim
Image
Image

In hierdie instruksies sal ek die stappe beskryf wat ek gebruik om 'n time -lapse -video te maak. Die stelsel en hardeware wat ek gebruik om die beelde te kry, is 'n Linux -rekenaar en 'n netwerk -gebaseerde IP -kamera. 'N Skrip word op die Linux-rekenaar uitgevoer en elke x sekonde word die IP-kamera ondersoek, 'n prentjie geneem, dit hergrootte, tyd en datum word gestempel en op die hardeskyf van die rekenaar gestoor. Om die video uit die beelde te maak, dek ek twee verskillende freeware -toepassings op 'n Windows -rekenaar en kyk na die gebruik van Linux as 'n opsie.

By die verkryging van beelde moet u die tyd tussen elke prentjie bepaal, of hoeveel beelde per uur of dag nodig is om 'n video te skep wat goed lyk en nie te lank of kort is nie.

In die geval van my ice off video. Ek het elke 20 sekondes 'n prentjie geneem, net voor sonsopkoms op die eerste dag, en die volgende dag tot sononder. Ek het die meeste nagbeelde verwyder voordat ek dit in die video verwerk het, maar besluit om 'n "maanopkoms" te hou

Dit laat my met ongeveer 4, 430 beelde. As ek die video met 25 rame per sekonde vervaardig, is die lengte:

4, 430 /25 = 177,2 sekondes lank. 177,2 sekondes is byna 3 minute.

As u iets wil vang soos 'n huis wat gebou word, is elke 3 tot 5 minute 'n goeie plek om te begin.

Afhangende van hoe gereeld en hoe lank ek nodig het om beelde op te neem, gebruik ek een vir twee verskillende metodes.

Stap 1: Beelde vanaf 'n IP -kamera

Beelde van 'n IP -kamera
Beelde van 'n IP -kamera

Met die meeste IP -kameras wat gebruik word in video -toesig of vir volledige webcams, kan u 'n stil-j.webp

"https:///snap.jpg"

Vir 'n Planet -kamera:

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

U sal die URL moet google om vir u kamera te gebruik.

Beide die Ubiquiti- en Planet -beelde wat ek neem, is 1920x1080 groot (standaard vir elke kamera, aangesien dit 1080 kameras is). Met hierdie grootte kry u 'n groot hoeveelheid data en 'n groot videolêer. Ek hou daarvan om die prentjie weer te verander terwyl ek dit gryp en op die skyf skryf, en ek sal hierdie stap in my script wys. Ek gebruik convert wat deel uitmaak van die ImageMagick -gereedskap.

Stap 2: Beelde vaslê - Metode 1

Beelde vaslê - Metode 1
Beelde vaslê - Metode 1
Beelde vaslê - Metode 1
Beelde vaslê - Metode 1

Ek gebruik hierdie metode om korter gebeurtenisse soos ys af te vang. U kan hierdie metode gebruik om iets soos 'n intrek en opstel van 'n gebeurtenis vas te lê - iets wat 'n paar uur of 1 of 2 dae neem en waar u ongewenste beelde soos nag met die hand kan verwyder voordat u dit in 'n video verwerk

Onder Linux lyk 'n script vir my Ubiquiti -kamera so:

#!/bin/bash

# gaan na die regte gids

cd/home/steve/iceoff

# Ubiquiti - ubnt -kamera

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

# waar om prente te skryf

ubnt_dir =/home/steve/iceoff/ubnt

# vertraging tussen beelde

vertraging = 20

# die lus

terwyl dit waar is

# gebruik die tyd/datum om die lêernaam af te druk - dit moet in die lusgedeelte wees

nou = $ (/bin/datum '+%Y%m%d%H%M%S')

# kry die prentjie en skryf dit as ubnt.jpg

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

# Maak die ubnt.jpg-beeld weer groot en skryf dit op die skyf met die datum/tyd-formaat vir die lêernaam

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

# slaap vir die vertraging, en kry dan 'n ander beeld

/bin/sleep "$ vertraging"

gedoen

Wat die skrif doen:

stel 'n veranderlike URL in waar die prent op die netwerk/kamera is

stel die veranderlike ubnt_dir in waar ons beelde wil stoor (u moet die gids skep voordat u die script uitvoer)

Stel die veranderlike vertraging in op hoeveel sekondes tussen beelde - dit maak dit maklik om die tyd tussen beelde te verander, verander hierdie veranderlike en voer die skrif weer uit

begin 'n lus met terwyl dit werklik is - hierdie lusse moet duur totdat u die skrip met 'n ctrl -c stop

stel die veranderlike nou in as die jaar, maand, dag, uur, sekonde

16 Februarie 2019 om 8 minute en 29 sekondes na 13:00 lyk soos 20190216130829

Gebruik wget om 'n prentjie uit die URL te haal en skryf dit as ubnt-j.webp

skakel die prent ubnt-j.webp

slaap vir die aantal sekondes in die vertragingsveranderlike

gaan terug en begin by die terwyl ware doen -stap

Om hierdie script uit te voer, meld ek aan by my rekening en voer dit vanaf die terminale uit - dit is dus goed om iets soos die afloop van 'n meer vas te vang - dit is binne 'n dag of twee gedoen en ek het elke 20 sekondes 'n beeld nodig.

Stap 3: Beelde vaslê - Metode 2

Beelde vaslê - Metode 2
Beelde vaslê - Metode 2

Vir langer tydsverloop, soos die bou van 'n gebou of 'n jaar lange projek, gebruik ek 'n ander manier om beelde vas te lê. Hiervoor gebruik ek cron.

Cron is 'n program wat elke x minute, ure, dae of maande 'n opdrag uitvoer. U kan dus aanpas wanneer die opdrag per minuut, uur, dag, dag van die maand, ens. 'N Gebruiker in 'n Linux -stelsel kan hul eie cron -taak hê en dit word in hul crontab -lêer gehou.

Vir 'n tydsverloop wat maande duur, waar ek elke X -minute 'n beeld kry, gebruik ek 'n cron -taak en 'n effens ander skrif, aangesien dit nie 'n lus benodig nie (terwyl dit waar is), aangesien cron die script elke keer sal noem X nommer minute.

U kan dit nie net gebruik om die skrip elke X minute uit te voer nie, maar u kan dit ook beperk om tussen sekere ure te werk, sodat u nie baie nagbeelde hoef te verwyder nie. Namate die seisoen en daglig verander, verander ek my werk om dit weer te gee.

Om 'n cron job -aanmelding by u Linux -bediener te skep en uit te voer: crontab -e Dit sal 'n wysiging van u crontab begin. My crontab -lêer het 'n reël soos volg:

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

Die */5 beteken elke 5 minute hardloop

Die 4-23 beteken om dit van 04:00 tot 23:00 te gebruik (dit verander vir my met die seisoen)

Die eerste * beteken om dit elke dag van die maand uit te voer

Die tweede * beteken om dit elke maand van die jaar te bestuur

Die derde * beteken om dit elke dag van die week uit te voer

/home/steve/timelapse/get.ubnt is die skripnaam wat loop

/dev/null 2> & 1 beteken om standaarduitset op null te plaas en enige foute op null - as u dit nie het nie, kry u e -pos elke keer as die cron -taak loop.

My script /usr/steve/timelapse/get.ubnt lyk so:

#!/bin/bash

cd/home/steve/timelapse

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

nou = $ (/bin/datum '+%Y%m%d%H%M%S')

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

omskep -geometrie 1024x ubnt-j.webp" />

Wat hierdie skrif doen:

verander na/home/steve/timelapse

stel 'n veranderlike URL in waar die prent op die netwerk/kamera is

stel die veranderlike nou in op jaar, maand, dag, uur, minuut, sekonde (sodat ons later/datum die laaste-j.webp

haal die prentjie van die URL af en skryf dit na ubnt.jpg

verander die grootte van die prent tot 1024 pixels breed, behou die korrekte verhouding en skryf die lêer as 'n datum/tydstempel.

Soos met die vorige metode/script, sal die lêernaam volgorde maak en ons in staat stel om die video met die rame in die regte volgorde te maak. Nadat ek 'n paar dae se beelde gehad het, sal ek dit na 'n gids op my Windows -rekenaar kopieer om die videolêer te skep. Ek gebruik gewoonlik ftp om die lêers op die Windows -rekenaar te kry, aangesien dit op dieselfde netwerk is en die aanmelding/wagwoord as duidelike teks nie op die internet sigbaar is nie.

Stap 4: Kopieer die beelde na 'n Windows -rekenaar

Ek gebruik FTP om die beelde van die Linux -stelsel na 'n Windows -rekenaar vir verwerking in 'n video te verwerk.

Die Windows -program wat ek hiervoor gebruik, is FileZilla Client. U kan enige ftp -kliënt gebruik, selfs die opdragreëlweergawe in Windows.

As u weet wat u doen, kan u ook Samba of NFS gebruik en die Linux -lêers as 'n gids in Windows laat verskyn.

Stap 5: Skep die video - Photolapse 3

Die skep van die video - Photolapse 3
Die skep van die video - Photolapse 3
Die skep van die video - Photolapse 3
Die skep van die video - Photolapse 3
Die skep van die video - Photolapse 3
Die skep van die video - Photolapse 3

Noudat ons die beelde het, moet ons dit saamvoeg om 'n videolêer te skep.

Daar is baie programme wat u kan gebruik om dit te doen, en u wil dalk met verskillende programme eksperimenteer.

Maar vir 'n relatief klein aantal beelde soos wat ek gedurende die een of twee dae met ys afneem, gebruik ek die Windows -program Photolapse 3 - wat ongelukkig nie meer bygewerk word nie en ek kan nie meer die oorspronklike webwerf daarvoor vind nie. Dit is egter beskikbaar op 'n aantal 'aflaai' -webwerwe. 'N Vinnige soektog op Google behoort 'n goeie oplossing te vind.

Wat aangenaam is met hierdie program, is dat dit 'n enkele binêre is, dus is daar geen installasie nie. Laai net die binêre af en voer dit uit. Die nadeel is dat dit nie 'n groot aantal lêers sal verwerk nie. Met groot bedoel ek waarskynlik 20 duisend of meer, maar vir iets soos my ys af video met ongeveer 5 000 beelde is dit goed.

U begin die program, in die linkerbovenhoek van die venster, of u vind waar u beelde gestoor word, en plaas dan die aantal framers per sekonde ('n kleiner getal laat die video as slow motion verskyn). Klik dan op die knoppie "Laai lêers uit die huidige gids"

Photolapse laai en kyk na elke raam, en u kry 'n idee van hoe die video sal lyk.

As die volledige gids verwerk is, klik op die knoppie "Skep film", verander die lêernaam as u wil en klik dan op "Stoor".

Vervolgens moet u 'n kompressiemetode vir die video kies of dit ongekomprimeer laat. Ek gebruik "Microsoft Video 1". Al wat oorgebly het, is om op "OK" te klik

Alhoewel u weer deur al die stappe moet gaan om 'n ander kompressiemetode of codec te kies, is dit die moeite werd om verskillende instellings hier te probeer as u die video saamgepers het.

Die beelde wat ek vir die skermopnames in hierdie stap gebruik het, was 'n paar van die oorspronklike ys -afbeeldings. Ek het 1191 beelde van 1024x576 pixels gebruik. Hulle het ongeveer 110 MB skyfspasie ingeneem. Die saamgeperste video was 235 MB groot en die ongekomprimeerde was 1,96 GB

Stap 6: Skep die video - VirtualDub

Die skep van die video - VirtualDub
Die skep van die video - VirtualDub
Die skep van die video - VirtualDub
Die skep van die video - VirtualDub
Die skep van die video - VirtualDub
Die skep van die video - VirtualDub

Die ander program wat ek gebruik het, is VirtualDub

Laai die zip -lêers hier af. Daar is 'n 32-bis en 64-bis weergawe

Pak die lêers uit in hul eie gids.

Een van die dinge wat u met u beelde moet doen, is om dit opeenvolgend te hernoem. Die gebruik van die datum/tydstempel -lêernaam soos my skrifte skep, werk nie met VirtualDub nie. Daar is 'n paar maniere om die lêers te hernummer:

Maak eers 'n rugsteun van u lêers, dan 'n ander rugsteun. Gebruik dan die tweede kopie:

Maak die gids met die beelde oop, verander die aansig in "besonderhede", merk die eerste lêer op die lys, druk ctrl-a om alle lêers te kies, klik met die rechtermuisknop en kies "hernoem". Verander die lêernaam na 1 en druk dan enter.

Dit verwerk die lys lêers en voeg (1).jpg, dan (2)-j.webp

Die tweede manier is om 'n program genaamd Irfanview te gebruik. Dit het 'n bondel af waar jy die lêers opeenvolgend kan hernoem tot 1.jpg, 2.jpg, 3-j.webp

Sodra die lêers hernoem is, begin VirtualDub, klik op "lêer" en dan "maak videolêer oop". Kies die eerste-j.webp

Klik op "Video" en dan op "Frame Rate", verander dit na 30 (of watter raamtempo u ook al wil probeer)

Klik op "Video" en dan op "Kompressie" - soos met fotolaps 3 het ek "Microsoft video 1" gebruik

Om die beelde te begin verwerk, klik op "File" en dan op "Save as AVI". Noem die lêer en klik dan op "Stoor"

Dit sal die verwerking begin en wys hoe lank dit sal neem.

Alhoewel daar meer stappe is om VirtualDub te gebruik, sal dit meer lêers verwerk as fotolaps 3.

Ek het 'n tydsverloop gemaak met meer as 88 000 beelde met behulp van VirtualDub.

Stap 7: Gevolgtrekking

Om die tydsverloopvideo's te sien, kan u 'n program soos VLC of Windows se eie mediaspeler gebruik.

Daar is baie maniere om beelde vas te lê en 'n tydsverloop te maak.

As u 'n Canon -kamera het, is daar 'n derdeparty -firmware -CHDK vir sommige modelle waarmee u die kamera in die intervalmeter kan gebruik en elke x sekonde 'n foto kan neem.

Eksperimenteer baie! Hoop dat u hierdie instruksies interessant gevind het, en as u 'n tydsverloop maak, moet u 'n skakel hierna in die kommentaar laat.

Aanbeveel: