Introdução ao Processamento Gráfico

Documentos relacionados
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 e Áreas Correlatas

Sistemas de Cores. Leandro Tonietto Processamento Gráfico Jogos Digitais set-09

Computação Gráfica e Áreas Correlatas

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

Modelagem Geométrica

Iluminação e Sombreamento

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

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

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

Computação Gráfica Introdução

Computação Gráfica - 01

Mapeamento de Textura

O que é CG?? Soraia Raupp Musse

Prof. Daniel Hasse. Multimídia e Hipermídia

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

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

Curvas e Superfícies Paramétricas

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

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. Prof. MSc. André Yoshimi Kusumoto

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

Realismo Visual. Aula 11 UFF

Reconstrução e Síntese de Cenários Tridimensionais a partir de Imagens Estereoscópicas

Ciências da Computação Disciplina:Computação Gráfica

Multimídia. Conceitos Básicos (Parte I)

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

CIV2802 Sistemas Gráficos para Engenharia

COMPUTAÇÃO GRÁFICA. Ana Paula Mandelli

António Costa. Paulo Roma Cavalcanti

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

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

Curso online de Fundamentos em Android. Plano de Estudo

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

SISTEMAS MULTIMÍDIA PROF MOZART DE MELO

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

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

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

CRÉDITOS DO CURSO. Carga Horária Créditos IN1030 Seminários 30 2

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

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

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

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

Aplicação de Tags em Objetos de Sistemas de Visualização em Tempo Real

Reflexões e Sombras em Superfícies Planares Animação e Visualização Tridimensional Prof. João Madeiras Pereira Instituto Superior Técnico 2005/2006

Desde o surgimento dos primeiros jogos eletrônicos em meados dos anos 50, uma infinidade de aparatos eletrônicos foram desenvolvidos, principalmente

4 Impostores com Relevo

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

Computação Gráfica II

Computação Gráfica II

Grade Curricular do Curso de Graduação em Engenharia de Computação

Imagem Digital. Claudio Carvilhe

Visão Computacional. Prof. Leandro Augusto Frata Fernandes TCC Introdução à Ciência da Computação (2012.

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

Aprender os conceitos de sistemas multimídia Conhecer os elementos multimídia Desenvolver projetos multimídia

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

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

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

Visão computacional. Juliana Patrícia Detroz Orientador: André Tavares Silva

Bitmap X Vetorial OS DOIS PRINCIPAIS TIPOS DE ARQUIVOS NA COMPUTAÇÃO GRÁFICA

Processamento Digital de Imagens

Transcrição:

Introdução ao Processamento Gráfico Leandro Tonietto Processamento Gráfico - Unisinos ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto ago-09

Sumário Introdução e conceitos Resumo das linhas de pesquisa Aplicações e motivação para CG Breve histórico da CG Esquema conceitual CG Gameloop 26-ago-09 Leandro Tonietto 2

Introdução Processamento gráfico: É o processamento de informações visuais, tanto para geração de imagens, quando obtenção de dados. Exemplos: Geração de filmes através de computador Correção de olhos vermelhos em fotos Aplicação de filtros de imagens Geração de desenhos animados no computador Detecção e reconhecimento de objetos em imagens Geração de cenas em jogos 3D Modelagem de sólidos baseado em física Modelos 3D para prototipação de matrizes. Simulação de ambientes nocivos Visualização de gráficos sobre dados Etc. 26-ago-09 Leandro Tonietto 3

Introdução Imagine um sistema de computador no qual o usuário possui recursos avançados de matemática para produzir modelos baseados em física. Imagine o mesmo pode definir através de números quaisquer propriedades que forem necessárias para representar o modelo físico. Como poderia o usuário trabalhar desta forma sem ter um visualização do modelo criado? O quão difícil é para usuário interagir com este sistema manual? Processamento gráfico é a área da ciência da computação que trata deste tipo de problema. Ela busca tratamento/geração de dados visuais. Imagem ou representação gráfica de modelos. 26-ago-09 Leandro Tonietto 4

Introdução Divide-se em duas grandes áreas (ou linhas de pesquisa): Processamento de imagens: Tratamento de imagens Visão computacional Computação Gráfica: Síntese de imagens Pipeline - processo ou cadeia de renderização: Pipeline 2D Pipeline 3D 26-ago-09 Leandro Tonietto 5

Introdução Esquema conceitual: Dados Análise Síntese Imagens 26-ago-09 Leandro Tonietto 6

Introdução Esquema conceitual: Reconhecimento de padrões Dados Modelagem Análise Síntese Tratamento Visualização/ Síntese Imagens 26-ago-09 Leandro Tonietto 7

Introdução Esquema conceitual: Reconhecimento de padrões Análise Dados Modelagem Tratamento Computação Gráfica Síntese Visualização/ Renderização Processamento de Imagens Imagens 26-ago-09 Leandro Tonietto 8

Processamento de imagens Processamento de imagens visa a obtenção de informações da imagem para produção de dados a respeito da mesma ou modificação da imagem Tratamento de imagens: Trata da geração de novas imagens a partir de imagens de entrada. A rigor não extrai informações da imagem. Exemplos de aplicativos comerciais: GIMP (software livre), Adobe Photoshop, Paint Shop Pro,... 26-ago-09 Leandro Tonietto 9

Processamento de imagens Tratamento de imagens: Para efeitos artísticos ou correção/destaque de cores da imagem Filtro de imagem que troca uma cor por outra Filtro de imagem aplica efeitos de foto envelhecida 26-ago-09 Leandro Tonietto 10

Processamento de Imagens Tratamento de imagens: Para correção, melhoria ou destaque de informações relevantes da imagem Filtro de correção gama 26-ago-09 Leandro Tonietto 11

Processamento de Imagens Visão Computacional É um processo de analisar a imagem e obter dados que possuem algum significado. Exige um alto processamento computacional para extrair dados de uma imagem. Normalmente, implica em percorrer todos os pontos da imagem e, para cada ponto, analisar a sua vizinhança. Exemplo: detecção de rostos, robótica, reconhecimento de placas de veículos, autenticação baseada em imagens, etc. 26-ago-09 Leandro Tonietto 12

Processamento de Imagens Visão Computacional Algoritmo de detecção de regiões (pixels conectados) com a tonalidade da pela Detecção de pele usando Redes Neurais Artificiais (Bittencourt & Osório, 2002) 26-ago-09 Leandro Tonietto 13

Processamento de Imagens Visão Computacional Sistema de detecção BD Resultado: INS1457 - Fulano de Tal - AUTORIZADO Sistema de reconhecimento de placas e autenticação de veículos para condomínios: Câmera fotografa o veículo e sistema faz a detecção e o reconhecimento dos números da placa. 26-ago-09 Leandro Tonietto 14

Computação Gráfica É um processo de sintetizar imagens a partir de um conjunto de dados. Transformação de dados em imagem. Dados são a parte do modelo, são a descrição da cena ou imagem a ser sintetizada. O processo de síntese de dados em imagem requer um alto custo computacional. A CG está intimamente ligada a idéia de se obter o melhor resultado com o menor custo computacional possível. Este paradoxo fomenta as pesquisas na área. Muitos algoritmos são criados com este intuito: Algoritmos de compressão de imagens, redução de malha poligonal, representação de objetos em mapas ou cenários de jogos, mapeamento de texturas,... Computação Gráfica não é só 3D, é 2D também. 26-ago-09 Leandro Tonietto 15

Computação Gráfica Modelagem em CG: Os dados ou modelos em CG são: B(x,y,z) C(x,y,z) A(x,y,z) Pontos Polígono Malha (Mesh) Pontos são conectados para formarem polígonos, quem são conectados para formar algum objeto... 26-ago-09 Leandro Tonietto 16

Computação Gráfica Modelagem em CG: 26-ago-09 Leandro Tonietto 17

Computação Gráfica O custo computacional para gerar o teapot do exemplo anterior é pequeno, pois o objeto possui poucos polígonos e quase nenhum detalhe de preenchimento/sombreamento. Como seria o custo para gerar um objeto como este? São mais de 77 mil pontos e aproximadamente 25 mil polígonos! Requer muito processamento. E este não é modelo muito detalhado; modelo mais perfeccionistas possuem milhões de pontos. Veremos algoritmos de recorte e preenchimento de polígono, que são utilizados de forma a otimizar o custo computacional. 26-ago-09 Leandro Tonietto 18

Computação Gráfica Outros assuntos a serem tratados durante o semestre: Câmera sintética: processo de renderização de objetos numa cena. Representação de mundos virtuais: mundos ou mapas de jogos digitais. Visões de jogos 2D e 3D, como são programados efeitos para simular realismo. Animação com sprites Entre outros tópicos 26-ago-09 Leandro Tonietto 19

Computação Gráfica 26-ago-09 Leandro Tonietto 20

Computação Gráfica Esquema conceitual da CG: Controlador de visualização Em geral via software Frame buffer Controlador de vídeo 26-ago-09 Leandro Tonietto 21

Computação Gráfica Frame buffer: É uma porção de memória usada para criar o pixel map que será enviado para o monitor. 1024x768x24 = 2,25 Mb 1024x768x16 = 1,5 Mb 800x600x24 = 1,37 Mb 320x200x8 = 62,5 Kb 140x140x1 = 2,4 Kb Double buffering: técnica que utiliza um buffer auxiliar para criar imagem enquanto um buffer é desenhado (alternância). Usado para evitar o flicker (tremer a imagem) 26-ago-09 Leandro Tonietto 22

Computação Gráfica Esquema conceitual da CG: Dados 2D/3D Modelo da Aplicação Aplicação OpenGL/GLUT/SDL/DirectX Sistema Gráfico Manipula dados e define o que será desenhado e aonde. 26-ago-09 Leandro Tonietto 23

Computação Gráfica Aplicações em CG: Interfaces gráficas Gráficos interativos em negócios, ciência e tecnologia Cartografia (principalmente na área de geoprocessamento) Medicina CAD (Computer-Aided Design) / CAM(Computer-Aided Manufacturing) Sistemas multimídia 26-ago-09 Leandro Tonietto 24

Computação Gráfica Aplicações em CG: Simulação e animação para visualização científica Entretenimento Cinema e...... Jogos Digitais! 26-ago-09 Leandro Tonietto 25

Computação Gráfica RenderPark gcad3d VISIT chimera 26-ago-09 Leandro Tonietto 26

Computação Gráfica O Senhor dos Anéis - As Duas Torres Half Life 2 King Kong Vídeo projeto PetroSim 26-ago-09 Leandro Tonietto 27

Referências bibliográficas 1. WRIGHT Jr., Richard S.; LIPCHAK, Benjamin; HAEMEL, Nicholas. OpenGL Superbible: Comprehensive Tutorial and Reference. 4ed.: Addison-Wesley. 2007. 2. FOLEY, J.D. et al. Computer graphics: principles and practice. Reading: Addison- Wesley, 1990. 3. TONIETTO, Leandro; WALTER, Marcelo. Análise de Algoritmos para Chroma-key. Unisinos, 2000. 4. BITTENCOURT, João. Apresentação de introdução ao processamento gráfico. Disponível para download no site da disciplina. 26-ago-09 Leandro Tonietto 28