Você está na página 1de 72

Universidade do Estado do Amazonas UEA Escola Superior de Tecnologia EST

Introduo
Disciplina: Computao Grfica

Prof. Neide Alves nfalves@gmail.com

Introduo Computao Grfica

A computao grfica pode ser dividida em 3 sub-reas:

1. Sntese de imagens Produo de imagens a partir de especificaes geomtricas 2. Processamento de imagens Alterao de imagem (aumento de foco, contraste) 3. Anlise de imagens Obter da imagem especificaes ou primitivas geomtricas

Introduo Computao Grfica

Somado a esse contexto surgiu recentemente a Visualizao de Dados ou Visualizao Computacional, que consiste da representao grfica de dados numricos, tais como:

imagens mdicas, meteorologia, dados financeiros, etc.

Partilhando caractersticas de sntese, processamento e anlise de dados.

Sub-reas da Computao Grfica

Sntese de imagens

Processamento de imagens

Anlise de imagens

Visualizao Computacional ou de Dados

Computao Grfica
Consiste em encontrar parmetros descritivos que representem de modo sucinto informaes importantes.

Ou Computao Grfica Gerativa envolve a criao sinttica de imagens por computador a partir de dados dos objetos e cenas.

Figura 1.1. Grandes reas da Computao Grfica.


Computao Grfica - Vol. 2 - Cap. 1

Introduo

Relao entre as reas

Figura 1.2. Interao entre das diversas reas com a minerao em banco de dados, a Viso de Computacional e a Inteligncia Artificial.
Computao Grfica - Vol. 2 - Cap. 1

Introduo

Processamento de Imagens Digitais admite uma imagem como entrada que, depois de processada, produz outra imagem na sada, ou seja, os dados de entrada e de sada do processo so imagens.

Introduo
Processamento de Imagens

Processamento de imagem qualquer forma de processamento de dados no qual a entrada e sada so imagens tais como fotografias ou quadros de vdeo. Ao contrrio do tratamento de imagens, que preocupa-se somente na manipulao de figuras para sua representao final, o processamento de imagens um estgio para novos processamentos de dados tais como aprendizagem de mquina ou reconhecimento de padres. A maioria das tcnicas envolve o tratamento da imagem como um sinal bi-dimensional, no qual so aplicados padres de processamento de sinal.

Introduo
Processamento de Dados

Consiste em extrair informao de dados. A extrao de informao no nada mais do que uma anlise de contedo dos dados em questo e as relaes retiradas dessa anlise. O computador mais que um simples instrumento para resoluo dos problemas. Hoje em dia, ele amplamente utilizado para executar tarefas extensas e complexas que, se fossem feitas manualmente, exigiriam um tempo muito maior.

Introduo
Viso Computacional

a cincia ou tecnologia das mquinas que enxergam. Ela desenvolve teoria e tecnologia para a construo de sistemas artificiais que obtm informao de imagens ou quaisquer dados multi-dimensionais.

Introduo
Viso Computacional

Exemplos de aplicaes incluem o controle de processos (como robs industriais ou veculos autnomos), deteco de eventos, organizao de informao, modelagem de objetos ou ambientes e interao (atrelado a interao homem-computador).

Introduo
Viso Computacional

A viso computacional tambm pode ser descrita como um complemento da viso biolgica. Na viso biolgica, a percepo visual dos humanos e outros animais estudada, resultando em modelos em como tais sistemas operam em termos de processos fisiolgicos. Por outro lado, a viso computacional estuda e descreve sistemas de viso artificial implementados por hardware ou software.

Introduo
Computao Grfica

A computao grfica a rea da computao destinada gerao de imagens em geral - em forma de representao de dados e informao, ou em forma de recriao do mundo real. Ela pode possuir uma infinidade de aplicaes para diversas reas. Desde a prpria informtica ao produzir interfaces grficas para software, sistemas operacionais e sites na Internet, quanto para produzir animaes e jogos.

Histrico da Computao Grfica

At incio dos anos 80, a computao grfica era restrita e altamente especializada, devido ao alto custo do hardware, com poucos programas que exploravam grficos.
O advento de computadores pessoais de baixo custo, com terminais grficos de varredura, popularizou o uso de grficos na interao usurio-computador.

Histrico da Computao Grfica

Os displays de baixo custo possibilitaram o desenvolvimento de inmeros aplicativos baratos e fceis de usar, tais como: planilhas e editores de textos, imagens, programas de desenho.
As interfaces evoluram e criou-se o conceito de desktop. Essas interfaces permitiam, atravs do gerenciador de janelas (windows manager), criar e posicionar janelas que atuam como terminais virtuais, cada qual executando aplicativos independentemente.

Histrico da Computao Grfica

As interfaces permitem ao usurio executar vrios aplicativos simultaneamente, selecionando com um simples toque do mouse uma variedade de cones, e interagindo com buttons e menus dinmicos.

Utilidade da Computao Grfica

Atualmente a computao grfica altamente interativa, o usurio controla o contedo, a estrutura e aparncia dos objetos e imagens visualizadas na tela.
A computao grfica parte essencial de qualquer interface com o usurio, indispensvel para a visualizao de dados em 2D e 3D e tem aplicaes em reas como educao, cincias, engenharia, medicina, lazer, militar...

Tpicos de Introduo Computao Grfica


Sistemas Grficos Aplicaes da CG Hardware Grfico Resoluo Grfica Sistemas de Coordenadas

Sistemas Grficos

Oferecem interface entre o hardware e o software grfico, bibliotecas grficas de funes prontas. Exemplos:

GKS (Graphic Kernel System) PHIGS (Programmers Hierarchical Interactive Graphics System) OpenGL (GL - Graphics Library).

Aplicaes Computao Grfica


Interfaces Traado interativo de grficos Automao de escritrios e editorao eletrnica Projeto e desenho auxiliado por computador Simulao e animao para visualizao cientfica, lazer, arte e publicidade Controle de processos Cartografia Arte Grficos de apresentao

Computer Aided Design - CAD

Desenho Auxiliado por Computador o nome genrico de sistemas computacionais (software) utilizados pela engenharia, geologia, arquitetura e design para facilitar o projeto e desenho tcnicos

Hardware Grfico

Consiste essencialmente de dispositivos de entrada e sada (I/O) de dados grficos ligados a um computador. Recomenda-se memria secundria de alta capacidade de armazenamento, devido a manipulao de grandes quantidades de dados. Recomenda-se canal de comunicao de alta velocidade, local ou remoto, principalmente, para reduzir os tempos de espera.

Resoluo Grfica

Retngulo de visualizao:

malha retangular de posies endereveis (pontos ou pixels) horizontais e verticais distintas.

ndh: posies na horizontal ndv: posies na vertical width: largura em mm height: altura em mm

Sistemas de Coordenadas

O sistema de coordenadas em CG definido por uma matriz de pixels, que utilizada para quantificar os dados que esto sendo manipulados.
Os pixels so pontos endereveis por dois nmeros inteiros que do suas coordenadas horizontal e vertical, dcx e dcy, respectivamente.

Definies

Matematicamente, uma imagem digital uma funo f(x,y) discretizada tanto em coordenadas espaciais quanto em brilho.
Imagem uma funo escalar f(x,y): intensidade de qualquer coisa traduzida num valor inteiro, real ou complexo.

Definies

Uma imagem digital f[m,n] resulta de uma imagem analgica f(x,y) atravs de amostragem (digitalizao) Na realidade a funo f() a (x, y, z, t, ...)

Definies - exemplo

Elementos da Imagem

Os elementos da imagem consistem, essencialmente, das coordenadas dos pixels e da informao de cor de cada pixel. Esses dois elementos esto diretamente relacionados com

resoluo espacial (nmero de linhas x nmero de colunas da matriz de pixels) resoluo de cor (nmero de bits utilizado para armazenar o vetor de cor de cada pixels)

Elementos da Imagem

O nmero de componentes do pixel a dimenso do espao de cor utilizado. Dessa forma, cada pixel em uma imagem digital monocromtica tem uma nica componente. Uma imagem digital pode ser considerada como sendo uma matriz cujos ndices de linhas e de coluna identificam um ponto na imagem e o correspondente valor do elemento da matriz identifica o nvel de cinza naquele ponto.

Representao de Imagens

0 128

160 255

180 30

140

160

128

tons de cinza

Definies

Os elementos da matriz digital so chamados de elementos da imagem, elementos da figura, pixels ou pels, estes dois ltimos, abreviaes de picture elements.

Exemplos de Imagem Bitmap


Aqui voc v uma reproduo da famosa pintura "The Spirit of 76" feita toda com jujubas.

Imagine cada jujuba como um pixel e ento ser mais fcil imaginar como os pontos formam uma imagem.

Classificao de Imagens

As imagens digitais podem ser divididas em 2 classes


vetorial bitmap

A diferena entre estes dois formatos abismal, mas no se pode dizer que uma seja melhor que a outra pois tm objetivos diferentes.

Exemplos de Imagens Vetoriais

Exemplos de Imagens Vetoriais e Bitmap

Elementos da Imagem

Modelo de Imagem

O termo imagem refere-se a uma funo de intensidade luminosa bidimensional, denotada por:
f(x,y)

A funo f(x,y) representa o produto da interao entre


iluminncia i(x,y) Quantidade de luz incidindo na cena sendo observada. refletncia r(x,y) Quantidade de luz refletida pelos objetos na cena.

f(x,y) = i(x,y) . r(x,y)

onde: 0 < i(x,y) < 0 < r(x,y) < 1

Modelo de Imagem

A intensidade de um imagem monocromtica f nas coordenadas (x,y) ser denominada nvel de cinza no ponto (x,y). Seu valor estar no intervalo:
Lmin < L Lmax

Modelo de Imagem

O intervalo [Lmin, Lmax] denominado escala de cinza. Para [0, L], onde l=0 ser considerado Negro e l=L ser considerado Branco. Todos os valores intermedirios so tons de cinza variando continuamente entre branco e negro.

Digitalizao

Amostragem discretizao espacial (resoluo - pixel(NxM)) Quantizao discretizao em amplitude (escala de cinza)

Quantidade de bits

f(x,y) = matriz NxM Os valores de N, M (dimenso da matriz) e o nmero de nveis de cinza (G) para cada pixel so dados por:

N = 2 n, M = 2k e G = 2m

Quantidade de bits

O nmero de bits (b) necessrios para armazenar uma imagem digitalizada obtido pelas Equaes:
b=NxMxm b = N2m (Se M=N)

Quantidade de bits - Exemplo

Seja uma imagem de 128 x 128 pixels com 64 nveis de cinza


G = 2m = 64 => m = 6 (Qtde de pixels p/representar 64 cores) b = 128 x 128 x 6 b = 98.304 bits ou 12.288 bytes ou 12 kb

Relao bit x byte


Nmero de bits de armazenamento para vrios valores de N e m

Nmero de bytes de 8 bits de armazenamento para vrios valores de N e m

N - Tamanho m - Cores

Resoluo e Quantizao

Resoluo Diferente (Tamanho) Quantizao Igual (Nveis de Cinza)

a) 1024 x 1024 pixels b) 512 x 512 pixels c) 256 x 256 pixels d) 128 x 128 pixels e) 64 x 64 pixels

f) 32 x 32 pixels
Nveis de cinza = 256 = 28 Os pixels foram duplicados para manter a mesma rea de viso

2002 R. C. Gonzalez & R. E. Woods

Resoluo e Quantizao

Resoluo Diferente (Tamanho) Quantizao Igual (Nveis de Cinza)

32 x 32 64 x 64

128 x 128

256 x 256

Resoluo e Quantizao

Resoluo Igual (Tamanho) Quantizao Diferente (Nveis de Cinza)

256 tons de cinza

128 tons de cinza

Resoluo e Quantizao

Resoluo Igual (Tamanho) Quantizao Diferente (Nveis de Cinza)

16 tons de cinza

8 tons de cinza

4 tons de cinza

2 tons de cinza

Resoluo Grfica

Retngulo de visualizao

Resoluo Grfica de um dispositivo o nmero de posies (ou pontos, ou pixels) horizontais e verticais que ele pode distinguir.

Existem 4 parmetros que definem a resoluo


ndh - nmero de posies endereveis horizontalmente ndv - nmero de posies endereveis verticalmente width - largura do retngulo de visualizao em mm height - altura do retngulo de visualizao em mm

Resoluo Grfica

A partir dos 4 parmetros podemos calcular:

Resoluo horizontal:

horiz_res = ndh / width

Tamanho do ponto horizontal:

horiz_dot_size = width / ndh

Resoluo vertical:

vert_res = ndv / height

Tamanho do ponto vertical:

vert_dot_size = height / ndv

Resoluo Grfica

Total de pontos endereveis:

total_nr_dots = ndh x ndv

Resoluo de rea:

area_res = total_nr_dots /(width x height)

Razo de aspecto grfica:

aspect_ratio = vert_dot_size / horiz_dot_size

Razo de aspecto fsica:

physical_aspect_ratio = height / width

Sistemas de Coordenadas

Na CG necessrio definir sistemas de coordenadas para quantificar os dados sendo manipulados (matriz de pixels). Os pixels so endereveis por dois nmeros inteiros que do suas coordenadas horizontal e vertical (dcx, dcy) respectivamente.

Sistemas de Coordenadas

Endereamento de pixels (fsico): 0 <= dcx <= ndh - 1 0 <= dcy <= ndv - 1 Coordenadas normalizadas do dispositivo: 0 <= ndcx <= 1 0 <= ndcy <= 1 Coordenadas do mundo ou do usurio: xmin <= x <= xmax ymin <= y <= ymax

Sistemas de Coordenadas
Coordenadas do mundo (x,y) Coordenadas de entrada do dispositivo (DCX,DCY) ndcx = Coordenadas de sada do dispositivo (DCX,DCY) y - ymin ymax - ymin

NDC (NDCX, NDCY)

x - xmin xmax - xmin

ndcy =

Dispositivos

Dispositivos de Visualizao

Dispositivos Grficos Vetoriais 1.Traadores digitais 2.Dispositivos de vdeo vetoriais (Vector Refresh display tubes) 3.Terminais CRT com memria
Dispositivos Grficos Matriciais 1.Impressoras 2.Dispositivos de vdeo de varredura

Dispositivos Grficos Vetoriais


1.Traadores Digitais (Plotters)

So dispositivos eletrnicos que produzem desenho pelo movimento de uma caneta sobre papel. Nos traadores de mesa um brao mecnico movimenta-se por translao sobre o papel fixo, e nos traadores de rolo, o brao fixo e o papel movimenta-se atravs de um rolo. Possuem programao e controle similares, atravs de coordenadas x e y (abcissa e ordenada)

Dispositivos Grficos Vetoriais


2.Dispositivos de vdeo vetoriais

No incio da CG utilizava-se o CRT (Cathode Ray Tube), usado em osciloscpios, a entrada so duas voltagens, x e y, o que direcionava um feixe de eltrons, formando linhas em uma superfcie de fsforo que perde o brilho aps alguns milissegundos, necessitando ser continuamente retraado (refreshing)

Dispositivos Grficos Vetoriais


2.Dispositivos de vdeo vetoriais

Converso Digital-Analgica para Visualizao num CRT O tubo no exige muita memria para manter uma imagem complexa, construda por segmentos de reta. Isso era muito importante pois a memria era muito cara.

Dispositivos Grficos Vetoriais


2.Dispositivos de vdeo vetoriais

Cathode Ray Tube (CRT)

Dispositivos Grficos Vetoriais


3.Terminais CRT com memria

Direct View Storage Tubes - so tubos especiais com maior persistncia no traado. um tubo CRT comum com dois elementos adicionais:

um canho espalhador de eltrons uma mscara montada sobre a superfcie do fsforo, entre a tela e os canhes.

A tecnologia DVST foi substituda pela de dispositivos de varredura matriciais

Dispositivos Grficos Vetoriais

Primitivas em Dispositivos Vetoriais

moveto(dcx, dcy) Move a CP (Current Position) para o ponto definido drawto( dcx, dcy ) Traa uma linha at o ponto definido, que passa a ser a nova CP

Dispositivos Grficos Matriciais


1.Impressoras

Impressoras Matriciais utilizam um conjunto de agulhas fixadas em um cabeote mvel, que pressionam uma fita sobre o papel.
Impressoras Grficas utilizam diversas tcnicas, sendo as mais comuns jato de tinta, onde o cabeote tem um pequeno bico que expele tinta, e laser, onde um feixe de raios laser varre uma chapa deixando uma carga eletrosttica, impregnando o papel com tintura (tonner).

Dispositivos Grficos Matriciais


2.Dispositivos de Video de Varredura

Raster Scanning VDUs - utilizam a mesma tecnologia das TVs, um terminal simples requer:

Memria digital (frame buffer ou memria de imagem Imagem em uma matriz de pixels) Controlador de vdeo (display controller) Monitor

Dispositivos Grficos Matriciais


2.Dispositivos de Video de Varredura

Representao do Frame Buffer

Monitor (CRT varredura colorido)

Num monitor colorido cada pixel recoberto por 3 tipos de fsforo, que produzem as cores vermelho, verde e azul (RGB). Ao invs de 1 feixe de eltrons existem 3, um para cada cor. Entre a tela de fsforo e os feixes de eltrons existe uma barreira de metal (shadow mask ou metal mask), que por meio de buracos em posies estratgicas, faz cada feixe atingir o fsforo correspondente.

CRT por varredura colorido

Controlador de vdeo

Display Controller a interface que transfere o contedo do frame buffer para o monitor, repetidamente, pelo menos 15 vezes por segundo, para manter a imagem estvel e reduzindo o flickering (cintilao)
A transferncia implica numa Converso Digital-Analgica (DAC)

Varredura por rastreio fixo

Exerccio

1.Calcule, para uma tela de 640x480 pixels, com 30x24 cm, os seguintes valores:

ndh, ndv, width e height Resoluo horizontal (horiz_res) Tamanho do ponto horizontal (horiz_dot_size) Resoluo vertical (vert_res) Tamanho do ponto vertical (vert_dot_size) Total pontos endereveis (total_nr_dots) Resoluo de rea (area_res) Razo de aspecto grfica (aspect_ratio) Razo de aspecto fsica (physical_aspect_ratio)