mercoledì 25 febbraio 2015

CloudPoint da fotogrammetria

Mentre stavamo parlando dell'uso di Kinect per realizzare modelli 3D un amico mi ha parlato di fare la stessa cosa usando una comune macchina fotografica e la fotogrammetria. Di istinto ero un po' scettico ma ho comunque voluto dare un'occhiata a cosa trovavo su Internet

La mia attenzione e' stata catturata da VisualFSM un programma opensource che funziona su Windows, Mac e Linux (per gli ultimi si deve partire dai sorgenti mentre per Windows si puo' scaricare il compilato direttamente da qui o qui
Per semplicita' ho provato la versione Windows ATTENZIONE: per funzionare il programma ha bisogno delle librerie di CMVS che non sono comprese nel pacchetto (si devono scaricare i compilati da questo link  e porre i file cmvs.exe, genOption.exe e pmvs2.exe nel path di Windows ..io non per fare prima li ho messi direttamente in c:\windows\) ed i file ed i programmi devono essere messi all'interno di directory con nomi privi di caratteri speciali...C:\Documents and Settings\ non va bene)

Detto cio' ho fatto una decina di foto a questo edificio da diverse angolazioni


Le operazioni con VisualFSM sono molto semplici

1) Prima si importano le foto da File/Open Multi Image
2) Si effettua il confronto a coppie delle immagini con SfM/Pariwise Matching/Compute Missing Matching
3) SfM/Reconstruct Sparse
4) SfM/Reconstruct Dense (viene chiesto dove salvare un file .nvm



come si osserva non si fornisce nessuna informazioni geometrica
Dopo un po' di calcoli e se le immagini sono sufficienti per la ricostruzione viene creati una serie di file che saranno poi gestiti mediante Meshlab (per riferimento si vada a questo link)3

Questa e' la ricostruzione. La nuvola dei punti non e' molto densa ma per essere il primo tentativo non e' male (si veda per confronto la prima foto)


Ruotando l'immagine si osserva che l'angolo dell'edificio e' stato ricostruito in modo corretto con un angolo molto prossimo ai 90°



Un aspetto interessante e' che questo approccio puo' essere utilizzato anche con immagini riprese da droni

Nessun commento:

Posta un commento

Dockerizza Flask

Un esempio semplice per inserire in un container Docker una applicazione Flask Partiamo da una semplice applicazione che ha un file app.py ...