12. Modelowanie i wizualizacja tekstury 12.1. Co to jest tekstura ?

 

() = 







 

obiekt

(x, y, z)

powierzchni obiektu.

!T(x,y,z) ?

"# $% &

1. Kolor punktu powierzchni obiektu

( ) = [ ]

2. Wektor normalny w punkcie powierzchni

() = () + ∆ ()

gdzie

() - wektor normalny obliczony z danych o geometrii powierzchni,

∆ ()' $%

3. ($# %%

( ) = [

]

gdzie

()' ($# %)$

rozproszonego,

()' ($# %)% # *+

()' ($# %)#%*+

,-)#%# $%(

12.2. Odwzorowania parametryczne w zagadnieniach wizualizacji tekstury

. T(x,y,z) w przestrzeni, w

(# $ ) % *%-

/# # 0%# #-

1 # # #

powierzchni (obiektu),

y

z

x(u,v)

y(u,v)

z(u,v)

v

(u,v)

u

x

0 #%!# #

parametrów.

y

z

v

T(u,v)

T(x(u,v),y(u,v),z(u,v))

u

x

2 # $

funkcja dwóch zmiennych u i v

∈[ ]

∈[ ]

# $%+ 3 ) ! +

3 )#-

4# 0% %#56

Parametryzacja prosta

v

T(u,v)

(x,y,z)

u

Dla danego punktu (u,v) z przestrzeni parametrów,

3 ( # )# 0

odpowiedni punkt (x,y,z) na powierzchni obiektu.

4# 0 (x,y,z), a punkt (piksel)

$#*%#3 T(u,v).

Parametryzacja odwrotna

v

T(u,v)

(x,y,z)

u

Dla danego punktu 7 8+ # 0

punktu (x,y,z) na powierzchni widocznego obiektu.

9 3 % ( # )#

0%%(u,v) w przestrzeni parametrów.

Punkt (piksel) $ #*% # 3

tekstury T(u,v) % # -

W zagadnieniu parametryzacji prostej wymagana jest

#! (5 # #+

natomiast w zadaniu parametryzacji odwrotnej

% (5 # -

12.3. Podstawowe problemy wizualizacji tekstur

• generowanie wzorca tekstury

• odwzorowania geometryczne

• filtracja tekstury

12.3.1 Generowanie wzorca tekstury

1# !0T(u,v) ?

9 0(% # * *

funkcji;

1. " ! #3T(u,v).

2. )0 330T(u,v)#3

%$%3+-)0 33

obraz.

3. 20T(u,v) 0#

wzorców.

" 30%# 03%6

• Modele okresowe

" ## %$*

*#3%-

:%33# !- #

# #*$ -

• Modele bombowe

# #(# ## 0

) #$7)) 8-

Rozmieszczanie polega na losowaniu punktu

##%)) -

;)) !%# ##

skalowana.

"# $%&

v

u

• Modele oparte na procesach Markowa

Modele losowe.

" # $ ! (

:+(* +

# % % (

)#%*#-

• Modele fraktalne

# 0(%%#

iterowane.

"# $%&

Fraktal plazmowy (plasma fractal)

/$&

"# #5(7 3$%#

($#0% u,v8 ! 33 3

×

punktów.

% ()

# ! 5 #)##%+

% +#3% -

Algorytm:

Krok 1 3

## 0 )

7# #%*% *#$%

%%)5 8#-

v

u

Krok 2 # 0 %0 (

-< 3*

%)(% 3-

x

x

v

u

• .)#%) (np. ) 1. = 0′

2. .)# 0 ze wzoru

4

c =

−

⋅ ′ + ∑

⋅

c

(1

W

4

c ( x )) cc

Wc ( x ) ci

i =1

gdzie funkcja W(x) 03 #)*

• Obliczenie koloru punktu

1. = 0′

2. .)# 0 ze wzoru

= −

⋅′ + ∑⋅

=

przy czym, funkcja *3%

Krok 3-.# # 3 -

%*#+# 0

%##( # 3 +%

3*0* #%## -

.# 3 %3 ##

% #$!+ #3 #$%

# (+#W(x) i

.

12.3.2 Odwzorowania geometryczne 12.3.2.1 Parametryzacja w przestrzeni obiektu

/$&

.) % 3$ $%

($#0% -

"# $% &

1. Wielobok.

/$% 0+ # #5 0 #

$ ## #3x-y.

z

wielobok

v

u

y

x

tekstury

• Parametryzacja prosta

x = u

y = v

Ax + By + D

z = −

C ≠ 0

C

Równania dla parametryzacji prostej

=

=

= −

+

+

≠

*%#+;++' ($# (

$ ## # +( )-

Równania dla parametryzacji odwrotnej

=

=

2. Sfera

z

1

1

v

u

0

x

y

Równania dla parametryzacji prostej

=

π

− π

=

π

− π

=

− π

" # 0 # #$ %#3*

punkt (u,v) z przestrzeni tekstury w punkt (x,y,z) z

# ##0#7$%8-

"# $% &

1. Parametryzacja liniowa prosta.

/ ' 3 )(

$ -

) ! #0 3 3

#>!# #$+

 





[ ] = [ ]

=

[ ]⋅





 

# # !#P.

Wyznaczenie macierzy P%(36

Dane:

'#$(3

- trzy punkty w przestrzeni tekstury

Elementy macierzy P ## 0 #3#3 #

$% (5 -

?$% # &

+

+ =

+

+ =

+

+ =

/$% # 0.

/# $ $%( i .

2. Parametryzacja liniowa odwrotna.

< #>!# #$+

[x y z]= [u ⋅v u v ]

1 ⋅ 4

P ×3

# # !#O.

Elementy macierzy O # 0%)%

parametryzacji prostej.

# % %# )( (

#)#$(+-%## #

(3# #*3 3!

problemy. 4#3#*3) ! 03&

• %#$)((3 +) #)

(3() $(# #

%(3(+

• parametryzacja nieliniowa.

3. Parametryzacja nieliniowa

Parametryzacja dwuliniowa

[ ] = [ ⋅ ]

⋅ ×

Parametryzacja dwukwadratowa

[ ] = [ ]⋅×

W obu przypadkach, parametryzacja odwrotna

*#3# (5 -

12.3.3. Filtrowanie tekstury

/$&

## )3-

:*3 3!(# %&

1. .%#0 #3

100 punktów siatki

1000 pikseli ekranu

-.%## #3

1000 punktów siatki

100 pikseli ekranu

@-/*%!#) (

7$%%)8-

12.3.3.1.

!"

A #*% *0 ( #

( % 0 3

03-

punkt wzorca tekstury

obraz piksela ekranu

v

1

2

3

4

u

0%)# ## 0

##30

punktach 1, 2, 3, 4 jej wzorca.

(problem trudniejszy)

9 0(% -

1. Nadpróbkowanie (oversampling)

• " %# 0 ##0-

• #0%#* ## 0

odpowiednie punkty w przestrzeni tekstury.

• ?% 0 %3#

ekranu.

Wada metody:

%! nadpróbkowania (liczby

#0+(%# 0 8-

9 0 0&

• %()# $3*0 3+

• nadpróbkowanie adaptacyjne,

• nadpróbkowanie stochastyczne.

-:% # 30

"# $%&

:% )#%*

Krok 1 " # #$ )#

przestrzeni tekstury.

Krok 2 .)# # # %

przy pomocy filtru liniowego.

obraz piksela ekranu

v

=

∑∑ ⋅

∑∑

u

2

4

2

4

8

4

=

2

4

2

maska filtru

Krok 3 Wynik filtracji jest traktowany jako tekstura,

%%3 -

Problemy filtracji:

• )# ) !%+

• 30%#*

!%0)-