CG1 02 Introducao Vis

Download Report

Transcript CG1 02 Introducao Vis

Rodrigo de Toledo
Domínios da Computação Gráfica
Modelagem de dados
(geometria computacional)
DADOS
Visualização
Visão
(computação gráfica,
síntese de imagem)
(análise de imagem,
visão computacional)
IMAGEM
Processamento de imagens
Processamento de Imagem
• Transformação de imagens…
• Ex: Photoshop
• Também pode ser:
– Pos-processamento da visualização
– Pre-processamento da visão
• Ferramentas:
– Filtros
– Edição
– Processamento
Filtros de Amplitude x
Topológico
Gamma
Correction
PUNCH
Filtro Gaussiano
5x5
original
2x2
8x8
32x32
Filtro Laplaciano
0
1
0
1
1
1
1
-4
1
1
-8
1
0
1
0
1
1
1
truncation
• Filtro passa alta.
• Somar à imagem original
para realçar os detalhes.
offset
Processamento de Imagem
• Edição
– Desenho
– Combinar imagens, exemplos:
•
•
•
•
•
Copiar e colar
Pixels alternados
Imagens com as cores misturadas (blend)
Álgebra (adição e subtração)
Transparência (composição)
– Ampliar / reduzir
– Muitos outros...
Processamento de Imagens
Visão Computacional
IMAGEM
DADOS
Visão Computacional
• Extrair informações apartir de imagens
http://www.tecgraf.puc-rio.br/juizvirtual
Visão Computacional
LAK 5519
Visão Computacional
• Big Brother Público (Londres)
• Detecção de Atividades suspeitas
(Queen Mary, University of London)
Visão Computacional
• Seqüência de etapas (pipeline)
Detecção:
• Regiões
• Texturas
• Arestas
• Ícones
uso intenso de
processamento
de imagem
Câmera:
• Posição
• Rotação
• Perspectiva
uso intenso de
matemática
Informações:
• Geometria
• Objetos
• Distâncias
• Iluminação
Noções de
computação
gráfica
Alto nível:
• Pessoas
• Movimentos
• Atividades
• 4D
Quanto mais
contextualizado
melhor
Modelagem de dados
(visualização)
Modelagem de dados
VISUALIZAÇÃO
DADOS
IMAGEM
Visualização
• 2D x 3D
– Photoshop x 3D Max
• Interativa (ex:games)
x
Pré-processada (ex: “Os incríveis”)
• Games x Visualização Científica
• Superfície x Volume
• CPU x GPU
Visualização
2D
x
3D
Visualização
Pré-processada
Interativa
Visualização Interativa
• Frame rate
– 30 fps
– >10 fps
• Qual a freqüência do olho humano?
• 2 exigências:
– Movimento visualmente contínuo
– Tempo de latência “imperceptível” entre a ação do usuário e a
reação da aplicação
Visualização Interativa
• Games x Visualização Científica
Superfície x Volume
350 millions of triangles
Onde estamos?
Computação Gráfica
Modelagem
Visualização
2D
Proc. Img.
3D
Pré-processada
Interativa
Vis. Científica
Superfícies
Programação CPU
Visão
Volumes
Programação GPU
Game
Glyphs
Onde estou!
Computação Gráfica
Modelagem
Visualização
2D
Proc. Img.
3D
Pré-processada
Interativa
Vis. Científica
Superfícies
Programação CPU
Visão
Volumes
Programação GPU
Game
Glyphs
Visualização Interativa
• Perguntas:
• Como aumentar qualidade sem perder
performance?
• Como aumentar performance sem perder
qualidade?
• Como aumentar o volume de objetos visualizados
sem perder performance?
• Como aumentar realismo?
• Como aumentar interatividade?
• Como visualizar o que não pode ser visto?
(exemplos em visualização científica: campos
vetoriais, reservatórios de petróleo)
Modelos e Representações
DADOS
• Como representar o mundo real no mundo virtual?
• Paradigmas de abstração:
– 4 universos:
•
•
•
•
Físico
Matemático
Representação
Implementação
• Representação depende do nível de escala
– 4 níveis de escala:
•
•
•
•
Cena
Macro
Meso
Micro
Paradigma dos 4 universos
Exemplo: uma esfera
Universo
Físico
Universo
Matemático
S: x2 + y2 + z2 = 1
Universo de
Representação
Universo de
Implementação
Cor: vermelho
Vertices: 256
x1 y1 z1;, x2 y2 z2; ...
Triangulos: 250
P1 P2 P5; P2 P7 P10; ...
Paradigma dos 4 universos
(outros exemplos)
VOZ HUMANA
Universo
Físico
Universo
Matemático
Universo de
Representação
COR
IMAGEM
Cores no
Universo Físico
Imagens no
Universo Físico
Modelos
Matemáticos de
Cor (Espaço)
Funções
no Espaço de Cor
Representação
de Cor
Amostragem e
Quantização
Especificação
de Cor
Codificação e
Formatos
8 9 8 7 8 9 7 8 9 9 7 8
Discretização (Amostragem)
Universo de
Implementação
898789789978
Representação (Vetor)
Níveis de escala
Cena
Meso
• Objetos do mundo virtual
• Textura
Macro
Microscale
• Representação dos objetos
• Nível fotométrico
Níveis de Escala
• Cena (scene-scale)
– Como organizar os objetos de uma cena
virtual?
– Como organizar os agentes ambientais?
• Iluminação direta, iluminação indireta, névoa...
– Como posicionar a camera virtual?
– Como representar réplicas de um objeto?
– Como permitir mudanças na cena com o
decorrer do tempo?
Nível de Escala - Cena
• Grafo de cena:
– Os grafos ainda contém:
• Agrupamentos transformações, subobjetos etc...
Nível de Escala - Macro
• Nível do objeto (macroscale)
– Como representar?
• Implicitamente
• Parametricamente
• Explicitamente
– Exemplo: círculo
Nível de Escala - Macro
• Representação Implícita:
– Planar
– Quádrica:
S: x2 + y2 + z2 = 1
Nível de Escala - Macro
• Implícita:
– Cúbica:
– Torus (quártica):
Nível de Escala - Macro
• Representação Implícita:
– CSG (Constructive Solid Geometry)
Nível de Escala - Macro
• Representação Paramétrica:
Nível de Escala - Macro
• Representação Paramétrica:
– Superfícies de Bèzier:
Nível de Escala - Macro
• Representação Paramétrica:
– NURBS:
Nível de Escala - Macro
• Representação Explícita:
– Malha de polígonos  malha de triângulos
Nível de Escala - Macro
• Explícita:
– Mapa de alturas
(ex: terreno)
15
2
42
78
45
46
54
5
4
65
78
45
43
61
54
87
98
65
2
56
41
85
96
63
52
41
48
75
46
97
31
15
48
26
95
34
67
49
16
32
65
89
78
54
67
15
65
68
78
Nível de Escala - Meso
• Representação da mesoestrutura (mesostructure)
– Mapa de cor (textura)
– Mapa de normal (bump)
– Mapa de altura
– Meso-estrutura volumétrica
– Função de iluminação
(BRDF)
Aplicando mapa de altura
Nível de Escala - Micro
• Escala do raio de luz
– Photon ou photon beam
in n
 in
out
Nível de Escala - Micro
• Photon Mapping
– Exige muito processamento
Nível de Escala - Micro
– Tempo real: PRT function
(Pre-computed Radiance Transfer)
Algoritmos de Visualização
Nível de cena
• rasterização / z-buffer
• traçado de raio
• subdivisão espacial
• culling
Macro-escala
• shading
• LOD
• impostors
Meso-escala
• texturas
• meso-estruturas
• aplicação
Micro-escala
• photon mapping
• BSSRDF
• PRT