tesi di laurea utilizzo di laser scanner a tempo di volo ... · sebbene il rilievo strumentale non...
TRANSCRIPT
UNIVERSITÀ DEGLI STUDI DI PISA
Scuola di Ingegneria
Corso di laurea triennale in Ingegneria Civile ed Ambientale
TESI DI LAUREA
UTILIZZO DI LASER SCANNER A TEMPO
DI VOLO PER IL RILIEVO DA VICINO DI OGGETTI
A GRANDE SCALA
RELATORI:
Ing. Andrea Piemonte
Ing. Gabriella Caroti
CANDIDATO:
Yari Pieracci
Anno Accademico 2012/2013
Introduzione
La tesi ha in oggetto la realizzazione di un modello tridimensionale di un
oggetto rilevato con il laser scanner Leica Scan Station P20 (TOF). L’oggetto
è il modello ricostruito in scala ingrandita del batterio “Euplotes”.
Preparazione dell’oggetto
Per un corretto rilievo è necessario considerare:
Le caratteristiche geometriche dell’oggetto
Lo scanner
L’ambiente
Il progetto delle stazioni
Caratteristiche dell’oggetto
La Geometria:
Non è regolare
Diviso in 2 parti diverse; corpo e protuberanze
Distanziometrico a impulsi con Digitalizzazione di forma d’onda (WFD)
Fotocamera digitale integrata ad alta risoluzione;
Laser classe 2;
Distanza massima d’acquisizione: 120 m ;
Accuratezza: 3 mm at 50 m; 6 mm a 100 m ;
Errore di linearità: ≤ 1 mm;
Lo Scanner Leica Scan Station P20:
Caratteristiche dell’oggetto
L’ Ambiente:
Stanza chiusa
Poca libertà di posizionamento delle stazioni
Distanza ravvicinata tra oggetto e strumento
19 stazioni intorno all’oggetto
16 target per il sistema di riferimento
Il Progetto delle stazioni:
Analisi dei dati rilevati
Informazioni metriche
Riflettività superfici
Informazioni cromatiche
Acquisizione
Filtratura
Georeferenziazione
Allineamento
Modellizzazione
Texture
Trattamento
Modello 3D
Prodotto finale
MehLab
Leica
Cyclone 8.0
Leica
ScanStation P20
Leica Cyclone 8.0
Filtri in entrata in fase di importazione:
Riducono la densità della nuvola di punti;
Rilevano i target automaticamente;
Stimano le normali;
Rimuovono i punti con bassa intensità di
raggio di ritorno;
Rimuovono i punti distorti provenienti da
superfici estremamente riflettenti;
Riduce il rumore filtrando parte degli effetti
scia.
Composizione e georeferenziazione:
Leica Cyclone 8.0
Rimozione dell’ambiente circostante
dalle 19 scansioni dell’oggetto;
Registrazione: le scansioni sono state
georeferenziate facendo riferimento ai
targets rilevati in automatico.
causati dal raggio laser radente ai contorni;
dalla vicinanza dell’oggetto alla stazione;
dalla complessità delle forme;
dalle caratteristiche del laser scanner.
Sono state ottenute scie “importanti” che hanno reso complicata
l’operazione di meshing.
Leica Cyclone 8.0
Problema dei Disturbi presenti nelle zone di bordo:
Suddiviso l’oggetto in 19 layers: ha permesso di lavorare separatamente
su ogni scansione. Ne sono stati scartati 7 perché presentavano punti
ridondanti con altre stazioni.
Filtro in base all’intensità del raggio di ritorno: andando ad eliminare i
punti con una intensità inferiore ad un certo valore. Alcuni sono stati
eliminati poiché contenevano troppo rumore.
Leica Cyclone 8.0
Operazioni effettuate:
Livello % di Intensità filtrata Livello % di Intensità filtrata
Livello 01 45 Livello 07 Da eliminare
Livello 02 Da eliminare Livello 08 99
Livello 03 90 Livello 09 30
Livello 04 25 Livello 10 88
Livello 05 40 Livello 11 80
Livello 06 50 Livello 12 45
Formato PTS
7 colonne se si hanno i valori RGB ( x , y , z , intensità , rosso, verde , blu)
Intensità tra -2047 e +2048
Scansioni riferite al sistema globale
Formato PTX
4 colonne ( x, y, z , intensità )
7 colonne se si hanno i valori RGB ( x , y , z , intensità , rosso, verde , blu)
Contiene le informazione relativa alle rette normali
Intensità tra 0 e 255
Attribuisce una matrice di roto-traslazione ad ogni nuvola
Leica Cyclone 8.0
Esportazione:
MeshLab
MeshLab, sviluppato nel 2005 al Visual Computing Lab dall’ISTI del
Centro Nazionale di Ricerca (CNR).
E’ un software open source dedicato al processamento e alla modifica di
mesh tridimensionali. Il sistema elabora le nuvole di punti ottenute da
scansioni 3D in cui si ha la creazione di un numero rilevante di punti.
Il programma fornisce una serie di tools appositamente progettati per la
modifica, pulizia, analisi della qualità, rendering dei punti della scansione.
Si basa sull’utilizzo di librerie VCG, librerie basate sul linguaggio C++
progettate per la manipolazione delle mesh triangolari e tetraedriche.
Vantaggi
Software Open Source
Ambiente di lavoro intuitivo
Gestisce i layers
Filtri in base a molti algoritmi
Possibilità di sviluppo di plug-in aggiuntivi con librerie VCG
Strumenti molto potenti con basso utilizzo di memoria
Svantaggi
Procedure interne da seguire
Crash del sistema frequenti
Non esiste un manuale completo del programma
MeshLab
Salvataggio
Il salvataggio del progetto avviene mediante la creazione di:
un file in formato .mlp o .aln
tanti file .ply o .ptx relativi ad ogni livello presente.
MeshLab
Per un corretto salvataggio di
ogni livello è necessario spuntare
l’opzione “Save All Files” in
basso a destra prima di dare
“Save”, altrimenti i singoli livelli
non verranno salvati.
Importazione
Principali formati: PLY, PTX, PTS
Altri formati: STL, OFF, OBJ, 3DS, COLLADA, V3D, APTS, XYZ, GTS,
TRI, ASC, X3D, X3DV, VRML, ALN
MeshLab
Formato PLY contiene:
N. vertici
Componenti della matrice di roto-traslazione
Coordinate dei punti
Colore RGB, canale Alpha, Qualità
Importazione PTS
MeshLab
Formato esportato da Cyclone;
Viene restituito il messaggio di errore;
Importa solamente parte della nuvola di punti originale.
Conclusione: Importazione dal PTS non corretta
Importazione PTX
MeshLab
Formato esportato da Cyclone;
Creazione “automatica” della mesh in base ai parametri in figura;
Al salvataggio non memorizza le modifiche fatte sulla mesh
(non aggiorna il file ptx);
Conclusione: Importazione corretta dal
PTX ma non è possibile modificare la mesh
e salvare i cambiamenti.
Importazione PLY
MeshLab
Non è esportato da Cyclone, ma da RapidForm
E’ il formato di lavoro del programma
Conclusione: In questo modo non si hanno problemi in fase di salvataggio
e in importazione.
Procedura conversione da PTX a PLY:
Si esporta da Cyclone in .PTX e si importa in MeshLab, ottenendo una
mesh;
Si esporta ogni layer in PLY con il comando File, Export Mesh as…;
Si crea un nuovo progetto e vi si importano i livelli in PLY creati;
Si ottengono le nuvole dei punti e le mesh.
Creazione Mesh:
MeshLab
“Automatica” da file PTX (in funzione di
parametri di importazione)
Surface Reconstruction: Poisson
Surface Reconstruction: Ball Pivoting
Surface Reconstruction: VCG
Osservazione: Sulla nuvola di punti con molto
rumore l’unica utilizzabile è la BPA
(Ball Pivoting Algorithm).
La ricostruzione di Poisson e VCG non danno risultati accettabili
MeshLab
Surface Reconstruction: Poisson Surface Reconstruction: VCG
Pulizia del modello dal rumore e da errori topologici:
MeshLab
Select Faces with edges longer than… :
impostato valore di 0.004 m
Remove isolated pieces: rimozione di
triangolazioni inferiori a 200 facce.
Remove duplicate faces
Remove duplicate vertex
Remove zero area faces
Remove unreferenced vertex
Select Non Manifold Edge ed eliminazione
Dopo la pulizia si ottiene il seguente modello:
MeshLab
Conclusioni : Si ottiene una sostanziale rimozione degli effetti di bordo.
Problemi:
Perdita di parte del corpo dalla filtratura
Punti non battuti dal laser scanner perché
in secondo piano
MeshLab
Sono stati importati e filtrati 2 nuovi layer contenenti i punti eliminati
Applicando nuovamente le ricostruzioni di Poisson e VCG si ottengono:
MeshLab
Surface Reconstruction: Poisson Surface Reconstruction: VCG
Conclusioni : Da un modello pulito si ottengono mesh più precise.
Rimozione delle lacune
MeshLab
Crea superfici che uniscono la mesh
Possibilità di scelta della modalità:
• Planare: se le superfici hanno curvatura costante;
• Spigoloso: se le superfici si intersecano (bridging);
Comandi:
• Close Holes: genera un certo numero di triangolazioni;
• Fill Hole: genera una superficie in base alle modalità descritte
(planare o spigolosa).
Conclusione: Sebbene i tools siano potenti la creazione della mesh non
riproduce l’esatta forma del modello in oggetto.
Inoltre il comando Fill Hole subisce continui crash del sistema.
Operazioni conclusive:
MeshLab
Levigatura delle superfici
• Laplacian Smooth: definendo il numero di iterazioni di lisciatura da
eseguire sul modello.
Decimazione dei punti
• Quadratic Edge Collapse: determina il numero di punti con cui
definire il modello finale e le modalità di ripartizione.
(Peso maggiore ai punti di bordo, minimizza lo scarto quadratico medio, …)
Esportazione
• PLY, STL, OFF, OBJ, 3DS, COLLADA, VRML, DXF, GTS, U3D,
IDTF, X3D compatibili anche per stampanti tridimensionali.
Quindi, il risultato ottenuto non soddisfa i requisiti richiesti al fine di una
stampa tridimensionale. Tuttavia, se fosse possibile ripetere la scansione
utilizzando un laser scanner triangolatore e un ambiente opportuno,
potremmo ottenere una superficie più liscia e regolare, e lo strumento di
riempimento delle lacune fornirebbe un risultato idoneo allo scopo.
Conclusioni
Conferma della potenzialità del software MeshLab per le
operazioni di reverse modeling;
Sebbene il rilievo strumentale non sia stato appropriato all’oggetto
scansionato e allo spazio a disposizione, è stata ottenuta una mesh
priva di rumore;
La grande quantità di lacune al momento rendono la mesh
incompleta ed inutilizzabile per la stampa 3D.
Yari Pieracci
Grazie per
l’attenzione