INF 1366 – Computação Gráfica Interativa Alberto B. Raposo [email protected] http://www.tecgraf.puc-rio.br/~abraposo/INF1366 Alberto Raposo – PUC-Rio Computação Gráfica e Áreas Correlatas processamento de imagens Imagem digital computação gráfica (síntese de imagens) visão computacional Modelos modelagem geométrica Alberto Raposo – PUC-Rio Computação Gráfica • Produz imagens a partir de primitivas geométricas (linhas, círculos, superfícies, etc.) Monstros S.A. Alberto Raposo – PUC-Rio Computação Gráfica Shrek 2 Final Fantasy Alberto Raposo – PUC-Rio Computação Gráfica Alberto Raposo – PUC-Rio Processamento de Imagens Correção gama negativo • Engloba operações realizadas sobre uma imagem para análise, compressão, detecção de padrões não perceptíveis ao olho humano... (ligada à área de processamento de sinais) gradiente Alberto Raposo – PUC-Rio Processamento de Imagens Filtro Gaussiano 1 2 1 1 2 4 2 16 1 2 1 Alberto Raposo – PUC-Rio Visão Computacional • Estima primitivas geométricas e obtém dados a partir de uma imagem LAK 5519 Alberto Raposo – PUC-Rio Visão Computacional Alberto Raposo – PUC-Rio Modelagem Geométrica • Trata da representação computacional de formas geométricas, seu tratamento, recuperação de informações e características Alberto Raposo – PUC-Rio Modelagem Geométrica Alberto Raposo – PUC-Rio Computação Gráfica e Áreas Correlatas processamento de imagens Imagem digital INF 1366 computação gráfica (síntese de imagens) visão computacional Modelos modelagem geométrica Alberto Raposo – PUC-Rio Áreas Correlatas • Animação por computador Lasseter, 1987 Alberto Raposo – PUC-Rio Áreas Correlatas • Visualização: ampliação da capacidade de compreensão do usuário Alberto Raposo – PUC-Rio Áreas Correlatas • Realidade Virtual Alberto Raposo – PUC-Rio Áreas Correlatas • Realidade Aumentada Alberto Raposo – PUC-Rio Áreas Correlatas • Interação com usuários: profissionais de Computação Gráfica são geralmente os primeiros a terem acesso a dispositivos de interação “experimentais” Alberto Raposo – PUC-Rio Aplicações • Jogos • Cartoons Tomb Raider Geri’s Game Alberto Raposo – PUC-Rio Aplicações • FX (efeitos especiais de cinema / TV) Alberto Raposo – PUC-Rio Aplicações • CAD / CAM Alberto Raposo – PUC-Rio Aplicações • Simulações (videogames com precisão; e.g., simuladores de vôo para treinamento) Alberto Raposo – PUC-Rio Aplicações • Imagens médicas • Visualização de informação Alberto Raposo – PUC-Rio Profissionais da CG • Usuários • Customizadores – adaptam programas existentes • Programadores de aplicações – desenvolvem AutoCAD, Corel, ... • Desenvolvedores de ferramentas – desenvolvem OpenGL, DirectX, ... Alberto Raposo – PUC-Rio mais programação mais conteúdo – usam para produzir desenhos e imagens Estrutura de aplicação gráfica interativa tradicional Carla Freitas, UFRGS Alberto Raposo – PUC-Rio Pipeline de visualização 3D Carla Freitas, UFRGS Alberto Raposo – PUC-Rio Descrição Geométrica John Dingliana, 2004 x2 y 2 z 2 r 2 Implícitas Poligonal Modelo 3D x sin 4 y cos2 Paramétrica Alberto Raposo – PUC-Rio Partículas Transformação de Câmera e Recorte (clipping) view frustrum (volume de visualização) John Dingliana, 2004 objetos fora do frustum devem ser descartados Alberto Raposo – PUC-Rio Projeção e Mapeamento (transformação para viewport) modelos 3D câmera viewport Alberto Raposo – PUC-Rio John Dingliana, 2004 Rasterização • Processo de converter o código que descreve o texto e/ou gráfico no formato requerido pelo dispositivo que “imprimirá” o resultado. Alberto Raposo – PUC-Rio INF 1366 – 2007.2 • Conceitos básicos de CG por meio de 2 tecnologias – X3D (http://www.web3d.org/x3d/) • Linguagem de descrição de cenas interativas 3D baseada em XML • Mais alto nível (descrição) – OpenGL • API de rotinas gráficas e de modelagem 2D e 3D • Mais baixo nível (programação) Alberto Raposo – PUC-Rio X3D vs. OpenGL Arquivo .x3d Browser (visualizador) .x3d Possivelmente (*) implementado usando OpenGL (*) DirectX pode ser alternativa ao OpenGL Alberto Raposo – PUC-Rio INF 1366 – Computação Gráfica Interativa Alberto B. Raposo [email protected] http://www.tecgraf.puc-rio.br/~abraposo/INF1366 Alberto Raposo – PUC-Rio