15
21/02/2008 Rendering Visione Artificiale - 11 dicembre 2008 11/12/08 Visione Artificiale 2 Agenda (1 di 2) - Rendering Real-Time e non Real Time - Ambienti di moodellazione non Real Time 3D Studio MAX Maya Ambienti OpenSource: Blender e Wings 3D - Principali vantaggi del rendering non Real Time Mesh Smooth Rich Internet Applications Interactive - L’approccio al rendering non Real Time - Svantaggi del rendering non Real Time

Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008

Rendering

Visione Artificiale - 11 dicembre 2008

11/12/08 Visione Artificiale2

Agenda (1 di 2)

- Rendering Real-Time e non Real Time

- Ambienti di moodellazione non Real Time

• 3D Studio MAX

•Maya

• Ambienti OpenSource: Blender e Wings 3D

- Principali vantaggi del rendering non Real Time

• Mesh Smooth

• Rich Internet Applications

• Interactive

- L’approccio al rendering non Real Time

- Svantaggi del rendering non Real Time

Page 2: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

11/12/08 Visione Artificiale3

Agenda (2 di 2)

21/02/2008 Visione Artificiale

Rendering RT e non RT (1 di 3)

4

Storicamente la CG è un ambito in cui per ottenere effetti tridimensionali notevoli

era imperativo operare in un contesto non RT.

Nel mondo della CG, la conquista dell’elaborazione RT è estremamente recente e

non ancora del tutto ultimata.

Solo da un decennio (circa) si sperimenta la possibilità di renderizzare ambienti 3D

in tempo reale, o quantomeno in intervalli di tempo inferiori al minuto.

Page 3: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Rendering RT e non RT (2 di 3)

5

La prima elaborazione 3D invece risale al 1967:

simulazione della cabina di pilotaggio di un Boeing.

Le simulazioni di sistemi sono state l’unica applicazione della grafica 3D per circa

un decennio.

La LucasArt segna l’ingresso della grafica 3D nel cinema nel 1980 con “L’impero

colpisce ancora”. Si tratta però di brevi rendering di oggetti ed esplosioni, la

maggior parte degli effetti speciali è ancora realizzata con tecniche classiche.

21/02/2008 Visione Artificiale

Rendering RT e non RT (3 di 3)

6

Nello stesso periodo anche l’industria dei videogames scopre la grafica 3D, con

MS Flight Simulator (1982) e Dragon’s Lair (1983).

Il primo film con apprezzabili effetti 3D è “Chi ha incastrato Roger Rabbit” nel 1988

Doom è rilasciato per PC nel 1993

Il primo film interamente in 3D è “Toy Story” del 1995 OpenGL risale al 1993. Il

primo HW dedicato per rendering 3D RT è la PlayStation nel 1994 uscita insieme

ai primi giochi full 3D: Resident Evil e SoulEdge.

Page 4: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Ambienti di sviluppo non Real Time

7

Lo stato dell’arte per i prodotti commerciali è pressoché identico.

Discreet 3D Studio Max (Autodesk)

Alias/WaveFront Maya (Autodesk)

SoftImage XSI

NewTek LightWave

Maxxon Cinema 4D

- Esistono anche soluzioni OpenSource.?

Blender (http://www.blender.it/)

Wings 3D (http://www.wings3d.com/)

21/02/2008 Visione Artificiale

Vediamo alcuni esempi...

8

Page 5: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Approccio allo sviluppo non Real Time

9

Due contesti applicativi:

- Rendering fotorealistici

- Rendering di elementi non fotorealistici

Non essendo presenti vincoli temporali, spesso si suddivide il lavoro in:

- Redazione di uno storyboard

- Suddivisione del progetto in elementi

- Modellazione di elementi 3D

- Post-produzione

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (1 di 2)

10

MeshSmooth

conferisce un aspetto più “dolce” ai modelli.

Page 6: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (1 di 2)

11

MeshSmooth

conferisce un aspetto più “dolce” ai modelli.

Particle Systems

simulazione di effetti ambientali

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (1 di 2)

12

MeshSmooth

conferisce un aspetto più “dolce” ai modelli.

Particle Systems

simulazione di effetti ambientali

Radiosity

gestione avanzata di luci ed ombre

Page 7: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (1 di 2)

13

MeshSmooth

conferisce un aspetto più “dolce” ai modelli.

Particle Systems

simulazione di effetti ambientali

Radiosity

gestione avanzata di luci ed ombre

Complex Materials and Chaustics

definizione di effetti di rifrazione/riflessione

con materiali complessi quali vetro, metallo,

plastica, ecc.

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (2 di 2)

14

HDRI e Raytracing

util izzo di modelli accurati della luca

ambientale, mediante rappresentazione a

particelle di fotoni.

Page 8: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (2 di 2)

15

21/02/2008 Visione Artificiale

Vantaggi del rendering non Real Time (2 di 2)

16

HDRI e Raytracing

util izzo di modelli accurati della luca

ambientale, mediante rappresentazione a

particelle di fotoni.

Dynamics

simulazioni di effetti fisici quali caduta di

oggetti, ma anche peli e capelli

Page 9: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale17

Vantaggi del rendering non Real Time (2 di 2)

21/02/2008 Visione Artificiale

Svantaggi del rendering non Real Time

18

Assenza di feedback

Non si può avere un feedback immediato sui cambiamenti apportati alla scena

o ai modelli. Si deve aspettare che il rendering termini oppure eseguire dei

rendering a bassa risoluzione solamente di parti della scena.

Interazione nulla

Non è possibile implementare un tipo di interazione con gli utenti che modifiche

l’ambiente renderizzato in base alle loro scelte, a meno di “barare”.

Page 10: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Quanto si vuole aspettare?

19

La condizione di bottleneck si verifica sotto due aspetti

Bottleneck dei tempi di calcolo

I calcoli richiesti per il rendering della scena, nonostante la presenza di CPU sempre più

veloci e processori grafici integrati, non risulta accettabile. In alcuni casi si parla

addirittura di giorni oppure settimane.

Bottleneck della memoria

Spesso la RAM e la memoria virtuale non sono sufficienti a contenere l’esplosione di

poligoni derivante dalla conversione delle scene in triangoli per il rendering. Anche il

calcolo delle interazioni tra le varie particelle (collisioni) o di queste con deflettori e forze,

può creare una situazione di questo tipo.

21/02/2008 Visione Artificiale

Break!!

20

Page 11: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Come funzionano i videogames?

21

L’approccio adottato dalle tecniche di rendering non Real Time è troppo complesso e

computazionalmente intrattabile per prodotti che hanno forti requisiti in termini di

interattività.

Videogames

in 1/25 di secondo il PC deve calcolare:

- Intelligenza artificiale del gioco

- Eventuali interazioni con la scheda di rete

- Caricamento di dati da disco

- Risultati di simulazioni fisiche

- Rendering del frame corrente

Come fare?

21/02/2008 Visione Artificiale

Graphic Processor Unit

22

Unità dedicata alle operazioni di rendering, presente sulla scheda grafica.

Architettura fortemente dedicata, studiata per le elaborazioni 3D.

Implementa la cosiddetta “pipeline di rendering”.

Sviluppata per garantire flessibilità

Page 12: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Graphic Processor Unit

23

Vertici ed

Attributi

Vertex

OperationsRasterization

Fragment OperationsFrame Buffer

GPU

21/02/2008 Visione Artificiale

GPGPU

24

L’introduzione di moduli programmabili (gli shader) nell’architettura era motivata dalla

necessità di implementare modelli di illuminazione avanzati.

I moduli di shader sono unità SIMD

Si tratta di unità estremamente flessibili, talmente flessibili che è possibile

sfruttare dei “trucchi” per effettuare elaborazioni di carattere generale

Questa tecnica nasce come un “hack” nel 2001, ma si è consolidata negli anni...

Page 13: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

nVidia CUDA

25

Computer Unified Device Architecture, sviluppata da nVidia per supportare le elaborazioni

di tipo General Purpose su scheda grafica.

Un’unico device di accelerazione a supporto del processore, ma...

..rimane una soluzione nata per la grafica 3D, quindi lo speedup è tanto maggiore quanto

gli algoritmi rispettano certi requisiti:

- Località dei dati

- Assenza di Branching

- Trasferimenti da e per la memoria limitati

qualche idea di algoritmi di Visione Artificiale che si prestano bene?

21/02/2008 Visione Artificiale

CUDA per Computer Vision

26

- Operazioni Puntuali?

- Filtri di smoothing?

- Filtri di de-noising?

- Trasformata di Hough?

- Flusso Ottico?

Page 14: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Conclusioni

27

Di fatto si dispone di un sistema di calcolo parallelo estremamente low cost...

.. a fronte di una curva di apprendimento non banale..

CUDA rimuove la necessità di conoscere l’architettura della pipeline di rendering,

ma è sempre necessario imparare un nuovo linguaggio di programmazione..

..anche se è un derivato del C.

Fortunatamente il 9 dicembre sono state rilasciate le specifiche OpenCL 1.0

...forse le cose stanno migliorando.

21/02/2008 Visione Artificiale

Domande?

28

Page 15: Rendering - Paviavision.unipv.it/corsi/VisioneArtificiale-ls/lucidi/VA-111208.pdf · Vantaggi del rendering non Real Time (2 di 2) 21/02/2008 Visione Artificiale Svantaggi del rendering

21/02/2008 Visione Artificiale

Proposte di Tesi

29

..maggiori informazioni su http://vision.unipv.it