Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de...

Post on 17-Apr-2015

102 views 0 download

Transcript of Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de...

Implementação do Filtro EWA para redução de aliasing em mapeamento de

textura

Aluno: Leonardo de Oliveira Martinsleomartins82@gmail.com

Rio de Janeiro, 08/05/2007

Pontifícia Universidade Católica do Rio de Janeiro – PUC-RJDisciplina: Fundamentos de Computação Gráfica

Prof. Marcelo Gattass

Introdução Mapeamento de texturas

Processo no qual uma imagem (textura) é mapeada em uma superfície tridimensional

Vantagem: Realismo Baixo custo adicional

Problema: Aliasing

Introdução Aliasing

Efeito indesejável ocasionado pela reamostragem de um sinal de alta frequencia em baixas resoluções

Introdução Aliasing

Solução Uso de técnicas para remover

componentes do sinal com alta frequencia, para que o dispositivo de visualização possa exibi-lo corretamente

Filtros de Reamostragem Limitam a banda do sinal

Introdução

Filtro EWA Consiste em um filtro de

convolução direta, no qual as calcula diretamente uma média ponderada de amostras da textura

Vantagem Performance Baixo custo computacional

Filtro EWA Funcionamento

Cada pixel na tela é visto como um círculo de raio >0

O pixel é mapeado no espaço de textura e o círculo torna-se, então, uma elipse

Os valores dos texels contidos na elipse são calculados e filtrados como o novo valor do pixel

Objetivo Implementar o filtro EWA (Elliptical

Weighted Average) para tentar a redução de aliasing em um mapeamento de textura de um tabuleiro de xadrez

Implementação A implementação pode ser dividida

em 1 – Cálculo da elipse 2 – Escolha do filtro 3 – Percorrer a elipse, filtrando os

texels 4 – Determinar a cor do pixel

Implementação 1 – Cálculo da elipse

E(u,v) = A u^2 + B uv + C v^2 = F     onde,  (u,v) = (0,0) é o centro

da elipse

Implementação

A = Vx^2 + Vy^2 B = -2(UxVx + UyVy) C = Ux^2 + Uy^2 F = (Ux^2 + Vx^2) * (Uy^2 + Vy^2)

Onde Ux,Uy,Vx,Vy formam o jacobiano da transformação (x,y)->(u,v)

Implementação 2 – Escolha do

filtro Filtro Gaussiano

rerw ),(

Implementação 3 – Percorrer a elipse, fazendo a

filtragem dos texels Se E(u,v)<=F , o pixel está na elipse Então:

texel_value_sum = texel_value_sum + h(E(u,v))*texel_value(u,v)

weight_sum = weight_sum + h(E(u,v))

Implementação 4 – Determinar a cor do pixel

A cor do pixel é a soma dos texels normalizada pela soma dos valores filtrados

pixel_color = texel_value_sum/weight_sum Fazer para os três componentes R, G e

B

Implementação

Implementação

Referências Paul S. Heckbert, Fundamentals of

Texture Mapping and Image Warping, Universaty of California, Berkley, 1989

Paul S. Heckbert, Survey of Texture Mapping. Disponível em www.cse.ucsc.edu/classes/cmps160/Spring05/heckbert_texsurv.pdf