Elliptical Weighted Average Filter Bruno Tenório Ávila César Morais Palomo

Preview:

Citation preview

Elliptical Weighted Average FilterBruno Tenório ÁvilaCésar Morais Palomo

Introdução - Warping Deformação de uma imagem dado um mapeamento

entre o espaço de origem e destino; Problemas:

magnificação – duplica informação (Serrilhado); minimificação – perde informação (Aliasing);

Elliptical Weighted Average Filter Características:

filtro de Resampling: reconstrução – discreto para contínuo; warping – distorção; pré-filtragem – passa-baixa; amostragem – contínuo para discreto;

filtro Anisotrópico – dependente de direção (ao contrário de isotrópico);

Idéia básica: projeta uma Gaussiana Circular gerando uma elipse no

plano da textura; calcula a cor ponderando as cores dos texels contidos no

interior da elipse;

Mapeamento da Textura na Tela

Mapeamento da Textura na Tela

Mapeamento da Textura na Tela

Mapeamento da Textura na Tela

Evitando Aliasing

Evitando Aliasing

Evitando Aliasing

Formato da Gaussiana

Algoritmo do Filtro EWAcalculeHomography;calculeWeights;

for (y = 0; y < h; y++){

for (x = xl; x < xr; x++){

calculeJacobianMatrix;calculeEllipseCoeficients;calculeEllipseCenter;calculeEllipseBoundingBox;calculeColor;drawPixel;

}xl += dxl;xr += dxr;

}

Matriz Inversa da Homografia Utilizada para mapear os pixels (x,y) da tela

para os pixels da textura (u,v);

1

ih gf edcb a

H

ihygxfeydxcbyax

yx

Hwvwuw

1

1

ihygxfeydxv(x,y)

ihygxcbyaxyxu

),(

Algoritmo de Cálculo dos Pesosfor (i = 0; i < WTAB_LENGTH_VALUE; i++) {

r = i / (double) (WTAB_LENGTH_VALUE - 1);WTAB[ i ] = exp( - ALPHA_VALUE * r);

}

OBS: Os valores de WTAB variam entre 0 e 1;

Cálculo da Matriz do Jacobiano

yv

xv

yu

xu

J

22 ihygx

gcaibgahyihygx

cbyaxgihygxax,yuxx

u

22 ihygx

hcbiahbgxihygx

cbyaxhihygxbx,yuyy

u

22 ihygx

gfdiegdhyihygx

feydxgihygxdx,yvxx

v

22 ihygx

hfeidhegxihygx

feydxhihygxex,yvyy

v

Cálculo dos Coeficientes da Elipse Seja:

Definimos a equação da elipse centrada em (0,0) como:

EWA normal: EWA de alta qualidade:

yv V

xvV

yuU

xuU yxyx

FCVBUVAU 22

2**

**

2

**

xyyx

yyxx

yyxx

yyxx

VUVUF

UUUUC

*VU*VU*B

VVVVA

4*

1**

2

1**

2BCAF

UUUUC

*VU*VU*B

VVVVA

yyxx

yyxx

yyxx

Cálculo da Bounding Box da Elipse A partir da equação da elipse definida:

Encontramos a bounding box calculando o mínimo e o máximo da equação da elipse em relação a U e depois em relação a V, assumindo que U é U(V) e V é V(U);

FCVBUVAUVUf 22),(

Cálculo do Bounding Box da Elipse Máximo e mínimo em relação a V:

BVAU

CVBUU

CVBUVBUAUU

FCVBUVAU

22

022

0

'

''

22

0

02:sistemasolver Re

22 FCVBUVAU

CVBU

0 :críticos Pontos ' VU

242

BACCFU

24

2BAC

AFV

Mipmaps Mip Mapping é uma técnica para gerenciar

níveis de detalhes (LOD – Level of Detail) da textura;

Mipmaps

Conclusões Filtro EWA:

introduziu o conceito de direção (Anisotrópico); complexo; alta qualidade; qualidade versus velocidade; utiliza um perfil Gaussiano; existem outros que

geram imagem de melhor qualidade;

Conclusões Problemas em aberto:

Jim Blinn – IEEE Computer Graphics and Applications – em 1998 citou: “No one will ever figure out how to quickly render

legible antialised text in perspective. Textures in perspective will always be either too fuzzy or too jaggy. No one will ever build texture mapping hardware that uses a 4x4 interpolation kernel or anisotropic filtering.”

Recommended