sabato 29 marzo 2014

Creazione automatica di modelli CAD 3D

Uno dei campi che ha preso piede negli ultimi anni nella progettazione è la rilevazione laser di ville e monumenti storici. La tecnica viene definita Image Based Data Processing (IBDP).
Tuttavia l'uso di laser soffre di difficoltà legate alle operazioni di rilevamento ed al peso dei file CAD prodotti laddove non vi siano appositi algoritmi capaci di semplificare le forme rilevate.
E' bene notare come tutto ciò sia contrario alla computer grafica che per anni ha migliorato la resa qualitativa dinamica del render grafico grazie a semplificazioni computazionali o nel caso dei tessellation shader, grazie a funzioni di forma.
In tal ottica alcune aziende stanno studiando dei prodotti professionali con una precisione accettabile, alla portata di un più vasto pubblico di  modellatori.
L'intento è quello di ottenere la migliore qualità con la semplicità di appositi algoritmi di riconoscimento che in tempo reale riescano a descrivere le volumetrie scansionate.
Tuttavia in tal senso va rilevato come ci siano già dei software che eseguono la definizione volumetrica di un solido complesso con due semplici foto scattate da diverse prospettive.
In questo caso la ricostruzione volumetrica del modello avviene forse per mezzo di un complesso algoritmo che sfrutta tecniche stereometriche (fotogramma stereometrico).

In aggiunta in questo modo è possibile ottenere anche le "mappe" di supporto per una rappresentazione grafica avanzata (: normal, displacement, specular, ambient occlusion, diffuse, bump)
Il pregio maggiore risulta la velocità di azione, senza la necessità di dover eseguire costose operazioni di rilevamento.

Ciononostante esistono anche dei difetti nell'uso di questa tecnica,
La mesh prodotta risulta anche in questo caso di notevole peso (file obj da 580 MB) per l'inserimento di una serie di particolari minuti che l'appesantiscono.
Nell'immagine che segue si può vedere come un lato del volto sia molto particolareggiato e scabroso sulla superficie in parte anche a causa dei graffi dorati presenti sulla guancia, mentre la parte di sinistra appaia più liscia e con una meshatura a triangoli maggiore, avendo eseguito un'operazione di smooth con un software di sculpting.
Inoltre in funzione dei punti di scatto delle immagini, il modello presenta delle deformazioni volumetriche che possono alterare planarità o volumetrie.
Anche in questo caso con un buon programma di sculpting è possibile eseguire operazioni di trasformazione, spostamento e rotazione per correggere eventuali errori, ma a discapito del tempo necessario per intervenire.
Quindi la precisione di questa tecnica non è eccelsa, tuttavia applicando una texture con l'immagine frontale, luci ed ombre rafforzano la volumetria nascondendo eventuali difetti.

Un'altra strada che si potrebbe percorrere è dovuta all'uso dei tessellation shader, un'innovativa evoluzione della computer grafica introdotta solo qualche anno fa con le Directx11 (ed analogo OpenGL).
In questo caso si opera con una superficie sferica o piana andando ad applicare la texture e le "mappe" prodotte dal software, recanti istruzioni dell'andamento volumetrico dell'oggetto.
Se prima avevo accennato al fatto che il file CAD prodotto pesava 580 MB, è bene notare che tale tecnica pesa solo quanto 3 immagini, richiedendo uno sforzo computazionale alla GPU nella visualizzazione del modello.
In questo caso tuttavia la modifica dei particolari relativi al modello risulta più complessa, dovendo andare ad alterare le sfumature di grigio della Heightmap (per i tessellation shader il bianco puro corrisponde ad un certo valore della funzione di forma definita sulla superficie, mentre il nero corrisponde a zero spostamenti).
La volumetria risulta più schiacciata poichè l'altezza massima raggiunta dai vertici secondo le istruzioni dello shader è contenuta (si dovrebbe intervenire modificando le istruzioni dello shader).
Osservando esempi di texture particolareggiate utilizzando questi shader, si può notare come la loro resa risulti migliore se dedicate alla definizione di particolari minuti su superfici generiche descriventi un oggetto.
Quindi il procedimento migliore dovrebbe mirare ad ottenere un andamento medio della volumetria rilevata con l'elaborazione delle foto, ritocchi in un programma di sculpting del file CAD creato, a cui aggiungere uno shader per definire deformazioni locali.


Nessun commento:

Posta un commento