Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Bevezetés a számítógépi grafikába
Bevezetés: A Számítógépi grafika tárgya Képek raszteres kódolása Képek geometrikus kódolása, a geometrikus grafika alapjai Koordináta-rendszerek és transzformációk Vetületi ábrázolások A 3D grafikai alapjai: térbeli alakzatok és színterek képének előállítása Valószerű képek előállítása Egyebek
2
4. Koordináta-rendszerek és transzformációk
4.1. Koordináta-rendszerek az euklideszi térben 4.2. Homogén koordináták 4.3. Az egyenes és a sík egyenlete 4.4. Affin és projektív transzformációk Affin transzformációk Projektív transzformációk
3
4.4. Affin és projektív transzformációk
Miért kellenek az affin- és projektív transzformációk? A grafika transzformációi: - a geometriai modell valószerű átalakításai, és - „valószerű képek” előállítása, vagy - szándékos torzítás (pl. „morphing”) Valószerű képek: a valóságra emlékeztető képek. Geometriai szempontok: pontból pontot, egyenesből egyenest, síkból síkot kapjunk és ha egy pont rajta van egy síkon, a képen is így legyen!
4
Kollineációk Kollineációk: a tér önmagára való, egy-egyértelmű leképezései, amelyek pont-, egyenes-, sík- és illeszkedést tartók. En kollineációi: az affin transzformációk csoportja (a kibővített térben ideális elemeket ideálisakra). Pn (Hn) kollineációi: a projektív transzformációk csoportja. A tér egy közönséges síkját az ideális síkra képezi le, az ideális síkot egy közönséges síkra. Affinitások a projekivitások alcsoportja.
5
4.4.1. Affin transzformációk
Affin transzformációk: geometria és lineáris algebra Az affin transzformációk mátrix alakja Egyszerű affinitások: eltolás, forgatás, léptékezés, nyírás, báziscsere és tükrözések Az affin transzformációk geometriai tulajdonságai és osztályozása
6
Affin transzformációk
Geometria: Az euklideszi tér (-sík) egyenest tartó, egy- egyértelmű transzformációi, pont-, egyenes-, sík- és illeszkedést tartó. Lineáris algebra: az n-dimenziós affin tér lineáris leképezései: x’ = a11x+a12y+a13z+a14; P’=A·P [+d?] y’ = a21x+a22y+a23z+a24 z’ = a31x+a32y+a33z+a34 Az euklideszi tér analitikus geometriája, koordináta-geometriája Affin transzformációk számolása lineáris transzformációval
7
Affin transzformációk (2)
Például: eltolás, forgatás, tükrözés, stb. Szóhasználat: affin transzformáció – affinitás Reguláris affinitások (det A 0) En En ; a térben: E3 E3, a síkban: E2 E2 Nem reguláris: leképezés (vetítés) egy síkra, vagy egyenesre Szóhasználat: transzformáció, leképezés Pont-transzformáció: alakzatok (pontjainak) transzformációja Koordináta-rendszer transzformációja: áttérés új KR-re A tér leképezése egy másik térre (pl. VKR KKR, VKR SZKR)
8
Affin transzformáció mátrix-szorzással
(1) Adott: egy lineáris transzformáció mátrixa: A33 és egy d eltolás-vektor X’ = A33 X + d = (a11 a12 a13) (x) + (d1) = (x’) = X’ |a21 a22 a23| |y| |d2| |y’| (a31 a32 a33) (z) (d3) (z’) Az eltolás „nem fér bele” a 3x3-as mátrixba
9
Affin transzformáció mátrix-szorzással
(2) Adott: téglalap mátrix: A34; a*4 az eltolás-vektor (az utolsó oszlop) X’ = A33 X + a*4 = (a11 a12 a13) (x) + (a14) = (x’) = X’ |a21 a22 a23| |y| |a24| |y’| (a31 a32 a33) (z) (a34) (z’) A téglalap mátrix-al kényelmetlen dolgozni.
10
Affin transzformáció mátrix-szorzással
(3) Adott: homogén mátrix alak: A44 , X = [x,y,z,1]T X’ = A44 X = (a11 a12 a13 a14 ) (x) = (x’) = X’ |a21 a22 a23 a24 | |y| |y’| |a31 a32 a33 a34 | |z| |z’| ( ) (1) (1) A44 utolsó oszlopa az eltolás-vektor, utolsó sora: (0,0,0,1) Közönséges pontot közönséges pontba visz át, ideális pontot ideálispontba visz át: a tér ideális síkjának képe önmaga.
11
Egyszerű affinitások: 1. Eltolás
x’= x + d1 y’= y + d2 z’ = z + d3 Az eltolások kommutatív csoportja: T(dx,dy,dz) = T(-dx,-dy,-dz) T1(a,b,c) T2(d,e,f) = T(a+d,b+e,c+f) T1(a,b,c) T2(d,e,f) = T2(d,e,f) T1 (a,b,c) T1(0,0,0) = E A koordináta-rendszer (dx,dy,dz) eltolása = a pontok eltolása (-dx,-dy,-dz)-vel az eredeti KR-ben X’ = T44 X (1 0 0 d1) · (x) = (x’) |0 1 0 d2| |y| |y’| |0 0 1 d3| |z| |z’| ( ) (h) (h)
12
Pont-tr. – KR-tr. KR -> KR’ a koordináta-rendszer transzformációja: eltolás (dx,dy)-nal X’ = (x-dx, y) Mintha a pontokat tolnánk el (-dx, -dy) -nal KR dx x x’ P KR’ X(x,y)
13
Egyszerű affinitások: 2. Forgatás a Z tengely körül
x’ = x cos a - y sin a y’ = x sin a + ycos a z’ = z; A síkban: f. a kezdőpont (origó) körül: Rz a 3. sor és oszlop nélkül A Z tengely körüli forgatások kommutatív csoportja: Rz1(a) Rz2(b) = Rz(a+b) = Rz2Rz a forgatás inverze: Rz(a)-1 = Rz(-a) Ortonormált transzformáció, determinánsa 1. Rz = (co –si ) | si co | | | ( ) co = cos a si = sin a
14
Forgatás az X és az Y tengely körül
Rx = ( ) |0 co –si 0| |0 si co 0| ( ) Ry = (co 0 –si 0) | | |si co 0| ( ) x’ = x y’ = y cos a - z sin a z’ = y sin a + zcos a illetve: x’= x cos a – z sin a y’= y z’ = x sin a + zcos a Az ugyanazon tengely körüli forgatások kommutatív csoportot alkotnak
15
Forgatások Origón átmenő, ferde tengely körüli forgatás öt forgatás szorzataként: X’ = ( (Rz-1Rx-1) Ry (RxRz) ) X a Z tengely körül beforgatjuk a ZY síkba, ebben a síkban, az X tengely körül, az Y tengelybe, ekörül végrehajtjuk a kívánt forgatást, végül az első két forgatás fordítottját, fordított sorrendben. Elvileg fölírható hárommal is; de melyik hárommal? Transzformációk megadása geometria jelentésük alapján !!! A tér tetszőleges egyenese körüli forgatás ( T-1 R T ) : az egyenes eltolása a kezdőpontba, ekörül forgatás, majd az eltolás fordítottja.
16
Forgatás és eltolás egymásutánja
Forgatás: R (900) Eltolás: T(dx,dy) Áthelyezés: X’ = (R T) X R T ≠ T R
17
Áttérés új KR-re: báziscsere
A koordináta-rendszer transzformációja. Adottak egy új koordináta-rendszer U, V, W tengelyirányai: u, v, w egységvektorok. X’ = B X B = (ux uy uz 0) x’ = uxx + uyy + uzz |vx vy vz 0| y’ = vxx + vyy + vzz |wx wy wz 0| z’ = wxx + wyy + wzz ( ) Ha az origót el is toljuk a C pontba: X’ = ( T(-cx,-cy,-cz) B ) X
18
Egyszerű affinitások: 3. Léptékezés (skálázás)
Léptékezés (skálázás) az origóból kiindulva: X’ = S X. S = (sx ) x’ = sx x |0 sy 0 0| y’ = sy y |0 0 sz 0| z’ = sz z ( ) Determinánsának értéke: sx sy sz ; (egyik sem nulla). Egyenletes (izotrop) léptékezés, ha sx= sy= sz Egyenlőtlen (anizotrop), ha van köztük különböző. A tér C pontjára vonatkozó léptékezés: T(cx,cy,cz)ST(-cx,-cy,-cz) A léptékezések az affinitások kommutatív alcsoportja.
19
Tükrözés: léptékezés negatív együtthatókkal
x’ = -1·x, y’= y, z’ = z : tükrözés az YZ síkra. Tükrözések: S(1,1,1) Ha 1 tényező negatív: tükrözés koordináta-síkra, (det = -1) tényező negatív: tükrözés koordináta tengelyre, (det = +1) tényező negatív: tükrözés a kezdőpontra (det = -1) Ha a determináns = -1, a tér irányítása megfordul Tükrözés általános helyzetű síkra, tengelyre vagy pontra: X’ = ( M-1 TÜKRÖZÉS M ) X M = mozgatás: eltolások és forgatások
20
Egyszerű affinitások: 4. Nyírás
Egy merev test alakjának változása terhelés hatására. Az „elcsúszó kártyacsomag” Az XZ síkkal párhuzamosan, X irányban, az y összetevővel arányos nyírás: x’ = x+ay; X’ = Nxy X; Nxy = (1 a 0 0) y’ = y | | z’ = z | | ( ) Nyírás a tengelyek más szereposztásával: más alsó, vagy felső háromszög mátrix
21
Az affin transzformációk néhány geometriai tulajdonsága
A pontok baricentrikus koordinátái affin-invariánsak: ha valamely t-vel R = (1-t) P + t Q, akkor ugyanazzal a t-vel: R’= (1-t) P’ + t Q’ Az egyenesek pontjainak osztóviszonya affin invariáns: (PQR) = PR / RQ; RQ , (P’Q’R’) = (PQR); Egy egyenesen lévő szakaszok hossza ugyanolyan arányban változik: P’Q’/PQ = R’S’/RS. (különböző irányokban a változás aránya különböző lehet) Tetszőleges affin transzformáció mátrixa előállítható: A P = (N S R T ) P alakban
22
Az affin transzformációk osztályozása
Az affin transzformációk csoportot alkotnak Alcsoportja: hasonlósági transzformációk : T R S(s,s,s) Alcsoportja a mozgás transzformációk : T R Mozgások - egybevágósági transzformációk „Másodfajú” egybevágóság: irányítást váltó tükrözések is. Ha det A=0, a tér párhuzamos vetítése egy síkra, vagy egyenesre pl.: egy pont összetevői a tengelyekre való vetítéssel. Az n-dimenziós tér egy affinitását meghatározza n+1 „független” pont és képének megadása, (a térben 4, a síkban 3). „Független”: semelyik 3 sem esik egy egyenesbe.
23
Affin transzformáció megadása: 4-4
A tér egy affinitását meghatározza 4 független pont és képe. (Az n-dimenziós térben: n+1.) „Független”: semelyik 3 sem esik egy egyenesbe. A ( O Ex Ez Ez ) = ( P Q R S ) (a11 a12 a13 a14 ) ( ) = ( px qx rx sx) |a21 a22 a23 a24 | | | | py qy ry sy| |a31 a32 a33 a34 | | | | pz qz rz sz | ( ) ( ) ( ) 12 egyenlet, 12 ismeretlen: aik a = px , a = py , a = pz a11+a14 = qx , a12+a14 = qy , a13+a14 = qz
24
4.4.2. Projektív transzformációk
25
Projektív transzformációk - Bevezetés
A projektív tér kölcsönösen egyértelmű, egyenest tartó leképezései, amelyek „pont-, egyenes-, sík-, és illeszkedést tartók”. Az affin transzformációk a homogén tér közönséges, euklideszi alterét önmagára képezik le. ? Mit művelnek az affin transzformációk az ideális pontokkal? Válasz: ideális pontot ideális pontba visznek át. ? Milyenek a „valódi projektív transzformációk”, amelyek némelyik közönséges pontból ideális pontot állítanak elő?
26
Homogén mátrix alakjuk
X’ = M44 X = = (m11 m12 m13 m14) (x1) = (m11x1+m12x2+m13x3+m14h) = (x1’) |m21 m22 m23 m24| |x2| |m21x1+m22x2+m23x3+m24h| |x2’| |m31 m32 m33 m34| |x3| |m31x1+m32x2+m33x3+m34h| |x3’| (m41 m42 m43 m44) (h ) (m41x1+m42x2+m43x3+m44h) ( h’ ) X’ (x1’/h’, x2’/h’, x3’/h’,1), ha h’ = ideális pont, ha h’ = 0 h’ = m41x1+m42x2+m43x3+m44h = [m41, m42, m43, m44] a transzformáció eltűnő síkja. a pontok homogén alakja: X’ h X ; h a transzformációk homogén alakja: M44 h M44 ; h 0
27
Egy 2D projektív transzformáció
A’= M· A = = ( ) · (-1) | | |-1| ( ) ( 1) = ( -1 ) ~ ( 1 ) | 1 | | -1 | ( -1 ) ( 1 ) A transzformáció eltűnő egyenese: [0,1,0]; az X tengely
28
Nota bene … Ha M44 utolsó sora nem (0,0,0,c), akkor „valódi” projektív transzformáció s = [m41, m42, m43, m44] a transzformáció „eltűnő síkja” s’ = [ 0,0,0,c] : az ideális sík (!) A többi pont képe közönséges pont. Az eltűnő sík mentén M „fölvágja” a teret és „kifordítja”; az egyik féltérnek megfordul az irányítása! Ezért: képek előállításánál az ábrázolt tárgyak mind egy féltérben legyenek!
29
A projektív transzformáció megadása
A tér egy projektív transzformációját meghatározza 5 független pont és képe („Független”: semelyik 3 sem esik egy egyenesbe.) M44 ( O, X, Y, Z, E ) -> ( P, Q, R, S, T ) egy mik „szabadon” választható, a többi meghatározható
30
A sínpár perspektívája
X = [1,0,0,0]; X’ = X Y = [0,1,0,0]; Y’ = Y Z = [ 0,0,1,0]; Z’ = [0,0,1,1] C = [0,1,0,1]; C’ = [0,0,1,0] F = [1,1,1,1]; F’ = [1,1,0,1]
31
A sínpár perspektívája
M · [ X Y Z C F ] = [X’ Y’ Z’ C’ F’ ] (m11 m12 m13 m14) · ( ) = ( p t ) | m21 m22 m23 m24| | | | 0 q t | | m31 m32 m33 m34| | | | r s 0 | (m41 m42 m43 m44) ( ) ( r 0 t ) 20 egyenlet, ismeretlen: : p, q, r, s, t (!) : mik ; (egy megválasztható) A „nézetmező:”
32
Egy iránypontos perspektíva
X’ = X, Y’ = Y Z’ = [½, h, 0, 1]; h: a horizont vonal
33
Két iránypontos perspektíva
Y’ = Y X’ = [ 0.1, h, 0, 1], Z’ = [ 0.9, h, 0, 1 ]
34
Egy hosszú ház perspektívája
35
Egy egyszerű projektív transzformáció
Prototípusunk: Pz = ( ) ( r miatt nem affin!) | | | | ( 0 0 r 1 ) X’ = PzX = ( ) (x) ; h=0 v | | |y| | | |z| (0 0 r 1) (h) = [x', y', z', h'] = = [x, y , z, rz+h] = [x/h',y/h',z/h',1], ha h'=rz+h0 = [x, y , z, ], ideális pont, ha h'=rz+h=0;
36
A tér átrendeződése
37
Y Z 1/r
38
Egy síkbeli projektív transzformáció
A’= M·A = (1 0 0) · (-1) = (-1) ( 1) |0 0 1| |-1| ( 1) |-1| (0 1 0) ( 1) (-1) ( 1)
39
Sakk-kocka egy projektív transzformációja
(távlatban az osztások valójában sűrűsödnek)
40
Összefoglalás X’= M·X kollineációk
Affin transzformációk: M utolsó sora: [0,0,0,1] különben: Projektív transzformációk Affin transzformációk: En -> En és In -> In Eltolás, forgatás, léptékezés, nyírás van bennük Projektív transzformációk: az eltűnő sík közönséges pontjainak képe ideálispont Középpontos vetítés számolása: D => 3D projektív transzformáció, a nézetmező levetítése az alapsíkra, előtte: láthatóság-takarás
41
Jegyzet A 4. Fejezethez: G4E*.rtf, Gi4E*.ppt (ez az előadás) Gi4E*-Pz-matrix.ppt (a Pz mátrix vizsgálata)
42
Vége
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.