Computação Gráfica Introdução

Documentos relacionados
Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti

António Costa. Paulo Roma Cavalcanti

Computação Gráfica Aula 0. Alexandre de Barros Barreto - Ms

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 1. Apresentação

Frederico Damasceno Bortoloti. Adaptado de: Claudio Esperança Paulo Roma Cavalcanti

Resumo. Computação Gráfica: Uma Proposta de Plano Pedagógico. Áreas Correlatas. Definição. Uma Visão Integrada da C.G.

Computação Gráfica e Áreas Correlatas

COMPUTAÇÃO GRÁFICA. Ana Paula Mandelli

Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca

UNIVERSIDADE FEDERAL FLUMINENSE Pedro Martins Menezes. Um estudo dos estágios dos pipelines gráficos

Introdução Geral a Computação Gráfica. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de Computação Gráfica

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Computação Gráfica Abel J. P. Gomes. Engenharia Informática (5385) - 2º ano, 2º semestre Matemática (5828) - 2º ano, 2º semestre

Computação Gráfica. Agostinho Brito. Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte

Computação e Imagens: PI, CG e Visualização. Computação Visual

Computação Gráfica. Visão Geral, conceitos básicos e terminologia Professora Sheila Cáceres

Computaçã. Visão Geral. Sistema Gráfico. Computação Gráfica. Pixels. Sistema Gráfico e o Frame Buffer. Introdução à Computação Gráfica

Computação Gráfica. Computação Gráfica. Visão Geral. Sistema Gráfico. Introdução à Computação Gráfica e areas relacionadas

Introdução à Computação Gráfica

Computação Gráfica e Áreas Correlatas

Computação Gráfica. Apresentação Inverno 2012/2013. Carlos 2012 ISEL/ADEETC Computação Gráfica

Imagem ou Desenhos e Gráficos vetorial ou raster?

Mídias Discretas. Introdução à Ciência da Informação

Imagem e Gráficos. vetorial ou raster?

Professor: Computação Gráfica I. Anselmo Montenegro Conteúdo: - Introdução. Instituto de Computação - UFF

Computação Gráfica II

Introdução ao Processamento de Imagens Digitais Aula 01

Imagem Digital. Claudio Carvilhe

Plano de Ensino de Disciplina Ciência da Computação 2º / 2016

Introdução ao Processamento Gráfico

Computação Gráfica. Prof. André Yoshimi Kusumoto

Realidade Virtual. Realidade Virtual - Introdução. 4 Conceitos Iniciais. 4 Aplicações 4Equipamentos para RV. 4Fundamentos de Computação Gráfica

Modelos Globais de Iluminação

Disciplina: Desenho Assistido por Computador - AutoCAD

Computação Gráfica - 03

Alunos: Marcelo Buratti de Freitas Hellen Santos Quast Erhardt Yago de Paula Maycon Quast Erhardt Prof. Kleber Manrique Trevisani

Computação Gráfica. Aula #1: Fundamentos, Origens e Objectivos da Computação Gráfica. ISUTIC Eng. Alexander Rodríguez Bonet

Computação Gráfica II

Introdução à Computação Gráfica

Capítulo 3 Primeiros Passos em OpenGL Função Desenha Função Teclado Função Inicializa Programa Principal...

Mudanças de Coordenadas em Sistemas de Cores

Introdução ao Processamento e Síntese de imagens Recorte 2D

Processamento Digital de Imagens

Computação Gráfica. Introdução: Histórico e Conceito. Prof. Márcio Bueno {cgtarde,

Processamento Digital de Imagens

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Lista de exercícios. 4) Defina o conceito de função de eficiência luminosa. (Victor)

Teclado Virtual. MAC0420/MAC5744 Introdução Computação Gráfica. IME Instituto de Matemática e Estatística USP Universidade de São Paulo

Processamento Digital de Imagens - PDI

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Computação Gráfica - 12

Aula 01 Introdução ao Projeto Auxiliado por Computador (CAD), Sistema 2D e Modelagem Sólida

Computação Gráfica - 09

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Modelação de Formas Geométricas

COORDENAÇÃO DO CURSO DE ENGENHARIA ELÉTRICA DATAS DAS AVALIAÇÕES DO PERÍODO LETIVO 2017/1

Pipeline de Visualização 2D

Processamento digital de imagens

Computação Gráfica. Representação e Modelagem

Visibilidade. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG

Um Algoritmo para a Visualização de um Terreno com Objetos

Geração Procedural de Terrenos em GPU

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Computação Gráfica - 09

Computação Gráfica e Processamento de Imagens. - Sistemas 3D (conceitos básicos) Prof. Julio Arakaki

Mecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas

Objetos definidos no seu próprio sistema de coordenadas

Instituto de Computação Bacharelado em Ciência da Computação Disciplina: Computação Gráfica Primeira lista de exercícios

SISTEMAS DE INFORMAÇÃO GEOGRÁFICA SIG FORMATOS DE REPRESENTAÇÃO DE DADOS FORMATO VETORIAL

MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período

Transcrição:

Computação Gráfica Introdução UniverCidade - Prof. Ismael H F Santos April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Considerações Gerais Objetivo: Discutir os principais conceitos eos princípios básicos dos Sistemas Gráficos e a Programação em OpenGL. A quem se destina : Alunos e Profissionais que desejem aprofundar seus conhecimentos sobre Computação Grafica e suas aplicações. April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 2 1

Bibliografia Computação Gráfica Volume 1. Jonas Gomes e Luiz Velho. Instituto de Matemática Pura e Aplicada IMPA. Introdução a Computação Gráfica - Paulo Roma http://www.lcg.ufrj.br/compgraf1/downloads/apostila.pdf http://www.lcg.ufrj.br/compgraf1/downloads/apostila.ps.gz Notas do Curso ministrado na Universidade de Maryland pelo Prof. David Mount ftp://ftp.cs.umd.edu/pub/faculty/mount/427/427lects.ps.gz http://www.lcg.ufrj.br/~esperanc/cg/427lects.ps.gz Apostila Fundamentos da Imagem Digital Antonio Scuri Computer Graphics: Principles and Practice, Second Edition. James Foley, Andries van Dam, Steven Feiner, John Hughes. Addison- Wesley. OpenGL Programming Guide, 2nd Edition. Mason Woo, Jackie Neider, Tom Davis. Addison Wesley. April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 3 Bibliografia OpenGL OpenGL Programming Guide, 2nd Edition. Mason Woo, Jackie Neider, Tom Davis. Addison Wesley. http://www.lcg.ufrj.br/redbook Manual de referência online http://www.lcg.ufrj.br/opengl Sítio oficial do OpenGL www.opengl.org April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 4 2

Conteúdo do Curso Introdução Gráficos vetoriais e matriciais Dispositivos gráficos Programação gráfica com OpenGL Geometria Câmeras e projeções Modelagem geométrica Cor Iluminação local e global Colorização (shading) Visibilidade Recorte Rasterização Mapeamentos Textura Rugosidade Ambiente Técnicas sobre imagens Dithering Quantização de cores Codificação April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 5 Aplicações Desenho Assistido por Computador (CAD) Desenho Geométrico Assistido por Computador (CAGD) Sistemas de Informações Geográficas (GIS) Visualização Científica Visualização Médica Educação Entretenimento April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 6 3

Áreas de atuação dos profissionais de CG Entretenimento Televisão Filmes Jogos CAD / CAM Engenharia Arquitetura Design Visualização Científica Medicina Biologia Matemática Petróleo Editoração Eletônica Ilustração Layout de Página Processamento de Imagens Visão Computacional Efeitos para Vídeo Reconhecimento de Padrões Projeto de Interfaces Sistemas de Gerenciamento de Interface Sistemas de Janela Toolkits Realidade Virtual April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 7 Disciplinas relacionadas Computação Algoritmos Estruturas de Dados Métodos Numéricos Matemática Geometria, Álgebra Linear Física Ótica Mecânica Psicologia Percepção Artes April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 8 4

Computação Gráfica Modelagem de dados (processamento de dados) DADOS Visão (análise de imagem) Visualização (computação gráfica, síntese de imagem) IMAGEM Processamento de imagens April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 9 Modelagem de Dados (visualização) April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 10 5

Modelagem de Dados April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 11 Visualização 2D x 3D April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 12 6

Visualização Real Time April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 13 TecGraf Visualização Cinema April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 14 7

Visualização Jogos April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 15 Visualização RayTracing TecGraf April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 16 8

Visualização Visualização Volumétrica (voxel) April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 17 Visão Computacional LAK 5519 April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 18 9

Processamento de Imagens April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 19 Processamento de Imagens April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 20 10

Processamento de Imagens April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 21 Realidade Aumentada http://www.tecgraf.puc-rio.br/juizvirtual April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 22 11

Representações Gráficas Gráficos Vetoriais Representados por coleções de objetos geométricos Pontos Retas Curvas Planos Polígonos Gráficos Matriciais Amostragem em grades retangulares. Matriz (m,n) onde cada elemento é uma estrutura de dados associada à cor e outros componentes da imagem. Tipicamente, imagens digitais Matrizes de pixels Cada pixel representa uma cor Dados volumétricos Imagens médicas Cada pixel representa densidade ou intensidade de algum campo April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 23 Representações Vetoriais Permitem uma série de operações sem (quase) perda de precisão Transformações lineares / afim Deformações Por que quase? Estruturas de dados utilizam pontos e vetores cujas coordenadas são números reais É necessário usar aproximações Representação em ponto-flutuante Números racionais Complexidade de processamento = O (n o vértices / vetores) Exibição Dispositivos vetoriais Dispositivos matriciais (requer amostragem, i.e., rasterização) April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 24 12

Representações Matriciais Representação flexível e muito comum Complexidade de processamento = O (n o de pixels) Muitas operações implicam em perda de precisão (reamostragem) Ex.: rotação, escala Técnicas para lidar com o problema Ex.: técnicas anti-serrilhado (anti-aliasing) Exibição Dispositivos matriciais Dispositivos vetoriais (requer uso de técnicas de reconhecimento de padrões) April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 25 Conversão entre representações Repr. Vetoriais Rasterização, Scan conversion Reconhecimento de padrões Repr. Matriciais April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 26 13

Dispositivos Gráficos Dispositivos vetoriais Terminais gráficos vetoriais (obsoletos) Traçadores (plotters) Dispositivos virtuais Ex.: Linguagens de descrição de página (HPGL / Postscript) Rasterização implícita Dispositivos Matriciais Praticamente sinônimo de dispositivo gráfico Impressoras, displays, scanners, frame grabber April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 27 Displays Resolução espacial Tipicamente de 640x480 até 1600x1200 Tendência de aumento Resolução no espaço de cor Monocromático (preto e branco) Praticamente restrito a PDAs e equipamentos de baixo custo Tabela de cores Cada pixel é representado por um número (tipicamente 8 bits de 0 a 255) que indexa uma tabela de cores (tipicamente RGB 24 bits) Poucas (ex.: 256) cores simultâneas mas cada cor pode ser escolhida de um universo grande (ex.: 2 24 ) Problema da quantização de cores RGB Cor é expressa por quantidades discretas de vermelho (red), verde (green) e azul (blue) Tipicamente 24 bits (8 bits para cada componente) Quando o número de bits não é divisível por 3, a resolução do azul costuma ser menor que das outras 2 componentes April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 28 14

Dispositivos Vetoriais (1960...1985) Dispositivo Vetoriais de Retraçamento Comportamento do Fósforo April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 29 Dispositivos Saída Vetorial (1970...1985) Tektronix 4010 April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 30 15

Dispositivos de Saída Matricial (1980...) Displays Monocromáticos com 2 niveis (1 bit/pixel) Planos de bits com tabelas de tons de cinza April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 31 Dispositivos de Saída Matricial (1980...) Displays Coloridos Tabela de Cores April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 32 16

Dispositivos de Saída Matricial (1980...) Displays Coloridos Varredura (interlaced e non-interlaced) Pixel Colorido April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 33 Arquitetura de Sistemas Gráficos CPU Periféricos Arquitetura Simples Barramento (BUS) Memória Frame Buffer Controlador de vídeo Monitor April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 34 17

Arquitetura de Sistemas Gráficos CPU Periféricos Barramento (BUS) Arquitetura com processador gráfico Memória do Sistema Processador gráfico Memória Frame Buffer Monitor Controlador de vídeo April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 35 Processador (acelerador) gráfico Hardware especializado Uso de paralelismo para atingir alto desempenho Alivia a CPU do sistema de algumas tarefas, incluindo: Transformações Rotação, translação, escala, etc Recorte (clipping) Supressão de elementos fora da janela de visualização Projeção (3D 2D) Mapeamento de texturas Rasterização Amostragem de curvas e superfícies paramétricas Geração de pontos a partir de formas polinomiais Normalmente usa memória separada da do sistema Maior banda April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 36 18

Programação Gráfica À primeira vista: basta desenhar Uma subrotina para desenhar cada tipo de objeto Mas... Como fazer interação? Como estruturar a cena? Como controlar os atributos dos objetos? Como resolver problemas de visibilidade? Como suportar diversos dispositivos gráficos? Como fazer programas independentes dos sistemas operacionais? Ferramentas: APIs gráficas (ex.: OpenGL, PHIGS, Java3D) Camadas de interface com o S.O. / sistema de janelas April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 37 19