Oglas

Opazujte, kako se oblaki premikajo ali sadika raste. Časovna časovna fotografija vam lahko resnično daje občutek, kako svet deluje na makroskopskem nivoju, in sicer zunaj vsega, kar je mogoče za normalno človeško izkušnjo časa. Ali z drugimi besedami: gledanje suhe barve se lahko spremeni v nekaj precej zanimivega. Na žalost je profesionalna oprema za časovni potek - ob dodajanju možnosti vrtenja ali premikanja fotoaparata - podobno kot Genie lahko stane do 1000 dolarjev. Danes bomo izdelali osnovni krmilnik za časovni zamik brez premikanja - za DSLR ali USB spletno kamero - s samo Raspberry Pi.

Bodite prepričani, da preverite vse naše druge super Raspberry Pi projekti tudi.

DSLR

Kot ponavadi bomo vse naše delo s Pi opravili v ukazni vrstici SSH in datoteke bomo lahko zgradili s pomočjo SFTP z enakimi poverilnicami, če ste jih shranili na Pi namesto na kamero. Če niste prepričani, kakšen je IP naslov vašega Pi, se prijavite na usmerjevalnik in si oglejte seznam trenutno priključenih naprav - o tem bi moral biti sam.

instagram viewer
povezane naprave

Začnite z namestitvijo neke ključne programske opreme:

sudo apt-get install gphoto2. sudo apt-get install imagemagick. 

GPhoto2 je pripomoček ukazne vrstice za neposreden vmesnik s podprtimi DSLR kamerami (celotni seznam si oglejte tukaj). Uporabil sem Canon Rebel T4i / 650D Canon Rebel T4i dSLR pregled in oddajaCanon je pravkar izdal svoj novi Rebel T4i - svoje prve (upajmo veliko) dogodivščin v svet dSLR zaslona na dotik. Ta kamera je korak od Canon Rebel T3i (s tem je postala tretja ... Preberi več . Zdaj priključite fotoaparat na Pi prek USB.

Ker sem uporabil samodejne vrednosti ISO in način AV, je nastavitev sorazmerno preprosta, serijo pa lahko posnamemo samo z ukazno vrstico - pripomoček vključuje vgrajene parametre časovnega zamika. Tu je najosnovnejši ukaz, ki ga lahko uporabite za preizkus zmogljivosti:

gphoto2 - zajemanje slike in prenosa

ki bo datoteko prenesel v vaš Pi, ali

gphoto2 --zajemanje-slika

da obdrži sliko na fotoaparatu. Pri 8 MB pop-u je morda najbolje, da jih obdržite na fotoaparatu in filme snemate po PC-ju ali Macu.

Pomembno: Slike so privzeto shranjene v SD-RAM, ne na pomnilniško kartico v fotoaparatu. Pomeni, da jih boste izgubili vsi (govorim iz izkušenj). Da bi zagotovili, da dejansko prihranijo, moramo najprej določiti cilj zajema:

gphoto2 --get-config / main / settings / capturetarget. 

Oglejte si seznam, ki ga oddaja, in cilj določite na naslednji način in nadomestite 1 s tem, kar je prikazano kot vaša kartica.

gphoto2 --set-config / main / settings / capturetarget = 1. 

Če želite zajeti v časovnem poteku, dodajte -F in -JAZ določiti skupno število okvirji želite zajeti in čas interval med vsakim. V tem primeru zajemite vsakih 30 sekund za skupno 1440 kadrov, kar bo, če je posnet v film s 24 FPS, enako približno minuti. Ne verjamem, da bo baterija mojega fotoaparata tako dolgo zdržala, ampak videla bom, koliko dobim.

gphoto2 --capture-slika -F 1440 -I 30. 

Ena poteza, ki jo je treba upoštevati; ko se ukaz konča, se lahko kamera izklopi in se odzove - morali boste ročno preklopiti stikalo za vklop (vsaj na mojem modelu je to storilo). Pri uporabi to ne bi smelo biti težava na terenu, za namene testiranja pa postane precej moteča. Če poznate popravek za to, mi sporočite v komentarjih, prosim!

gphoto2 deluje

Snemanje filma

Prenesite datoteke v namizni računalnik za obdelavo. V Macu sem ugotovila, da je najlažje uporabljati ukazno vrstico, vendar boste to potrebovali XCode, Domači jezik, in MPlayer nameščen prvi. To storite tako, da najprej prenesete Xcode iz App Store (je brezplačen) in nato iz Nastavitve -> Prenosi zavihek, omogoči Orodja ukazne vrstice.

xcode-install-CLT

Nato zaženite (eno za drugim):

rubin 
domači jezik

Zdaj bi morali imeti nameščene potrebne komponente za kodiranje. Zaženite naslednje ukaze, da najprej ustvarite seznam zajetih datotek .jpg, nato pa ta seznam vstavite v mencoder, pripomoček, ki se uporablja za ustvarjanje videov. Če želite, da film mine hitreje, spremenite vrednost FPS.

cd 
ls * .jpg> list.txt. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: vidik = 16/9: vbitrate = 8000000 -vf lestvica = 640: 480 -o timelapse.avi -mf type = jpeg: fps = 24 mf: //@list.txt. 

Na koncu sem uporabil 24 FPS iz 330 sličic vsako minuto od jutra do sredine popoldneva. Vreme je v Britaniji res tako slabo, od sončnega do pretežnega oblaka v 5-minutnih intervalih čez dan. Vzdih.

Če želite kodirati film v sistemu Windows ali če želite uporabiti GUI, ga prenesite Avidemuxin sledite spodnji video vadnici. Poskrbite, da bodo vaše fotografije oštevilčene zaporedno.

https://www.youtube.com/watch? v = GZmkfk-YrG4 # t = 73

Uporaba spletne kamere USB

Seveda nima vsak DSLR, ampak namesto da kupite drag uradni modul kamere za Raspberry Pi, lahko tudi fotografiranje s časovnim zamikom izvajate s pomočjo izklopljenega USB-ja spletna kamera - v mojem primeru je PS3 Eye, ki je običajno precej težav pri delu na PC-ju ali Macu, vendar deluje brez težav na Pi-ju. Morda boste morali uporabiti napajalnik USB in podpora za fotoaparat je skodran.

Najprej preverite, ali je vaša spletna kamera pravilno odkrita.

ls -l / dev / video *

Upajmo, da boste videli / dev / video0 prikazan tako:

dev-video0

Nato lahko nadaljujemo z namestitvijo programske opreme za zajem spletnih kamer in naredimo testni posnetek.

sudo apt-get install fswebcam. 
fswebcam -d / dev / video0 -r 640x480 test.jpeg. 

Zbrišite datoteko z:

rm test.jpg. 

Vzemite nekaj testnih posnetkov, da boste lahko pravilno postavili kamero, nato pa bomo nadaljevali s skriptom časovnega preskoka.

mkdir timelapse. nano runtimelapse. 

Prilepite naslednje:

#! / bin / bash. # Krmilnik timelapse za spletno kamero USB DIR = / home / pi / timelapse x = 1. medtem [$ x -le 1440]; ime datoteke = $ (datum -u + "% d% m% Y_% H% M-% S"). jpg fswebcam -d / dev / video0 -r 640x480 $ DIR / $ ime datoteke x = $ (($ x + 1)) spanje 10; Končano; 

Za namene testiranja sem določil čas čakanja med posnetki na 10 sekund. Ko dejansko začnete zajemati, boste morda želeli to spremeniti v vsako minuto. Spremenite naslednjo vrstico, da določite, koliko slik bo zajetih, v primeru, da je nastavljen kot 1440:

medtem [$ x -le 1440]; stori. 

Če želite narediti skript izvedljiv, uporabite:

chmod 755 runtimelapse. 

Nato ga zaženite z uporabo:

./runtimelapse. 
usb-working

Snemanje filma

Še vedno pa bomo v ukazni vrstici SSH posneli film neposredno na Pi - če ste posneli na tisoče posnetkov in je vaša spletna kamera višja ločljivost, morda se vam zdi to zelo počasno, v tem primeru se pomaknite do navodil za film za DSLR in prenesite datoteke v računalnik z uporabo SFTP.

usb-sftp
cd timelapse. ls * .jpg> list.txt. sudo apt-get namestite mencoder. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: vidik = 16/9: vbitrate = 8000000 -vf lestvica = 640: 480 -o timelapse.avi -mf type = jpeg: fps = 24 mf: //@list.txt. 

Če se vse zdi dobro, vendar dobite izhod datoteke 0 KB, pomeni, da v temp mapi naprav ni dovolj prostora. To sem rešil s čisto namestitvijo in znova razširil koreninski sistem - zdi se, da je BTSync zmešal nekaj datotek temp.

Tu je končan prizor iz spletne kamere USB, od poznega popoldneva do mraka.

To je bilo veliko lažje, kot sem mislil, da bo - in ne bi me presenetilo, če bi v komentarjih kdo našel še enostavnejšo metodo! Oglejte si fascinanten pogled na življenje, ki ga sicer težko razumemo, in delite povezavo do svojih stvaritev v komentarjih ali drugih videoposnetkih, ki se vam zdijo posebej navdihujoči.

James ima doktorat iz področja umetne inteligence in ima certifikat CompTIA A + in Network +. Je vodilni razvijalec MakeUseOf in svoj prosti čas preživlja z igranjem VR paintball in družabnih iger. Z računalniki gradi že od malih nog.