INHOUDSOPGAWE:
- Stap 1: Beelde vanaf 'n IP -kamera
- Stap 2: Beelde vaslê - Metode 1
- Stap 3: Beelde vaslê - Metode 2
- Stap 4: Kopieer die beelde na 'n Windows -rekenaar
- Stap 5: Skep die video - Photolapse 3
- Stap 6: Skep die video - VirtualDub
- Stap 7: Gevolgtrekking
Video: Hoe om 'n time -lapse -video te maak: 7 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-31 10:16
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
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
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
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
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 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:
Hoe om humiditeit en temperatuur real-time data-opnemer te maak met Arduino UNO en SD-kaart - DHT11 Data-logger Simulasie in Proteus: 5 stappe
Hoe om humiditeit en temperatuur real-time data-opnemer te maak met Arduino UNO en SD-kaart | DHT11 Data-logger Simulasie in Proteus: Inleiding: hi, dit is Liono Maker, hier is die YouTube-skakel. Ons maak 'n kreatiewe projek met Arduino en werk aan ingebedde stelsels. Data-Logger: 'n Datalogger (ook data-logger of data recorder) is 'n elektroniese toestel wat data mettertyd opneem
Hoe om 'n hoë huidige bestuurder vir 'n stappermotor te maak: 5 stappe
Hoe om 'n hoë huidige bestuurder vir 'n stappermotor te maak: hier sal ons kyk hoe u 'n stappermotorbestuurder kan maak met behulp van Toshiba se TB6560AHQ -beheerder. Dit is 'n volledige kontroleerder wat slegs 2 veranderlikes as invoer benodig en dit doen al die werk. Aangesien ek twee hiervan nodig gehad het, het ek hulle albei gemaak met die
Hoe om 'n Linux -opstartskyf te maak (en hoe om dit te gebruik): 10 stappe
Hoe om 'n Linux Boot Drive te skep (en hoe om dit te gebruik): Dit is 'n eenvoudige inleiding oor hoe u met Linux, spesifiek Ubuntu, kan begin
Hoe om 'n hommeltuig te maak met Arduino UNO - Maak 'n quadcopter met behulp van mikrokontroller: 8 stappe (met foto's)
Hoe om 'n hommeltuig te maak met Arduino UNO | Maak 'n quadcopter met behulp van mikrobeheerder: inleiding Besoek my Youtube -kanaal 'n Drone is 'n baie duur apparaat (produk) om te koop. In hierdie pos gaan ek bespreek hoe ek dit goedkoop kan maak ?? En hoe kan u u eie goedkoop maak teen goedkoop pryse … In Indië is al die materiale (motors, ESC's
Musiekreaktiewe lig -- Hoe om 'n super -eenvoudige musiekreaktiewe lig te maak vir die maak van 'n tafelblad: 5 stappe (met foto's)
Musiekreaktiewe lig || Hoe om 'n super -eenvoudige musiekreaktiewe lig te maak om lessenaars te maak: Hallo ouens, vandag bou ons 'n baie interessante projek. Vandag gaan ons musiek reaktiewe lig bou. Die LED sal sy helderheid verander volgens die bas wat eintlik 'n lae-frekwensie klanksein is. Dit is baie eenvoudig om te bou. Ons sal