IR4RG P06 Transformacije u 2D
-
Upload
viktor-james -
Category
Documents
-
view
36 -
download
0
Transcript of IR4RG P06 Transformacije u 2D
Raunarska grafika
Transformacije u 2D
Geometrijske transformacijeGeometrijske transformacije preslikavaju originalnu taku u njenu sliku Postoje dve konvencije za geometrijske transformacije kretanja (translacije i rotacije):
konvencija pokretnog koordinatnog sistema (pokretne virtuelne kamere, odnosno posmatraa) konvencija pokretnog objekta
Konvencije se mogu kombinovati (kree se i objekat i posmatra) Ovde se podrazumeva
da se taka nalazi u desnom pravouglom koordinatnom sistemu da se primenjuje konvencija pokretne virtuelne kamere
2
Transformacije u 2D
16.04.2007.
Transformacije u 2D2D desni pravougli koordinatni sistem je definisan na sledei nain:
koordinatna osa prve koordinate (X) se prevodi u osu druge koordinate (Y) rotacijom oko koordinatnog poetka za 90 u smeru suprotnom od kretanja kazaljke na asovniku
U optem sluaju, ako su koordinate originalne take (x,y), koordinate neke take nakon transformacije su (x',y'):x' = A1x + B1y + C11 y' = A2x + B2y + C21 1 = 0x + 0y + 11
3
Transformacije u 2D
16.04.2007.
Matrina predstava transformacijaPoslednjim identitetom se proiruje sistem jednaina, da bi se predstavio u matrinom obliku:
[x '
y ' 1] = [x
A1 A2 0 y 1] B1 B 2 0 C1 C 2 1
Q = P M gde je: Q slika take, P original take, M matrica transformacija Drugi oblik matrine jednaine: QT=MT PT
x ' A1 B1 C1 x y ' = A2 B 2 C 2 y 0 1 1 1 0
4
Transformacije u 2D
16.04.2007.
Homogene koordinatePredstava take u vektorskom obliku [x y] se proiruje treom koordinatom jednakom 1: [x y 1] Koordinatni sistem za ovakvo predstavljanje take se naziva sistemom sa homogenim koordinatama Homogene koordinate ine matematiki aparat uniformnim za sve transformacije Svaka transformacija se predstavlja adekvatnom matricom transformacije M Trea kolona matrice M je konstantna za sve 2D transformacije Jednom izraunata matrica transformacije se koristi
da bi se sve relevantne take neke 2D slike transformisale na jedinstven nain
U petlji se mnoe vektori originalnih taaka matricom transformacije: for (i=0; i1 => poveanje objekta (pribliavanje posmatraa)
Preslikavanje: x' = Sxx + 0y + 01 y' = 0x + Syy + 01 1 = 0x + 0y + 11
Sx s= 0 0 Transformacije u 2D
0 Sy 0
0 0 1 16.04.2007.
10
Skaliranje - primerPrimer:
segment linije odreen je krajnjim takama A(1,3) i B(2,7). izvriti skaliranje, ako su dati skala faktori Sx=2 i Sy=1 2 0 0 B' = [2 7 1] 0 1 0 = [4 7 1] 0 0 1
2 0 0 A ' = [1 3 1] 0 1 0 = [2 3 1] 0 0 1 B A A B
11
Transformacije u 2D
16.04.2007.
RefleksijaRefleksija prema Y-osi:Sx=-1, Sy=1
Refleksija prema X-osi:Sx=1, Sy=-1
Refleksija prema proizvoljnoj osi:
translacijom se dovede koordinatni poetak na datu osu rotacijom se X-osa poklopi sa datom osom primeni se refleksija prema X-osi inverzna rotacija inverzna translacija
12
Transformacije u 2D
16.04.2007.
Smicanje (Shear)Faktori smicanja po X i Y-osi: Hx i Hy, respektivno Preslikavanje:x' = 1x + Hxy + 01 y' = Hyx + 1y + 01 1 = 0x + 0y + 11
1 H = H x 0
Hy 1 0
0 0 1
Smicanje samo u pravcu X-ose: Hy=0; Smicanje samo u pravcu Y-ose: Hx=0
13
Transformacije u 2D
16.04.2007.
Smicanje - primerPrimer:
segment linije odreen je krajnjim takama A(1,3) i B(2,7) izvriti smicanje, ako su dati faktori smicanja Hx=2 i Hy=01 0 0 B' = [2 7 1] 2 1 0 = [16 7 1] 0 0 1 B
1 0 0 A' = [1 3 1] 2 1 0 = [7 3 1] 0 0 1 B A
ATransformacije u 2D 16.04.2007.
14
Sloene transformacijeQ je slika take P definisane sa: Q=t3(t2(t1(P)))
tx su elementarne transformacije koje se primenjuju redom: x=1, 2, 3
Sledi (poto je mnoenje matrica asocijativno):Q=(((P*T1)*T2)*T3) = P*(T1*T2*T3) = P*T T je kompozitna matrica sloene transformacije, dok su T1, T2 i T3 matrice elementarnih transformacija koje uestvuju u sloenoj transformaciji
Redosled transformacija je veoma vaan
mnoenje matrica nije komutativno
15
Transformacije u 2D
16.04.2007.
Primena 2D transformacijaJedna primena 2D transformacija je transformacija slike
iz koordinatnog sistema realnog sveta u normalizovane koordinate ureaja obino u jedinicama duine, npr. u [cm] [0.0, ... , 1.0] obino u jedinicama duine ili u pikselimaprozor (Window) YNDC 1.0
Koordinate sveta (Real World Coordinates, RWC) Normalizovane koordinate ureaja (Normalized Device Coordinates, NDC) Koordinate ureaja Prozor i prikazni prozor:YRWC
prikazni prozor (Viewport)
XRWC
0.0
1.0
XNDC 16.04.2007.
16
Transformacije u 2D
Generisanje prikazaProces generisanja prikaza:RWC odsecanje izvan prozora preslikavanje u prikazni prozor NDC
Preslikavanje (mapiranje) u prikazni prozor:1. 2.
3.
translacija (u RWC) tako da se koordinatni poetak premesti u donji levi ugao prozora skaliranje tako da se prozor preslika u prikazni prozor; poto se koordinate prikaznog prozora daju u NDC obliku, ovim se obezbeuje prelaz iz RWC u NDC translacija (u NDC) tako da se prikazni prozor locira na eljeno mesto unutar prikazne povrine normalizovanog prikazivaaTransformacije u 2D 16.04.2007.
17
PrimerProzor je definisan pomou sledeih relacija: 10 < x < 20, 8 < y < 13, Prikazni prozor je u gornjem levom uglu virtuelnog ekrana, u oblasti: 0.0 < xd < 0.25, 0.75 < yd < 1.0 Reenje:
translacija T1 koordinatnog sistema RW u donji levi ugao prozora: O'(10,8) skaliranje S da bi se prozor preslikao u prikazni prozor: Sx =(0.25-0.0)/(20-10)=0.025 Sy =(1.0-0.75)/(13-8)=0.05 translacija T2 koordinatnog poetka iz donjeg levog ugla prikaznog prozora u donji levi ugao virtuelnog ekrana: O''(0.0,-0.75) Kombinovanjem elementarnih transformacija dobija se kompozitna matrica totalne transformacije:
0 0 0.025 0 0 1 0 0 0.025 0 0 1 T1 S T2 = 0 1 0 0 0.05 0 0 1 0 = 0 0.05 0 10 8 1 0 0 1 0 0.75 1 0.25 0.35 1
18
Transformacije u 2D
16.04.2007.