Kazalo:
- Korak: Slike iz IP kamere
- 2. korak: Zajem slik - 1. metoda
- 3. korak: Zajem slik - 2. metoda
- 4. korak: Kopirajte slike v računalnik z operacijskim sistemom Windows
- 5. korak: Ustvarjanje videoposnetka - Photolapse 3
- 6. korak: Ustvarjanje videa - VirtualDub
- 7. korak: Zaključek
Video: Kako narediti video posnetek s časovnim zamikom: 7 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-31 10:24
V tem navodilu bom podrobno opisal korake, ki jih uporabljam za snemanje video posnetka s časovnim zamikom. Sistem in strojna oprema, ki jo uporabljam za pridobivanje slik, sta računalnik Linux in omrežna IP kamera. Skript se izvaja v računalniku z operacijskim sistemom Linux in vsakih x sekund poišče IP kamero, zajame sliko, ji spremeni velikost, jo označi čas in datum ter jo shrani na trdi disk računalnika. Za ustvarjanje videoposnetka iz slik bom zajel dve različni brezplačni aplikaciji na računalniku z operacijskim sistemom Windows in kot možnost uporabil Linux.
Pri pridobivanju slik morate ugotoviti čas med vsako sliko ali koliko slik na uro ali dan boste morali ustvariti video, ki bo videti dobro in ni predolg ali kratek.
V primeru mojega video posnetka. Prvi dan sem vzel sliko vsakih 20 sekund tik pred sončnim vzhodom in naslednji dan šel naravnost do sončnega zahoda. Večino nočnih slik sem odstranil, preden sem jih predelal v video, vendar sem se odločil, da obdržim "lunin vzpon"
Tako imam približno 4, 430 slik. Če video posnamem s 25 sličicami na sekundo, bo dolžina:
4, 430 /25 = dolgo 177,2 sekunde. 177,2 sekunde je skoraj 3 minute.
Če bi želeli posneti nekaj takega, kot se gradi hiša, bi bili vsakih 3 do 5 minut dober začetek.
Odvisno od tega, kako pogosto in kako dolgo moram zajemati slike, eno uporabim za dve različni metodi.
Korak: Slike iz IP kamere
Večina kamer IP, ki se uporabljajo bodisi za video nadzor ali za spletne kamere s polnim gibanjem, vam omogoča ogled nepomične slike-j.webp
"https:///snap.jpg"
Za kamero Planet:
"https:///image.cgi? resolucija = 1920x1080"
URL, ki ga želite uporabiti za svojo blagovno znamko fotoaparata, boste morali poiskati na Googlu.
Slike Ubiquitija in Planeta, ki jih zajamem, so velikosti 1920 x 1080 (privzeto za vsako kamero, saj je 1080 kamer). S to velikostjo dobite ogromno podatkov in ogromno video datotek. Sliko rad spremenim, ko jo vzamem in zapišem na disk, in ta korak bom pokazal v svojem skriptu. Uporabljam pretvorbo, ki je del orodij ImageMagick.
2. korak: Zajem slik - 1. metoda
To metodo uporabljam za zajemanje krajših dogodkov, kot je zaledenitev. S to metodo lahko posnamete nekaj podobnega, kot je premik in nastavitev dogodka - nekaj, kar traja nekaj ur ali 1 ali 2 dni in kjer lahko ročno odstranite vse neželene slike, na primer ponoči, preden jih obdelate v video
Pod Linuxom je skript za mojo kamero Ubiquiti videti tako:
#!/bin/bash
# pojdi v pravilno mapo
cd/home/steve/iceoff
# Ubiquiti - ubnt kamera
URL = "https://192.168.2.114/snap.jpg"
# kam pisati slike
ubnt_dir =/home/steve/iceoff/ubnt
# zamik med slikami
zamuda = 20
# zanka
medtem ko res
# uporabite čas/datum za označevanje imena datoteke - to mora biti v razdelku zanke
zdaj = $ (/bin/date '+%Y%m%d%H%M%S')
# vzemite sliko in jo zapišite kot ubnt.jpg
/usr/bin/wget -q -O "$ ubnt_dir/ubnt.jpg" -t 1 $ URL
# ponovno prilagodite sliko ubnt-j.webp
convert -geometry 1024x "$ ubnt_dir/ubnt.jpg" "$ ubnt_dir/$ {now}.jpg"
# spanje za čas zakasnitve, nato dobite drugo sliko
/bin/sleep "$ delay"
Končano
Kaj skript počne:
spremenljiv URL nastavite na mesto, kjer je slika v omrežju/kameri
spremenljivko ubnt_dir nastavite na mesto, kjer želimo shraniti slike (pred zagonom skripta boste morali ustvariti imenik)
spremenljivko zakasnite na koliko sekund med slikami - to olajša spreminjanje časa med slikami, samo spremenite to spremenljivko in znova zaženite skript
začni zanko z while true do - te zanke naj bi trajale, dokler ne ustavite skripta s ctrl -c
spremenljivko nastavite kot leto, mesec, dan, uro, sekundo
16. februar 2019 ob 8 minutah in 29 sekundah po 13. uri bi izgledal kot 20190216130829
Uporabite wget, da sliko vzamete z URL -ja in jo zapišete kot ubnt-j.webp
pretvorite sliko ubnt-j.webp
spanje za število sekund v spremenljivki zakasnitve
vrnite se in začnite pri resničnem koraku do
Če želite zagnati ta skript, se prijavim v svoj račun in ga zaženem s terminala - tako da je to dobro za zajem nečesa, kot je ledenik jezera - to se naredi v dnevu ali dveh in potrebujem sliko vsakih 20 sekund.
3. korak: Zajem slik - 2. metoda
Pri daljših časovnih presledkih, kot je gradnja stavbe ali enoletni projekt, uporabljam drugačen način zajemanja slik. Za to uporabljam cron.
Cron je pripomoček, ki zažene ukaz enkrat na x minut, ur, dni ali mesecev. Tako lahko prilagodite, kdaj se ukaz izvaja po minutah, urah, dnevih, dnevih v mesecu itd. Uporabnik v sistemu Linux ima lahko svojo lastno nalogo cron in je shranjena v datoteki crontab.
Za časovni zamik, ki traja več mesecev, ko dobim sliko vsakih X minut, uporabljam opravilo cron in nekoliko drugačen skript, saj ne zahteva zanke (medtem ko je true naredi in naredi), saj bo cron skript poklical vsak X število minut.
Ne samo, da ga lahko uporabite za zagon skripta vsakih X minut, ampak ga lahko omejite tudi med določenimi urami, tako da vam ni treba odstraniti veliko nočnih slik. Ko se sezona in dnevni čas spreminjata, spreminjam svojo kron službo, da bi to odražala.
Če želite ustvariti prijavo za opravilo cron v strežniku Linux in zagnati: crontab -e S tem se bo začelo urejanje vaše crontab. Moja datoteka crontab ima tako vrstico:
*/5 4-23 * * * /home/steve/timelapse/get.ubnt>/dev/null 2> & 1
*/5 pomeni tek vsakih 5 minut
4-23 pomeni, da ga izvajate od 4. do 23. ure (to se zame spreminja glede na sezono)
Prvi * pomeni, da ga izvajate vsak dan v mesecu
Drugi * pomeni, da ga izvajate vsak mesec v letu
Tretji * pomeni, da ga izvajate vsak dan v tednu
/home/steve/timelapse/get.ubnt je ime skripta, ki se izvaja
/dev/null 2> & 1 pomeni, da nastavite standardni izhod na nič in vse napake na nič - če tega nimate, boste ob vsakem izvajanju opravila cron prejeli e -pošto.
Moj skript /usr/steve/timelapse/get.ubnt izgleda tako:
#!/bin/bash
cd/home/steve/timelapse
URL = "https://192.168.2.114/snap.jpg"
zdaj = $ (/bin/date '+%Y%m%d%H%M%S')
/usr/bin/wget -q -O ubnt-j.webp
pretvori -geometrija 1024x ubnt-j.webp" />
Kaj počne ta skript:
spremeni v/home/steve/timelapse
spremenljiv URL nastavite na mesto, kjer je slika v omrežju/kameri
spremenljivko nastavite na leto, mesec, dan, uro, minuto, sekundo (tako da lahko končno sliko-j.webp
vzemite sliko iz URL -ja in jo zapišite v ubnt.jpg
spremenite velikost slike na 1024 slikovnih pik, pri tem pa ohranite pravilno razmerje in datoteko zapišite kot datum/čas.
Tako kot pri prejšnji metodi/skriptu bo ime datotek zaporedno in nam omogočilo ustvarjanje videa z okvirji v pravilnem zaporedju. Ko imam nekaj dni vrednih slik, jih bom kopiral v mapo na računalniku z operacijskim sistemom Windows, da ustvarim video datoteko. Običajno uporabljam ftp za prenašanje datotek v računalnik z operacijskim sistemom Windows, saj so v istem omrežju, prijava/geslo pa je čisto besedilo, ki ni vidno na internetu.
4. korak: Kopirajte slike v računalnik z operacijskim sistemom Windows
Za kopiranje slik iz sistema Linux v računalnik z operacijskim sistemom Windows za obdelavo v video uporabljam FTP.
Program Windows, ki ga uporabljam za to, je FileZilla Client. Uporabite lahko katerega koli odjemalca ftp, ki ga želite, tudi različico ukazne vrstice v sistemu Windows.
Če veste, kaj počnete, lahko uporabite tudi Sambo ali NFS in datoteke Linux se prikažejo kot mapa v sistemu Windows.
5. korak: Ustvarjanje videoposnetka - Photolapse 3
Zdaj, ko imamo slike, jih moramo združiti in ustvariti video datoteko.
Za to lahko uporabite veliko programov in morda boste želeli eksperimentirati z različnimi programi.
Vendar za relativno majhno število slik, kot jih posnamem v enem ali dveh dneh ledu, uporabljam program Windows Photolapse 3 - ki se žal ne posodablja več in ne najdem več izvirnega spletnega mesta zanj. Vendar je na voljo na številnih spletnih mestih za prenos. Hitro iskanje v Googlu bi moralo biti v redu.
Kar je/je bilo pri tem programu lepo, je, da je en sam binarni dokument, zato ni namestitve. Prenesite binarno datoteko in jo zaženite. Slaba stran je, da ne bo obdelal velikega števila datotek. Z ogromno mislim verjetno 20 tisoč ali več, toda za nekaj, kot je moj video z ledom s približno 5000 slikami, je v redu.
Zaženete program, v zgornjem levem kotu poiščete ali poiščete, kje so shranjene vaše slike, nato vnesete število kadrov na sekundo (zaradi manjšega števila bo videoposnetek videti kot počasen posnetek). Nato kliknite gumb "Naloži datoteke iz trenutne mape"
Photolapse bo naložil in predogledal vsak okvir, dobili pa boste predstavo o tem, kako bo videti video.
Ko konča obdelavo celotne mape, kliknite gumb "Ustvari film", če želite spremeniti ime datoteke, nato kliknite "Shrani".
Nato morate izbrati način stiskanja videoposnetka ali ga pustiti brez stiskanja. Uporabljam "Microsoft Video 1". Vse kar ostane je, da kliknete »V redu«
Čeprav boste morali znova izvesti vse korake, da izberete drugo metodo stiskanja ali kodek, je vredno poskusiti različne nastavitve, če potrebujete stisnjen video.
Slike, ki sem jih uporabil za posnetek zaslona v tem koraku, so bile nekatere od prvotnih slik z ledu. Uporabil sem 1191 slik 1024x576 slikovnih pik. Zasegli so približno 110 MB prostora na disku. Stisnjeni video je bil velik 235 MB, nestisnjeni pa 1,96 GB
6. korak: Ustvarjanje videa - VirtualDub
Drugi program, ki sem ga uporabil, je VirtualDub
Zip datoteke prenesite tukaj. Obstaja 32-bitna in 64-bitna različica
Razpakirajte datoteke v njihovo mapo.
Ena od stvari, ki jih boste morali narediti s svojimi slikami, je, da jih zaporedno oštevilčite. Uporaba imen datotek z datumom/časom, kot so moje skripte, ne deluje z VirtualDub. Datoteke lahko preštevilčite na nekaj načinov:
Najprej naredite varnostno kopijo datotek, nato še drugo. Nato uporabite drugo kopijo:
Odprite mapo s slikami, spremenite pogled na "podrobnosti", označite prvo datoteko na seznamu, pritisnite ctrl-a, da izberete vse datoteke, z desno tipko miške kliknite in izberite "preimenuj". Spremenite ime datoteke v 1 in pritisnite enter.
To bo obdelalo seznam datotek in dodalo (1).jpg, nato (2)-j.webp
Drugi način je uporaba programa, imenovanega Irfanview. Ima paketni način, kjer lahko datoteke zaporedno preimenujete v 1.jpg, 2.jpg, 3-j.webp
Ko so datoteke preimenovane, zaženite VirtualDub, kliknite »datoteka« in nato »odpri video datoteko«. Izberite prvi-j.webp
Kliknite »Video«, nato »Hitrost sličic«, spremenite to na 30 (ali katero koli sličico, ki jo želite poskusiti)
Kliknite »Video« in nato »Stiskanje« - kot pri fotolapsu 3 sem uporabil »Microsoft video 1«
Za začetek obdelave slik kliknite »Datoteka« in nato »Shrani kot AVI«. Poimenujte datoteko in kliknite »Shrani«
To bo začelo obdelavo in pokazalo, kako dolgo bo trajalo.
Čeprav je pri uporabi VirtualDub več korakov, bo obdelal več datotek kot photolapse 3.
S programom VirtualDub sem naredil časovni zamik z več kot 88.000 slikami.
7. korak: Zaključek
Če si želite ogledati videoposnetke s časovnim zamikom, lahko uporabite program, kot je VLC ali Windows Media Player.
Obstaja veliko, veliko načinov zajemanja slik in zamika časa.
Če imate fotoaparat Canon, je za nekatere modele vdelana programska oprema tretje osebe CHDK, ki vam omogoča uporabo kamere v načinu intervalometer in fotografiranje vsakih x sekund.
Veliko eksperimentirajte! Upam, da vam je bil ta Instructable zanimiv in če naredite časovni zamik, v komentarjih pustite povezavo do njega.
Priporočena:
Preprosta kamera s časovnim zamikom z uporabo Raspberry Pi: 3 koraki
Enostavna kamera s časovnim zamikom z uporabo Raspberry Pi: Ta objava vam bo pokazala, kako lahko z Raspberry Pi zgradite preprosto kamero s časovnim zamikom. Ločljivost, trajanje in čas je mogoče enostavno posodobiti v skriptu. Nekaj podobnega smo ustvarili s ploščo ESP32-CAM, vendar kamero Raspberry Pi
Ustvarite videoposnetke s časovnim zamikom z uporabo Raspberry Pi (11 vrstic kode): 12 korakov (s slikami)
Ustvarite posnetke s časovnim zamikom z uporabo Raspberry Pi (11 vrstic kode): Pred kratkim sem prvič posadil nekaj semen v svoj namizni lonec. Bil sem zelo navdušen, ko sem jih opazoval, kako rastejo, a kot vsi vemo, je to počasen proces. Ker nisem mogel videti rasti, sem bil res razočaran, a nenadoma me je hobist elektronike v meni zbudil
Knex Intervalometer s časovnim zamikom: 7 korakov (s slikami)
Knex Intervalometer za časovni zamik: Posodobljeno, 21. julija Naložil sem veliko boljši videoposnetek končnega časovnega zamika. Prikazuje polno luno, ki raste skozi oblake. Posneto z intervalom 10 sekund. Moral sem spremeniti velikost videoposnetka, da je velikost datoteke obvladljiva. Ste že kdaj videli
Enostavna kamera za posnetke s časovnim zamikom .: 22 korakov (s slikami)
Camera Easy for Time Lapse Pictures Made Easy .: Preverjal sem enega od drugih navodil o snemanju filmov s časovnim zamikom. Filmski del je precej dobro pokril. Povedal je o brezplačni programski opremi, ki jo lahko prenesete za snemanje filmov. Rekel sem si, mislim, da bom videl, če bom zmogel
Snemljiv avtomobilski nosilec za kamero s časovnim zamikom .: 5 korakov
Snemljiv avtomobilski nosilec za časovno zamik kamere: https://www.instructables.com/id/Camera_for_time_lapse_pictures_made_easy/ Tukaj je film, ki sem ga posnel s kamero s časovnim zamikom, ki je prikazan na zgornji povezavi. Https://www.youtube.com /watch? v = AWh46mqROkQTa navodilo je bolj ali manj nadaljevanje mojega