Rodrigo de Toledo
Domínios da Computação Gráfica
Processamento de imagens
Modelagem de dados(geometria computacional)
Visão(análise de imagem,
visão computacional)
Visualização(computação gráfica,síntese de imagem)
DADOSDADOS
IMAGEMIMAGEM
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
2x2 8x8 32x32original
5x5
Filtro Laplaciano
0 1 0
1 - 4 1
0 1 0
1 1 1
1 - 8 1
1 1 1
• Filtro passa alta.
• Somar à imagem originalpara realçar os detalhes.
truncation
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
DADOSDADOSIMAGEMIMAGEM
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
Câmera:• Posição• Rotação• Perspectiva
Informações:• Geometria• Objetos• Distâncias• Iluminação
Alto nível:• Pessoas• Movimentos• Atividades• 4D
uso intenso de processamento
de imagem
uso intenso de matemática
Noções de computação
gráfica
Quanto mais contextualizado
melhor
Modelagem de dados
(visualização)
Modelagem de dados
VISUALIZAÇÃO
IMAGEMIMAGEMDADOSDADOS
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
3D
x
Visualização
Interativa
Pré-processada
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 Proc. Img. Visão
Pré-processada Interativa
2D 3D
Superfícies Volumes
Programação CPU Programação GPU
Vis. Científica Game
Glyphs
Onde estou!
Computação Gráfica
Modelagem Visualização Proc. Img. Visão
Pré-processada Interativa
2D 3D
Superfícies Volumes
Programação CPU Programação GPU
Vis. Científica 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
DADOSDADOS
• 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 universosExemplo: uma esfera
UniversoFísico
Universo deRepresentação
Universo deImplementação
UniversoMatemático S: x2 + y2 + z2 = 1
Cor: vermelhoVertices: 256x1 y1 z1;, x2 y2 z2; ...Triangulos: 250P1 P2 P5; P2 P7 P10; ...
Paradigma dos 4 universos(outros exemplos)
UniversoFísico
Universo deRepresentação
Universo deImplementação
UniversoMatemático
879987987898
8 9 8 7 8 9 7 8 9 9 7 8
Discretização (Amostragem)
Representação (Vetor)
Imagens no Universo Físico
Amostragem e Quantização
Codificação e Formatos
Funçõesno Espaço de Cor
Cores no Universo Físico
Representação de Cor
Especificação de Cor
Modelos Matemáticos de
Cor (Espaço)
COR IMAGEMVOZ HUMANA
Níveis de escala
Cena
Macro Microscale
Meso
• Objetos do mundo virtual
• Representação dos objetos
• Textura
• 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 meso-estrutura (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
out
n
in
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
Macro-escala Micro-escala
Meso-escala
• rasterização / z-buffer• traçado de raio• subdivisão espacial• culling
• shading• LOD• impostors
• texturas• meso-estruturas• aplicação
• photon mapping• BSSRDF• PRT
Top Related