Alberto B. Raposo e Marcelo Gattass

Slides:



Advertisements
Apresentações semelhantes
SLIDE 1 – Transformações - Translação
Advertisements

Daniel de Vasconcelos Campos
Funções para serem usadas no exercício de Lab
Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro Conteúdo: - Transformações geométricas no plano.
Computação Gráfica I Conteúdo: Professor: - Projeções e câmera virtual
Computação Gráfica Geometria de Transformações
The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Departamento de Informática e Estatística - INE/CTC/UFSC Computação Gráfica:
Introdução a OpenGL (parte final).
Claudio Esperança Paulo Roma Cavalcanti
Introdução à Computação Gráfica Geometria
Transformações Geométricas em C.G.
Visualização e Projeções I
DIM102 1 Visualização e Projeções 35M34 – Sala 3E1 Bruno Motta de Carvalho DIMAp – Sala 15 – Ramal 227.
Navegador de cenas com openGL e rastreamento de raios
Rasterização de Primitivas
Traçado de Raios e Modelos de Iluminação por Marcelo Gattass Departamento de Informática PUC-Rio.
Algoritmo de Rastreamento de Raios
Parâmetros Geométricos de Câmeras
INF 1366 – Computação Gráfica Interativa Transformações
MGattass Algoritmo de Rastreamento de Raios. MGattass Registros da camera obscura (latim) 1.Mo-Ti (V século antes de Cristo) – quarto escuro com pequeno.
INF 1366 – Computação Gráfica Interativa
Alberto B. Raposo INF 1366 – Computação Gráfica Interativa Raytracing (resumo) POVRAY – Persistence of Vision Raytracer Alberto.
INF 1366 – Computação Gráfica Interativa Clipping (Recorte)
Linha de produção de imagens com o OpenGL™ (OpenGL Rendering Pipeline)
MGattass Algoritmo de Rastreamento de Raios. MGattass Registros da camera obscura (latim) 1.Mo-Ti (V século antes de Cristo) – quarto escuro com pequeno.
Computação Gráfica Módulo III – Geometria
INF 1366 – Computação Gráfica Interativa Grafos de Cena
INF 1366 – Computação Gráfica Interativa Iluminação e Shading
INF 1366 – Computação Gráfica Interativa Modelagem Geométrica
Computação Gráfica Teórica
Computação Gráfica: Rendering e Rasterização
Perspectivas Prof. Cristiano Arbex 2012.
MECÂNICA - ESTÁTICA Vetores Forças Cap. 2.
Computação Gráfica – Transformações Geométricas
Sistemas Multimídia e Interface Homem-Máquina
RECONSTRUÇÃO 3D Equipe: Amora Cristina (acat) Anália Lima (alc5)
Introdução à Computação Gráfica Projeções
Transformações Geométricas
Ray Tracing Patrícia Cordeiro Pereira Pampanelli
Visão Computacional Formação da Imagem
Head Tracking no framework ViRAL
Projeções Computação Gráfica.
Transformações Geométricas no Plano e no Espaço
Visualização 3D: Projeções
Traçado de Raios e Modelos de Iluminação por Marcelo Gattass Departamento de Informática PUC-Rio.
TRANSFORMAÇÕES GEOMÉTRICAS
Definições e Transformações Projetivas
Visualização Tridimensional (Câmera Sintética)
Visão por Computador Formação da Imagem
COMPUTAÇÃO GRÁFICA E INTERFACES
1 Prof°. Antônio Oliveira de Souza 18 / 10 / 2013 Av. Itororó, 1445 CEP: Maringá - Pr Faculdade de Engenharia e Inovação Técnico Profissional.
Computação Gráfica – Transformações Projetivas
Computação Gráfica Interativa - Gattass
Computação Gráfica – Transformações Geométricas
Visualização Tridimensional
Algoritmo de Rastreamento de Raios
INF 1366 – Computação Gráfica Interativa Rasterização
Visualização Tridimensional. Quando se trabalha em três dimensões, o SRU (Sistema de Referência do Universo) passa a ser composto por três eixos ortogonais.
Visão Computacional Formação da Imagem Radiometria
Modelo e Câmera e Projeção no OpenGL
The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Departamento de Informática e Estatística - INE/CTC/UFSC Computação Gráfica:
Alberto Raposo – PUC-Rio INF 1366 – Computação Gráfica Interativa Revisando... Alberto B. Raposo
Transformações Geométricas
Unity 3D: Câmeras.
Geometria Epipolar Correspondência a partir da calibração das câmeras ou Forma a partir de correspondências.
Princípios de Composição Plástica
Universidade Federal do Ma
Computação Gráfica – Transformações Projetivas
Computação Gráfica I Conteúdo: Professor: - Projeções e câmera virtual
Transcrição da apresentação:

Alberto B. Raposo e Marcelo Gattass INF 1366 – Computação Gráfica Interativa Câmeras e Transformações Projetivas Alberto B. Raposo e Marcelo Gattass abraposo@tecgraf.puc-rio.br http://www.tecgraf.puc-rio.br/~abraposo/INF1366 Alberto Raposo – PUC-Rio

Cena em Computação Gráfica 3 etapas Especificação: Modelagem geométrica, transformações básicas (rotação, translação, escalamento), etc. Visualização Qual porção da cena é vista Renderização Como visualizar Alberto Raposo – PUC-Rio

Transformações Projetivas Afins Similaridades Linear Euclidianas Escalamento Identidade Translação Escalaento Isotrópico Reflexão Rotação Shear Alberto Raposo – PUC-Rio Perspectiva

Visualização e Projeção Modelos 3D camera setup viewport John Dingliana, 2004 Alberto Raposo – PUC-Rio

Projeção Representação de 3 dimensões em meios 2D John Dingliana, 2004 Alberto Raposo – PUC-Rio

No início Alberto Raposo – PUC-Rio

Aprimoramentos... Alberto Raposo – PUC-Rio http://www.stedwards.edu/hum/randle /s32/SSgotpint/FrameSet.htm http://www.personal.us.es/jcordero/DISTANCIA/cap_09.htm Alberto Raposo – PUC-Rio

Câmera escura Alberto Raposo – PUC-Rio

Câmara escura - Leonardo da Vinci -1545 Câmeras fotográficas O fato dos quadros renascentistas terem elemenots da geoemetria projetiva não quer dizer que eles conheciam técnicas precisas de desenho geométrico. Muitos trabalhos foram feitos por mera intuição ou com auxilio de câmeras escuras onde o pintor via sobre o canvas uma imagem da cena que ele desejava pintar como ilustra a figura. Podemos encontrar referências a câmeras escuras nos trabalhos de Leonardo da Vinci de 1545. A câmera fotográfica, como conhecemos hoje, foi inventada pelo Mandé Daguerre (1789-1851) e seus principios podem ser ilustrados com artefatos bem simples como a câmera tipo “pinhole”. Câmara escura - Leonardo da Vinci -1545 Alberto Raposo – PUC-Rio Luis-Jacques-Mandé Daguerre (1839)

Câmeras atuais Alberto Raposo – PUC-Rio

Pinhole Alberto Raposo – PUC-Rio

Geometria da projeção cônica caixa filme objeto pinhole raios de luz imagem Câmera plano de projeção centro de projeção Projeção cônica Alberto Raposo – PUC-Rio

Plano e Janela de Projeção Plano de projeção: Plano onde é projetada a imagem Infinito Janela de projeção: Porção retangular do plano de projeção onde é vista a imagem (é a “janela” por onde se vê o mundo, ou a “tela” do quadro, por exemplo) plano de projeção centro de projeção Projeção cônica Alberto Raposo – PUC-Rio

Projeção cônica f Alberto Raposo – PUC-Rio

Taxonomia de Projeções Alberto Raposo – PUC-Rio

Projeções Planas Cônicas Ap B Bp realista não preserva escala não preserva ângulos

Projeções Planas Paralelas Ap B Bp pouco realista preserva paralelismo possui escala conhecida

Perspectiva vs. Paralela Tamanho varia inversamente à distância: realista Distância e ângulos (em geral) não preservados Linhas paralelas (em geral) não permanecem paralelas Paralela Boa para medições precisas Linhas paralelas permanecem paralelas Ângulos (em geral) não são preservados Aparência menos realista Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Taxonomia de Projeções Alberto Raposo – PUC-Rio

Projeção Paralela Centro de projeção no infinito Direção de projeção (DOP) é a mesma para todos os pontos View Plane DOP D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Projeções Ortográficas DOP perpendicular ao view plane Front D. Brogan, Univ. of Virginia Side Alberto Raposo – PUC-Rio Top

Projeção Ortográfica Simples Projeta todos os pontos ao longo do eixo z para o plano z = 0 MIT EECS 6.837, Durand and Cutler x´ y´ z´ 1 1 1 1 x y z 1 = Alberto Raposo – PUC-Rio

Projeções Oblíquas DOP não é perpendicular ao view plane Cavalier (DOP  = 45o) tan(a) = 1 Cabinet (DOP  = 63.4o) tan(a) = 2 Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Projeções Cavaleiras (Cavalier) e Cabinetes (Cabinet) y y M 1 (1,1,1) a k 1 x x z Â3 Â2 T(1,0,0) = (1,0,0) T(0,1,0) = (0,1,0) T(0,0,1) = ( -k cos a, -k sin a , 0)

Taxonomia de Projeções Alberto Raposo – PUC-Rio

Transformação Perspectiva MIT EECS 6.837, Durand and Cutler Descoberta por Donatello, Brunelleschi, e DaVinci durante o Renascentismo Objetos mais próximos parecem maiores Linhas paralelas convergem em um único ponto (ponto de fuga) Alberto Raposo – PUC-Rio

Projeções de um cubo Paralelas Cônicas a 1/2 a 1 planta ou elevação iso-métrica Cabinete (a=45 ou 30) Cavaleira (a=45 ou 60) Cônicas 1 pto de fuga 2 ptos de fuga

Projeções Clássicas D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Projeção Perspectiva Quantos pontos de fuga? 3-Point Perspective D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Perspectiva na pintura Filippo Lippi, La Anunciación (1442) (sem perspectiva) (com perspectiva) Alberto Raposo – PUC-Rio

Projeções Cônicas e Ponto de Fuga Vermeer, “La lección de música” Alberto Raposo – PUC-Rio

Projeção cônica f Alberto Raposo – PUC-Rio

Projeção Perspectiva P (x, y, z) X Z (0,0,0) x’ = ? n View plane D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Projeção cônica simples x y z P Pp zp = -n Alberto Raposo – PUC-Rio

Projeção cônica simples xe ye ze P Pp Alberto Raposo – PUC-Rio

Outra representação para matriz de transformção perspectiva D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Matriz de Projeção Perspectiva Exemplo: Ou: D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

No limite, n → ∞ 1 1 1/n 1 1 1 1 A matriz de projeção perspectiva... ...é a de projeção ortográfica 1 1 1/n 1 1 1 1 → MIT EECS 6.837, Durand and Cutler Alberto Raposo – PUC-Rio -n

Câmera Virtual – Computação Gráfica Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Modelos de Câmeras Virtuais Pinhole é a mais comum Todos os raios de luz capturados chegam por retas até o ponto focal, sem distorção de lentes Resposta do sensor proporcional à radiância View plane Posição dos olhos (ponto focal) Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Parâmetros de Câmera O que é necessário saber para modelar uma câmera virtual? Alberto Raposo – PUC-Rio

Sistemas de Coordenadas Do mundo (world coordinates): ponto arbitrário no espaço, a partir do qual o mundo é modelado De câmera (eye coordinates): centrado na posição do observador, com o eixo “-z” na direção para onde se olha e o eixo “y” naquilo que se define como “para cima” Alberto Raposo – PUC-Rio

Parâmetros de Câmera Posição dos olhos (px, py, pz) Orientação View direction (dx, dy, dz) Up direction (ux, uy, uz) Abertura Field of view (xfov, yfov) (ou janela de visualização) Plano do filme “Look at” point View plane normal View Plane Up direction “Look at” Point back View direction right Eye Position Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Movimentando a câmera Up Back Towards Right View Frustum (cone de visão) Alberto Raposo – PUC-Rio

Câmera Alberto Raposo – PUC-Rio

Projeção Cônica (Perspectiva) void glPerspective( GLdouble fovy, GLdouble aspect, GLdouble near_, GLdouble far_ ); (OpenGL) ye w aspect = w/h ze h xe near far fovy xe ze Alberto Raposo – PUC-Rio

Projeção Cônica (Frustum) void glFrustum( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_, GLdouble far_ ); (OpenGL) ze xe ye Obs.: near e far são distâncias( > 0) xe ze near l r far view frustum near ye ze far t b Alberto Raposo – PUC-Rio

Glu Look At void gluLookAt(GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz); (OpenGL) Dados: eye, center, up (definem o sistema de coordenadas do olho) Determine a matriz que leva do sistema de Coordenadas dos Objetos para o sistema de Coordenadas do Olho up eye center Coordenadas dos Objetos Coordenadas do Olho Alberto Raposo – PUC-Rio

Projeção Paralela (Ortho) near ye top far bottom ze A xe left right void glOrtho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_, GLdouble far_ ); (OpenGL) void gluOrtho2D( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top ); Alberto Raposo – PUC-Rio

Câmera VRML: Viewpoint Alberto Raposo – PUC-Rio

Exemplo VRML Alberto Raposo – PUC-Rio

Exemplo VRML The Annotated VRML Reference Alberto Raposo – PUC-Rio

Exemplo VRML The Annotated VRML Reference Alberto Raposo – PUC-Rio

Exemplo VRML The Annotated VRML Reference Alberto Raposo – PUC-Rio

Exemplo VRML The Annotated VRML Reference Alberto Raposo – PUC-Rio

Exemplo X3D Alberto Raposo – PUC-Rio

Transformações de Visualização Cria-se uma visualização centrada na câmera Câmera está na origem Câmera olha para o eixo z no sentido negativo O ‘up’ é alinhado com o eixo y Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

2 Passos básicos Alinha-se os sistemas de coordenadas (de câmera e do mundo) por rotação Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

2 Passos básicos Translação para alinhar as origens Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Espaço de coordenadas da câmera Especifica-se ponto onde a câmera está localizada (origem do espaço) eye point Especifica-se ponto onde será o centro da visualizaçãolookat point Especifica-se o vetor “up” up vector Movimentos intuitivos da câmera Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Transformação de visualização D. Brogan, Univ. of Virginia Vetor da origem até o centro de visualização (look at point) Normalização do vetor Rotação para alinhar esse vetor com [0, 0, -1]T (câmera apontando para –z) Alberto Raposo – PUC-Rio

Transformação de visualização Se lookat-vector deve se alinhar com –z e o vup-vector se alinha com y: Esse vetor, normalizado, deve alinhar-se com [1, 0, 0]T Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Transformação de visualização Mais um vetor… Esse vetor, normalizado, se alinha com [0, 1, 0]T Juntando os resultados… Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Compondo vetores para formar a matriz V Conhecemos os eixos de coordenadas do mundo (x, y, z) E também os eixos da câmera (r, u, l) A transfomação de visualização, V, deve converter o sistema do mundo para o sistema da câmera Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Compondo vetores para formar a matriz V Cada eixo da câmera é de módulo unitário Cada eixo é perpendicular aos demais A matriz de câmera é ortogonal e normalizada Ortonormal Matriz ortonormal: M-1 = MT Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Compondo vetores para formar a matriz V Logo, a componente de rotação da matriz de transformação de visualização … ... é simplesmente a transposta Alberto Raposo – PUC-Rio D. Brogan, Univ. of Virginia

Compondo vetores para formar a matriz V Componente de translação D. Brogan, Univ. of Virginia Alberto Raposo – PUC-Rio

Matriz de Transformação de Visualização Para transformar vértices: Alberto Raposo – PUC-Rio

Informações Adicionais Peter Shirley. Fundamentals of Computer Graphics, A K Peters, Ltd., Natick, MA, USA, 2002. Foley, J. D., Van Dam, A., Feiner, S. K., e Huhes, J. F., Phlips, L. R., Introduction to Computer Graphics,  Addison-Wesley, 1995. D. F. Rogers, J. A. Adams. “Mathematical Elements for Computer Graphics”. 2nd Ed., McGraw-Hill, 1990. Alberto Raposo – PUC-Rio