Taula de continguts:

Com fer un vídeo amb lapse de temps: 7 passos
Com fer un vídeo amb lapse de temps: 7 passos

Vídeo: Com fer un vídeo amb lapse de temps: 7 passos

Vídeo: Com fer un vídeo amb lapse de temps: 7 passos
Vídeo: Котенка просто оставили на обочине. Котенок по имени Роки 2024, De novembre
Anonim
Image
Image

En aquest instructiu detallaré els passos que faig per fer un vídeo de lapse de temps. El sistema i el maquinari que faig servir per obtenir les imatges són un ordinador Linux i una càmera IP basada en xarxa. Un script s’executa a l’ordinador Linux i cada x segons enquesta la càmera IP, agafa una imatge, la redimensiona, l’hora i la data la marca i la desa al disc dur de l’ordinador. Per crear el vídeo a partir de les imatges, cobriré dues aplicacions gratuïtes diferents en un PC amb Windows i examinaré l’ús de Linux com a opció.

Quan obtingueu imatges, heu d’esbrinar el temps entre cada imatge o quantes imatges per hora o dia necessitareu per crear un vídeo que tingui un bon aspecte i que no sigui massa llarg ni curt.

En el cas del meu vídeo Ice Off. Vaig agafar una imatge cada 20 segons just abans de la sortida del sol el primer dia i vaig passar fins a la posta de sol el dia següent. He eliminat la majoria de les imatges nocturnes abans de processar-les al vídeo, però he decidit mantenir una "sortida de lluna"

Això em deixa al voltant de 4.430 imatges. Si produeixo el vídeo amb 25 fotogrames per segon, la durada serà:

4, 430/25 = 177,2 segons. 177,2 segons són gairebé 3 minuts.

Si volguéssiu capturar alguna cosa com si es construís una casa, cada 3 o 5 minuts seria un bon lloc per començar.

Segons la freqüència i el temps que necessito per capturar imatges, en faig servir una per a dos mètodes diferents.

Pas 1: imatges d'una càmera IP

Imatges d'una càmera IP
Imatges d'una càmera IP

La majoria de càmeres IP que s’utilitzen en videovigilància o en càmeres web de moviment complet us permeten veure una imatge-j.webp

"https:///snap.jpg"

Per a una càmera Planet:

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

Haureu de cercar a Google l’URL que utilitzeu per a la vostra marca de càmera.

Tant les imatges de Ubiquiti com de Planet que agafo tenen una mida de 1920x1080 (per defecte per a cada càmera, ja que són de 1080). Amb aquesta mida acabareu amb una gran quantitat de dades i un enorme fitxer de vídeo. M’agrada canviar la mida de la imatge mentre l’agafo i l’escric al disc i mostraré aquest pas al meu script. Faig servir convert, que forma part de les eines ImageMagick.

Pas 2: captura d'imatges: mètode 1

Captura d'imatges: mètode 1
Captura d'imatges: mètode 1
Captura d'imatges: mètode 1
Captura d'imatges: mètode 1

Faig servir aquest mètode per capturar esdeveniments més curts, com ara la sortida del gel. Podeu fer servir aquest mètode per capturar alguna cosa com una mudança i configuració d’un esdeveniment, cosa que dura unes quantes hores o 1 o 2 dies i on podeu eliminar manualment qualsevol imatge no desitjada com la nit abans de processar-la en un vídeo.

A Linux, un script per a la meva càmera Ubiquiti té aquest aspecte:

#! / bin / bash

# anar a la carpeta correcta

cd / home / steve / iceoff

# Ubiquiti: càmera ubnt

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

# on escriure imatges

ubnt_dir = / home / steve / iceoff / ubnt

# retard entre imatges

retard = 20

# el bucle

si bé és cert

# utilitzeu la data i l'hora per segellar el nom del fitxer; ha de ser a la secció del bucle

ara = $ (/ bin / date '+% Y% m% d% H% M% S')

# obteniu la imatge i escriviu-la com a ubnt.jpg

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

# canvieu la mida de la imatge ubnt-j.webp

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

# dormir durant el temps de retard i obtenir una altra imatge

/ bin / sleep "$ delay"

fet

Què fa el guió:

definiu un URL variable on es trobi la imatge a la xarxa / càmera

definiu la variable ubnt_dir a on volem desar imatges (haureu de crear el directori abans d'executar l'script)

Estableix el retard de la variable a quants segons entre imatges; això fa que sigui fàcil canviar el temps entre imatges, només has de canviar aquesta variable i tornar a executar l'script

comenceu un bucle amb mentre és true do - aquests bucles haurien d'anar fins que atureu l'script amb un ctrl-c

defineix la variable ara com a any, mes, dia, hora, segon

El 16 de febrer de 2019 als 8 minuts i 29 segons després de la 1 de la tarda semblaria el 20190216130829

utilitzeu wget per agafar una imatge de l'URL i escriure-la com a ubnt-j.webp

convertiu la imatge ubnt-j.webp

dormir durant el nombre de segons de la variable de retard

torneu enrere i comenceu a la vegada que feu el pas cert

Per executar aquest script, accedo al meu compte i ho executo des de la terminal, de manera que és bo per capturar alguna cosa com el iceoff d'un llac. Es fa en un o dos dies i necessito una imatge cada 20 segons.

Pas 3: Captura d'imatges: mètode 2

Captura d'imatges: mètode 2
Captura d'imatges: mètode 2

Durant períodes de temps més llargs, com la construcció d’un edifici o un projecte de lapse de temps d’un any, faig servir una forma diferent de capturar imatges. Per a això faig servir cron.

Cron és una utilitat que executa una ordre un cop cada x minuts, hores, dies o mesos. Així, podeu personalitzar quan l'ordre s'executa per minuts, hora, dia, dia del mes, etc. Un usuari d'un sistema Linux pot tenir el seu propi treball cron i es manté al fitxer crontab.

Per un lapse de temps que dura uns mesos, en què obtinc una imatge cada X minuts, faig servir un treball de cron i un script lleugerament diferent, ja que no requereix cap bucle (el que és cert), ja que cron cridarà l’escript cada X minuts minuts.

No només el podeu utilitzar per executar l’escriptura cada X minuts, sinó que podeu restringir-lo perquè s’executi entre determinades hores, de manera que no haureu d’eliminar moltes imatges nocturnes. A mesura que canvien les hores de temporada i de dia, canvio la meva feina de cron per reflectir-la.

Per crear un treball cron, inicieu la sessió al servidor Linux i executeu: crontab -e Això iniciarà una edició del vostre crontab. El meu fitxer crontab té una línia com aquesta:

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

El * / 5 significa executar-se cada 5 minuts

El 4-23 significa executar-lo de 4:00 a 23:00 (això canvia segons la temporada)

El primer * significa executar-lo tots els dies del mes

El segon * significa executar-lo tots els mesos de l'any

El tercer * significa executar-lo tots els dies de la setmana

/home/steve/timelapse/get.ubnt és el nom de l'script que s'executa

/ dev / null 2> & 1 significa posar la sortida estàndard a nul i qualsevol error a nul.

El meu script /usr/steve/timelapse/get.ubnt té aquest aspecte:

#! / bin / bash

cd / home / steve / timelapse

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

ara = $ (/ bin / date '+% Y% m% d% H% M% S')

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

convert -geometry 1024x ubnt-j.webp" />

Què fa aquest script:

canvieu a / home / steve / timelapse

definiu un URL variable on es trobi la imatge a la xarxa / càmera

defineix la variable ara a any, mes, dia, hora, minut, segon (per tant, podem marcar la data / hora més tard)

obteniu la imatge de l'URL i escriviu-la a ubnt.jpg

canvieu la mida de la imatge a 1024 píxels d'amplada mantenint la proporció correcta i escriviu el fitxer com a segell de data / hora.

Igual que amb el mètode / script anterior, farà que els noms dels fitxers siguin seqüencials i ens permeti crear el vídeo amb els fotogrames en la seqüència correcta. Després d’haver tingut imatges per valor d’uns dies, les copiaré a una carpeta del meu PC amb Windows per crear el fitxer de vídeo. Normalment faig servir ftp per obtenir els fitxers de l'ordinador de Windows, ja que es troben a la mateixa xarxa i el text clar de l'inici de sessió / contrasenya no és visible a Internet.

Pas 4: copieu les imatges en un PC amb Windows

Per copiar les imatges del sistema Linux a un PC de Windows per processar-les en un vídeo, faig servir FTP.

El programa de Windows que utilitzo per a això és FileZilla Client. Podeu utilitzar qualsevol client ftp que preferiu, fins i tot la versió de línia d'ordres a Windows.

Si sabeu què feu, també podeu utilitzar Samba o NFS i fer que els fitxers Linux apareguin com a carpeta al Windows.

Pas 5: creació del vídeo: Photolapse 3

Creació del vídeo: Photolapse 3
Creació del vídeo: Photolapse 3
Creació del vídeo: Photolapse 3
Creació del vídeo: Photolapse 3
Creació del vídeo: Photolapse 3
Creació del vídeo: Photolapse 3

Ara que tenim les imatges, hem de combinar-les per crear un fitxer de vídeo.

Hi ha molts programes que podeu utilitzar per fer-ho i és possible que vulgueu experimentar amb diferents programes.

Tanmateix, per a un nombre relativament reduït d’imatges com les que faig durant un o dos dies de gel, faig servir el programa de Windows Photolapse 3, que malauradament ja no s’actualitza i ja no hi puc trobar el lloc web original. Tanmateix, està disponible en diversos llocs de "descàrrega". Una cerca ràpida a Google hauria d’anar bé.

El que és / era bo d’aquest programa és que és un sol binari, de manera que no hi ha instal·lació. Només heu de descarregar el binari i executar-lo. L’inconvenient és que no processarà un gran nombre de fitxers. Vull dir probablement 20.000 o més, però per a alguna cosa així com el meu vídeo de gel amb aproximadament 5.000 imatges, està molt bé.

Comenceu el programa, a la part superior esquerra, aneu cap avall o trobareu on s'emmagatzemen les vostres imatges i, a continuació, introduïu el nombre de marcadors per segon (un nombre més petit farà que el vídeo aparegui com a càmera lenta). A continuació, feu clic al botó "Carrega fitxers de la carpeta actual"

Photolapse carregarà i previsualitzarà cada fotograma i tindràs una idea de com serà el vídeo.

Quan hagi acabat de processar tota la carpeta, feu clic al botó "Crea una pel·lícula", canvieu el nom del fitxer si voleu i feu clic a "Desa".

A continuació, heu de triar un mètode de compressió per al vídeo o deixar-lo sense comprimir. Faig servir el "Microsoft Video 1". Només queda fer clic a "D'acord"

Tot i que haureu de tornar a seguir tots els passos per triar un mètode de compressió o còdec diferent, val la pena provar diferents configuracions aquí si necessiteu comprimir el vídeo.

Les imatges que he fet servir per capturar la pantalla en aquest pas eren algunes de les imatges originals de gel. He utilitzat 1191 imatges de 1024x576 píxels. Van ocupar aproximadament 110 MB d’espai en disc. El vídeo comprimit tenia una mida de 235 MB i el no comprimit, de 1,96 GB

Pas 6: Creació del vídeo: VirtualDub

Creació del vídeo: VirtualDub
Creació del vídeo: VirtualDub
Creació del vídeo: VirtualDub
Creació del vídeo: VirtualDub
Creació del vídeo: VirtualDub
Creació del vídeo: VirtualDub

L’altre programa que he utilitzat és VirtualDub

Descarregueu els fitxers zip aquí. Hi ha una versió de 32 i 64 bits

Descomprimiu els fitxers a la seva pròpia carpeta.

Una de les coses que haureu de fer amb les vostres imatges és tornar a numerar-les de manera seqüencial. L’ús de noms de fitxers de segell de data / hora, com els meus scripts, no funcionarà amb VirtualDub. Hi ha un parell de maneres de renumerar els fitxers:

Primer, feu una còpia de seguretat dels vostres fitxers i després una altra. A continuació, utilitzeu la segona còpia:

Obriu la carpeta amb les imatges, canvieu la vista per "detalls", ressalteu el primer fitxer de la llista, premeu Ctrl-a per seleccionar tots els fitxers, feu clic amb el botó dret i seleccioneu "canvia el nom". Canvieu el nom del fitxer a 1 i premeu Retorn.

Es processarà la llista de fitxers i s'afegirà (1).jpg, després (2).jpg, etc, etc al nom del fitxer 1.jpg.

La segona forma és utilitzar un programa anomenat Irfanview. Té un mode per lots on podeu canviar el nom dels fitxers seqüencialment com 1.jpg, 2.jpg, 3.jpg, etc. El mode per lots també us permet redimensionar per lots les imatges a una mida més petita si cal.

Un cop canviat el nom dels fitxers, inicieu VirtualDub, feu clic a "fitxer" i després a "obre el fitxer de vídeo". Seleccioneu el primer-j.webp

Feu clic a "Vídeo" i, a continuació, a "Velocitat de fotogrames", canvieu-ho a 30 (o la velocitat de fotogrames que vulgueu provar)

Feu clic a "Vídeo" i, a continuació, a "Compressió"; igual que amb photolapse 3, he utilitzat "Microsoft video 1"

Per començar a processar les imatges, feu clic a "Fitxer" i després a "Desa com a AVI". Poseu un nom al fitxer i feu clic a "Desa"

Això iniciarà el processament i mostrarà el temps que trigarà.

Tot i que hi ha més passos per utilitzar VirtualDub, processarà més fitxers que el fotolapse 3.

He fet un lapse de temps amb més de 88.000 imatges mitjançant VirtualDub.

Pas 7: Conclusió

Per veure els vídeos de timelapse, podeu utilitzar un programa com VLC o el propi reproductor multimèdia de Windows.

Hi ha moltes i moltes maneres de capturar imatges i fer un lapse de temps.

Si teniu una càmera canon, hi ha un firmware CHDK de tercers per a alguns models que us permetrà utilitzar la càmera en mode intervalòmetre i fer una foto cada x segons.

Molts experiments! Espero que us hagi semblat interessant aquest instructiu i, si feu un lapse de temps, assegureu-vos de deixar-hi un enllaç als comentaris.

Recomanat: