Recentemente abbiamo parlato nel dettaglio del metodo di Hyperlapse realizzato da Microsoft Research. Ieri Instagram ha annunciato il proprio approccio a tale problematica, sotto forma di un applicazione funzionante e, purtroppo, disponibile unicamente su iPhone.
Il risultato è ottimo se consideriamo che è ottenuto completamente su un cellulare, sicuramente è anche quanto di meglio sia possibile ottenere da un dispositivo portabile al giorno d’oggi. Sorge quindi spontanea la domanda: come fa a funzionare così bene e così velocemente?
Di primo acchito viene da pensare che surclassi completamente la lenta implementazione Microsoft, rendendola addirittura inutile, ma analizzando un po’ meglio i dati possiamo renderci facilmente conto che è destinata ad un target diverso.
L’approccio usato da Microsoft va ad analizzare tutti i fotogrammi molteplici volte, confrontandoli fra loro per capire come è strutturato lo spazio, ne ricrea un modello tridimensionale ed infine muove una camera virtuale al suo interno. Hyperlapse di Instagram ha saltato completamente tutte queste fasi, evitando qualsiasi confronto tra fotogrammi. Questa è stata una scelta obbligata visto che l’obiettivo prefissato è di farlo funzionare sui cellulari; i confronti tra fotogrammi alla ricerca di punti comuni sono generalmente operazioni molto onerose dal punto di vista computazionale e quindi inadatte a dispositivi dalla potenza limitata.
Vengono invece registrate le informazioni del giroscopio integrato nel cellulare insieme al video. Analizzando questi dati è quindi possibile sapere per ogni fotogramma in che modo è orientato il cellulare, ricavando anche una correlazione di posizione fra i fotogrammi. Il tremolio della mano, così come leggere rotazioni del polso, sono impossibili da evitare riprendendo un video a mano libera, ma se riusciamo a sapere il posizionamento esatto del cellulare nello spazio durante la ripresa tutto cambia.
I fotogrammi vengono quindi spostati in base a queste informazioni, ottenendo un video estremamente stabile.
Ovviamente spostando un fotogramma dalla posizione originale si ottiene uno spazio vuoto nello schermo: per evitare questo problema il video finale viene ingrandito rispetto alla sorgente acquisita realmente. Ciò avviene in maniera totalmente invisibile per l’utente, che si trova di fronte un’applicazione semplice e lineare da usare. Infine si crea un video con numero costante di fotogrammi che, a seconda della velocità che si vuole ottenere, ne salta alcuni.
Il limite del giroscopio però non è l’unico di questo metodo. La qualità video ottenibile è sicuramente ottima per uno smartphone, ma proprio a causa della sua natura presenta degli svantaggi:
- Se ci sono fotogrammi sfocati per un qualsiasi motivo (come un passo pesante o un urto improvviso) quei fotogrammi verranno comunque usati nel video finale. Se si riprende un video camminando è possibile avere tremolio in corrispondenza di ogni passo, come in alcune parti del video qui sotto. Ciò non succede con l’approccio Microsoft in quanto vengono riconosciuti e saltati i fotogrammi non a fuoco.
[il nostro video test con iPhone 4]
- Non avendo cognizione dello spazio, non è possibile creare un video dove la telecamera avanzi a velocità costante: riprendendo, ad esempio da una macchina, l’avanzamento nello spazio sarà direttamente collegato alla velocità della macchina. L’approccio Microsoft non soffre di questo problema in quanto ricostruisce interamente lo spazio tridimensionale, quindi è stato possibile rendere la velocità di esplorazione costante.
- In caso di movimenti troppo tremolanti (che quindi escono dall’area già ingrandita del video), la telecamera dovrà per forza di cose girarsi, riducendo l’effetto fluido tipico dell’hyperlapse. Microsoft invece riesce a ridurre ulteriormente questo problema andando a riempire gli spazio vuoti con aree prese da fotogrammi successivi e precedenti.
Qui di seguito una tabella riassuntiva per confrontare i metodi di Hyperlapse di Instagram e Microsoft:
Microsoft | ||
Può funzionare da cellulare | NO | SÌ |
Usabile su video senza informazioni sul giroscopio | SÌ | NO |
Qualità del risultato | OTTIMA | BUONA |
Se avete quindi intenzione di creare un video in Hyperlapse partendo dal video registrato con una qualsiasi camera sprovvista di giroscopio (come una Reflex o una GoPro), allora il metodo usato da Instagram non è applicabile. Lo stesso vale per i video ripresi da cellulare senza usare l’app apposita – durante le normali riprese video di qualsiasi smartphone non vengono salvate le informazioni del giroscopio ed è quindi impossibile applicare il metodo usato da Instagram.
Entrambi i metodi sono quindi validi, anche se applicabili a contesti diversi. Visto che l’app è stata realizzata da Instagram, non è da escludersi che in un futuro venga rilasciata anche per Windows Phone, ovviamente vi terremo aggiornati se questo dovesse accadere.
Articolo di Windows Blog Italia
Fonte | Instagram
Download | Hyperlapse from Instagram (solo per iOS)