29
Introdução e Conceitos Básicos Disciplina: Introdução à Computação Gráfica Prof. Kelson Rômulo Teixeira Aires Bacharelado em Ciência da Computação DIE - CCN - UFPI Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 1 / 29

02.introducao a computação gráfica

Embed Size (px)

Citation preview

Page 1: 02.introducao a computação gráfica

Introdução e Conceitos BásicosDisciplina: Introdução à Computação Gráfica

Prof. Kelson Rômulo Teixeira Aires

Bacharelado em Ciência da ComputaçãoDIE - CCN - UFPI

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 1 / 29

Page 2: 02.introducao a computação gráfica

Motivação

A Computação Gráfica (CG) está presente em diversossegmentos da atividade humana;

Por exemplo, nas artes, medicina, arquitetura, segurança pública,propaganda, processamento de dados, lazer, educação, etc;

Praticamente tudo que poderíamos realizar por meios tradicionaispode ser tratado mais rápida e eficientemente com a CG.

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 2 / 29

Page 3: 02.introducao a computação gráfica

Conceitos Básicos

Imagens geradas por computador, revistas, jogos, web, cinema,etc.

Ferramentas:I Hardware: monitores, placas, scanners

I Software: bibliotecas (OpenGl, DirectX, etc)

Campos de estudo: Programação, Matemática, Arte, Medicina,Engenharia, Meteorologia

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 3 / 29

Page 4: 02.introducao a computação gráfica

Aplicações

Desenho Assistido por Computador (CAD);

Sistemas de Informações Geográficas (GIS);

Visualização Científica;

Visualização Médica;

Educação;

Entretenimento.

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 4 / 29

Page 5: 02.introducao a computação gráfica

Primeira geração: Wireframe

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 5 / 29

Page 6: 02.introducao a computação gráfica

Segunda geração: Sólidos com sombreamento

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 6 / 29

Page 7: 02.introducao a computação gráfica

Terceira geração: Texturização

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 7 / 29

Page 8: 02.introducao a computação gráfica

Quarta geração: Programação

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 8 / 29

Page 9: 02.introducao a computação gráfica

Quinta geração: Iluminação global

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 9 / 29

Page 10: 02.introducao a computação gráfica

Áreas da Computação Gráfica

Sendo uma das grandes áreas da Ciência da Computação,podemos dividir a Computação Gráfica em três subáreas:

I Síntese de ImagensF representação visual de objeto criado por computador a partir de

especificações geométricas e visuais de seus componentesI Processamento de Imagens

F tratamento da imagem em sua forma digital, suas transformações emelhoramentos

I Análise de ImagensF especificação dos componentes da imagem a partir de sua

representação visual

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 10 / 29

Page 11: 02.introducao a computação gráfica

Áreas da Computação Gráfica

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 11 / 29

Page 12: 02.introducao a computação gráfica

Dimensões Matemáticas

O conceito de dimensão permite várias definições, conforme aárea de aplicação ou interesse. No sentido comum pode referir-seao tamanho ou extensão de um objeto;

Neste caso, por exemplo, um simples ponto possui dimensãozero, enquanto que uma linha, seja ela reta ou curva, possuidimensão 1;

Uma área superficial possui duas dimensões, enquanto que umcerto volume é tridimensional.

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 12 / 29

Page 13: 02.introducao a computação gráfica

Dimensões para Computação Gráfica

Se uma representação (imagem) é realizada sobre uma superfícieplana ela é dita ser de 2 dimensões (2D), uma vez que o espaçoplano requer dois parâmetros para identificar seus pontos.

Se desejamos representar objetos dispostos espacialmente entãodizemos que a imagem é de 3 dimensões (3D).

Uma vez que os dispositivos de saída gráfica mais comuns sãodispositivos (2D), mesmo as cenas manipuladas em (3D) devemser reduzidas, por projeção, para imagens (2D).

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 13 / 29

Page 14: 02.introducao a computação gráfica

Noções de EspaçoSistema de Coordenadas:

I Através dos eixos X e Y do Plano Cartesiano é possívelrepresentar um ponto em qualquer lugar de um espaçobidimensional (2D)

I Adicionando um terceiro eixo z ao sistema de coordenadaspodemos representar um ponto em qualquer lugar do espaçotridimensional X, Y e Z

y

x

z

0

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 14 / 29

Page 15: 02.introducao a computação gráfica

Sistemas de CoordenadasPodem ser usados diferentes sistemas de coordenadas. Fornecendouma referência em termos de medidas do tamanho e posição

Coordenadas Esféricas: raio e dois ângulosCoordenadas Cilíndricas: raio, ângulo e comprimentoCoordenadas Polares: raio e ângulo

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 15 / 29

Page 16: 02.introducao a computação gráfica

Sistemas de Referência

Sistemas de coordenadas cartesianas com finalidade específica;

Dois aspectos principais a serem definidos:I unidade de referênciaI limites extremos dos valores aceitos para descrever os objetos

Alguns sistemas recebem denominações especiais.

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 16 / 29

Page 17: 02.introducao a computação gráfica

Sistemas de Referência

Sistema de Referência do UniversoI utilizado para descrever os objetos em termos das coordenadas

utilizadas em determinada aplicaçãoI cada aplicação especifica seu SRU

Sistema de Referência do ObjetoI cada objeto como uma cópia menor do universo onde está inseridoI centro do sistema de coordenadas como sendo o seu centro de

gravidadeSistema de Referência do Dispositivo

I coordenadas podem ser fornecidas diretamente para umdispositivo de saída

I hardware o sistema de coordenadas depende da resoluçãopossível e da configuração definida pelo usuário (resolução)

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 17 / 29

Page 18: 02.introducao a computação gráfica

Sistema de Referência Normalizado

Utiliza coordenadas normalizadasI valores entre 0 e 1

Serve como um SR intermediário entre o SRU e o SRD

Principal função: tornar a geração das imagens independente dodispositivo

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 18 / 29

Page 19: 02.introducao a computação gráfica

Transformações entre os Sistemas

Objetivo: visualização de dados em um dispositivo qualquerNecessidade: definir razões e proporções entre cada um dossistemasConsequência: aproximações resultarão em perdas

Sistema de Referência

do Universo

Sistema de Referência Sistema de Referência Sistema de Referência

do Objeto Normalizado do Dispositivo

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 19 / 29

Page 20: 02.introducao a computação gráfica

Primitivas Geométricas

PontoI define uma coordenada (x,y,z) no espaço tridimensional e apenas

isso, ele não possui tamanho e não possui formaLinha

I consiste em todos os pontos entre quaisquer dois pontos distintos,e é definida pelos mesmos

I toda linha tem um comprimento, mas nenhuma possui largura ouprofundidade, significando que possui apenas uma dimensão

TriânguloI consiste em todos os pontos situados entre três pontos no espaço

não colinearesI todo triângulo possui altura e largura definidas, mas nenhum possui

profundidade, significando que possui apenas duas dimensõesI tipo mais simples de polígono

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 20 / 29

Page 21: 02.introducao a computação gráfica

Polígonos e PoliedrosPolígono: reunião de um número finito de regiões triangularesnão-sobrepostas e coplanares;Um conjunto de polígonos, no mesmo plano, forma uma imagem2D;Placas de vídeo trabalham desenhando triângulo por triângulo;Poliedro: conjunto de polígonos que cercam uma parte do espaçotridimensional;O poliedro possui altura, largura e profundidade;Primitiva a ser utilizada para criar imagens 3D.

Polígonos Poliedro

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 21 / 29

Page 22: 02.introducao a computação gráfica

Percepção Tridimensional

Percepção da profundidade em imagens tridimensionais.Informações Monoculares

I PerspectivaI Conhecimento prévio do objetoI OclusãoI Densidade de texturasI Reflexão da luzI Sombras

Informações Visuais Oculo-monotorasI Acomodação e Vergência

Informações Visuais Estereoscópicas

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 22 / 29

Page 23: 02.introducao a computação gráfica

Representações Gráficas

Gráficos Vetoriais: coleções de objetos geométricosI pontosI retasI curvasI planosI polígonos

Gráficos Matriciais: coleções de objetos geométricosI amostragem em grades retangularesI tipicamente, imagens digitaisI matrizes de pixelsI pixel representa uma cor: densidade ou intensidade de algum

campoI dados volumétricosI imagens médicas

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 23 / 29

Page 24: 02.introducao a computação gráfica

Representação Vetorial

Permite uma série de operações sem (quase) perda de precisãoI transformações lineares / afimI deformações

Por que “quase”?I estruturas de dados utilizam pontos e vetores cujas coordenadas

são números reaisI necessário usar aproximações: representação em ponto-flutuante,

números racionais

Complexidade de processamento = O (no vértices / vetores)

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 24 / 29

Page 25: 02.introducao a computação gráfica

Representação Matricial

Representação flexível e muito comum

Complexidade de processamento = O (no de pixels)

Muitas operações implicam em perda de precisão(reamostragem)

I Ex.: rotação, escala

Técnicas para lidar com o problemaI Ex.: técnicas anti-serrilhado (anti-aliasing)

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 25 / 29

Page 26: 02.introducao a computação gráfica

Representação Vetorial e Matricial: Exibição

Representação Vetorial

Representação Matricial

Rasterização Reconhecimentode Padrões

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 26 / 29

Page 27: 02.introducao a computação gráfica

Arquitetura de Sistemas Gráficos

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 27 / 29

Page 28: 02.introducao a computação gráfica

Arquitetura de Sistemas Gráficos

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 28 / 29

Page 29: 02.introducao a computação gráfica

Processador Gráfico

Hardware especializado

Uso de paralelismo para atingir alto desempenho

Alivia a CPU do sistema de algumas tarefas, incluindo:I transformações: rotação, translação, escala, etcI recorte (clipping): supressão de elementos fora da janela de

visualizaçãoI projeção (3D→ 2D)I mapeamento de texturasI rasterizaçãoI amostragem de curvas e superfícies paramétricas

Normalmente usa memória separada

Kelson Aires ([email protected]) Int. à Comp. Gráfica - Introdução 29 / 29