Ricostruzione 3D con Kinect®

06 Feb 2014
Ricostruzione 3D di un ambiente attraverso l'utilizzo del sensore Kinect®
Voti totali: 2
Ricostruzione 3D di un ambiente attraverso l'utilizzo del sensore Kinect®
L’obiettivo del progetto è la costruzione di un modello tridimensionale di un ambiente, attraverso il dato acquisito dal sensore Microsoft Kinect®. L’algoritmo è stato realizzato attraverso le librerie Open source PCL (link).
Il risultato finale è la ricostruzione di una scena (tipicamente indoor) rappresentata come una nuvola di punti nello spazio 3D, colorati secondo l'immagine restituita dalla fotocamera. 
L'obiettivo finale, la completa ricostruzione della scena, è raggiunto allineando porzioni di scena ottenute da scansioni progressive (ogni scansione del sensore Kinect® acquisisce solo una piccola zona della scena reale).
I passaggi fondamentali per allineare scansioni successive sono i seguenti:
  • composizione di una nuvola di punti 3D attraverso l'acquisizione dell'immagine RGB e dell'immagine di profondità. L'acquisizione cattura solo una porzione di scena;
  • Filtraggio della nuvola di punti per rimuovere gli outlier dovuti a grossi errori di acquisizione;
  • Operazione di downsampling, per ridurre i punti su cui operare i calcoli successivi;
  • Operazione di smoothing, per ridurre l'errore nella misura del sensore;
  • Stima delle normali, per ogni punto;
  • Estrazione di alcuni keypoint che siano descrittivi attraverso un'implementazione 3D delle features SIFT;
  • Descrizione dei keypoint estratti;
  • Confronto tra keypoint di acquisizioni diverse, per poter determinare una matrice di roto-traslazione iniziale (grezza) tra la scansione in analisi e l'ultima scansione allineata;
  • L'ultimo passaggio consiste nel migliorare la precisione della matrice di roto-traslazione, comparando non più i keypoint ma le nuvole di punti appartenenti alle nuvole;
  • Tale matrice viene applicata per ottenere la nuvola della scena completa.

Il progetto si proponeva di replicare il Kinect Fusion® (link) e la sua versione Open source Kinfu (link).

References: 

[1] KinectFusion: Real-Time Dense Surface Mapping and Tracking, Richard A. Newcombe (et al.), IEEE ISMAR, 2011 http://dx.doi.org/10.1109/ISMAR.2011.6092378