29.01.2013 Views

Cálculo e Estimação de Invariantes Geométricos: Uma ... - Impa

Cálculo e Estimação de Invariantes Geométricos: Uma ... - Impa

Cálculo e Estimação de Invariantes Geométricos: Uma ... - Impa

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

40 3.2. Mudança <strong>de</strong> Contextos<br />

Estas expressões são bastante úteis quando formos encontrar as<br />

proprieda<strong>de</strong>s geométricas <strong>de</strong> superfícies implícitas.<br />

Se quisermos passar do contexto <strong>de</strong> superfícies implícitas para o<br />

caso discreto uma ferramenta muito conhecida é o algoritmo Marching<br />

Cubes que percorre as amostras da gra<strong>de</strong> e gera uma triangulação<br />

local da superfície. Para isso, é necessário o estudo das funções multilineares<br />

por partes, pois o algoritmo Marching Cubes [LC87] usa a<br />

interpolação trilinear.<br />

Implícito contínuo para discreto<br />

Po<strong>de</strong>mos construir uma representação discreta <strong>de</strong> superfície a partir<br />

<strong>de</strong> um sinal discreto g[i, j, k] passa por interpolar o sinal g por<br />

uma função contínua (ou suave) f, e consi<strong>de</strong>rar a superfície implícita<br />

<strong>de</strong>finida por f. Veremos interpolação, chamada <strong>de</strong> multilinear, que<br />

gera uma função f contínua (além <strong>de</strong> C ∞ por partes), e permite uma<br />

construção direta da superfície discreta no computador.<br />

Interpolação trilinear por partes Seja g[i, j, k] sinal tridimensional.<br />

A interpolação local no cubo fi,j,k : [0, 1]×[0, 1]×[0, 1] → R tem<br />

que respeitar as restrições {fi,j,k(ou, ov, ow) = g[i + ou, j + ov, k + ow]<br />

para ouvw ∈ {0, 1}.<br />

A interpolação trilinear por partes é obtida <strong>de</strong>finindo fi,j,k como<br />

a única cúbica que respeite as restrições acima<br />

fi,j,k(u, v, w) = (1 − u)(1 − v)(1 − w)· g [ i , j , k ]<br />

+ u (1 − v)(1 − w)· g [i + 1, j , k ]<br />

+ (1 − u) v (1 − w)· g [ i ,j + 1, k ]<br />

+ u v (1 − w)· g [i + 1,j + 1, k ]<br />

+ (1 − u)(1 − v) w · g [ i , j ,k + 1]<br />

+ u (1 − v) w · g [i + 1, j ,k + 1]<br />

+ (1 − u) v w · g [ i ,j + 1,k + 1]<br />

+ u v w · g [i + 1,j + 1,k + 1].<br />

Essa interpolação conserva a proprieda<strong>de</strong> <strong>de</strong> ser bilinear em qualquer<br />

plano paralelo aos eixos, e linear em qualquer reta paralela a<br />

um eixo, garantindo a continuida<strong>de</strong> da interpolação e a simplicida<strong>de</strong><br />

da solução ao longo das arestas <strong>de</strong> cada cubo (ver Figura 3.6).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!