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

17
Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins [email protected] Rio de Janeiro, 08/05/2007 Pontifícia Universidade Católica do Rio de Janeiro – PUC- RJ Disciplina: Fundamentos de Computação Gráfica Prof. Marcelo Gattass

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

Page 1: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

textura

Aluno: Leonardo de Oliveira [email protected]

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

Page 2: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Introdução Mapeamento de texturas

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

Vantagem: Realismo Baixo custo adicional

Problema: Aliasing

Page 3: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Introdução Aliasing

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

Page 4: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 5: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Introdução

Page 6: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 7: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 8: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 9: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 10: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 11: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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)

Page 12: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Implementação 2 – Escolha do

filtro Filtro Gaussiano

rerw ),(

Page 13: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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))

Page 14: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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

Page 15: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Implementação

Page 16: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

Implementação

Page 17: Implementação do Filtro EWA para redução de aliasing em mapeamento de textura Aluno: Leonardo de Oliveira Martins leomartins82@gmail.com Rio de Janeiro,

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