Bevezetés a számítógépi grafikába

Slides:



Advertisements
Hasonló előadás
Lineáris egyenletrendszerek
Advertisements

Koordináta transzformációk 2
ALAKZATOK TRANSZFORMÁCIÓJA ÚJ KÉPSÍKOK BEVEZETÉSÉVEL
Koordináta transzformációk
Koordináta transzformációk
Geometriai Transzformációk
Analitikus (koordináta) geometriai gyorstalpaló
Geometriai transzformációk
Geometriai modellezés
Geometriai modellezés
Regresszió számítás Mérnöki létesítmények ellenőrzése, terveknek megfelelése Geodéziai mérések – pontok helyzete, pontszerű információ Lineáris regresszió.
Klasszikus mechanikai kéttestprobléma és merev test szabad mozgása állandó pozitív görbületű sokaságon Kómár Péter témavezető: Dr. Vattay Gábor
Függvénytranszformációk
A vetítések geometriája
Hasonlósági transzformáció
Transzformációk kucg.korea.ac.kr.
A számítógépi grafika matematikai háttere
ÁLTALÁNOS SZILÁRDSÁGTAN
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
2. előadás GÉPRAJZ, GÉPELEMEK I..
3. előadás GÉPRAJZ, GÉPELEMEK I..
Lineáris algebra Mátrixok, determinánsok, lineáris egyenletrendszerek
3. Vetületi ábrázolások számítási eljárásai
Web-grafika II (SVG) 2. gyakorlat Kereszty Gábor.
P z : egy „elemi” projektív transzformáció M = ( m m m m ); P z = ( ) | m m m m | | | | m m m m | | | ( p p p p ) ( 0 0 r 1 ) az.
2. Koordináta-rendszerek és transzformációk 2.1. Koordináta-rendszerek 2.2. Az egyenes és a sík egyenlete 2.3. Affin transzformációk 2.4. Projektív transzformációk.
SzTE JGYTFK Matematika Tanszék
Lineáris transzformáció sajátértékei és sajátvektorai
MATEMATIKA ÉS INFORMATIKA I.
Lineáris algebra.
Koordináta-geometria
3.3. Axonometrikus ábrázolások Rövid áttekintés
4.7. Textúra A felület anyagszerűsége Sík-képek ráborítása a felületre
Bevezetés a Számítógépi grafikába - előadás
2. Koordináta-rendszerek és transzformációk
3.4. Perspektív ábrázolások
2. Koordináta-rendszerek és transzformációk
3. Vetületi ábrázolások számítási eljárásai
Készítette: Kreka Bálint
2008/2009 tavasz Klár Gergely  Gyakorlatok időpontjai: ◦ Szerda 10:05–11:35 ◦ Csütörtök 10:00+ε –11:30+ε  Gyakvez: ◦ Klár Gergely ◦
MATEMATIKA GEOMETRIAI TRANSZFORMÁCIÓK: Egybevágósági transzformáció
16. Modul Egybevágóságok.
A modern fizika matematikája a középiskolában
Geometriai transzformációk
Analitikus geometria gyorstalpaló
Transzformációk Szirmay-Kalos László. Transzformációk (x,y) (x’,y’) = T(x,y) l Tönkre tehetik az egyenletet l Korlátozzuk a transformációkat és az alakzatokat.
3. Vetületi ábrázolások számítási eljárásai
Geometriai transzformációk
A háromszög középvonala
2.2. Az egyenes és a sík egyenlete
2. Koordináta-rendszerek és transzformációk
Lineáris algebra.
TARTÓK ALAKVÁLTOZÁSA ALAPFOGALMAK.
1 Vektorok, mátrixok.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
Hasonlósági transzformáció ismétlése
4. A grafikus szerelőszalag - áttekintés 4.0. Bevezetés.
ALAKZATOK TRANSZFORMÁCIÓJA ÚJ KÉPSÍKOK BEVEZETÉSÉVEL
3.4. Perspektív ábrázolások
3.2. Axonometria – Műszaki rajzok párhuzamos vetítéssel
Digitális képanalízis
Hasonlóság modul Ismétlés.
Perspektív projekció és kamera paraméterek. Szükséges transzformációk Világkoordináta rendszer (3D) Kamera koordinátarendszer (3D) Képsík koordináták.
Alapvető raszteres algoritmusok, szakasz rajzolása, DDA, MidPoint algoritmus.
Bevezetés a számítógépi grafikába 1.Bevezetés: A Számítógépi grafika tárgya 2.Képek kódolása 3.A geometrikus grafika alapjai 4.Koordináta-rendszerek és.
3D grafika összefoglalás
óra Eltolás tulajdonságai, párhuzamos szárú szögek
Szécsi László 3D Grafikus Rendszerek 7. előadás
ELEMI GEOMETRIAI ISMERETEK
Összefoglalás (nem teljes)
Előadás másolata:

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

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 4.4.1. Affin transzformációk 4.4.2. Projektív transzformációk

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!

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.

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

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

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)

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

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.

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’| ( 0 0 0 1 ) (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.

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)-1 = 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’| (0 0 0 1 ) (h) (h)

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)

Egyszerű affinitások: 2. Forgatás a Z tengely körül x’ = x cos a - y sin a y’ = x sin a + ycos 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) = Rz2Rz1 a forgatás inverze: Rz(a)-1 = Rz(-a) Ortonormált transzformáció, determinánsa 1. Rz = (co –si 0 0) | si co 0 0| | 0 0 1 0| ( 0 0 0 1) co = cos a si = sin a

Forgatás az X és az Y tengely körül Rx = (1 0 0 0) |0 co –si 0| |0 si co 0| (0 0 0 1) Ry = (co 0 –si 0) |0 1 0 0| |si 0 co 0| ( 0 0 0 1) x’ = x y’ = y cos a - z sin a z’ = y sin a + zcos a illetve: x’= x cos a – z sin a y’= y z’ = x sin a + zcos a Az ugyanazon tengely körüli forgatások kommutatív csoportot alkotnak

Forgatások Origón átmenő, ferde tengely körüli forgatás öt forgatás szorzataként: X’ = ( (Rz-1Rx-1)  Ry  (RxRz) )  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.

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

Á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’ = uxx + uyy + uzz |vx vy vz 0| y’ = vxx + vyy + vzz |wx wy wz 0| z’ = wxx + wyy + wzz ( 0 0 0 1) Ha az origót el is toljuk a C pontba: X’ = ( T(-cx,-cy,-cz)  B )  X

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 0 0 0) x’ = sx  x |0 sy 0 0| y’ = sy  y |0 0 sz 0| z’ = sz  z (0 0 0 1) 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)ST(-cx,-cy,-cz) A léptékezések az affinitások kommutatív alcsoportja.

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) 2 tényező negatív: tükrözés koordináta tengelyre, (det = +1) 3 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

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+ay; X’ = Nxy X; Nxy = (1 a 0 0) y’ = y |0 1 0 0| z’ = z |0 0 1 0| (0 0 0 1) Nyírás a tengelyek más szereposztásával: más alsó, vagy felső háromszög mátrix

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; RQ , (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

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.

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. A44  ( O Ex Ez Ez ) = ( P Q R S ) (a11 a12 a13 a14 )  ( 0 1 0 0 ) = ( px qx rx sx) |a21 a22 a23 a24 | | 0 0 1 0 | | py qy ry sy| |a31 a32 a33 a34 | | 0 0 0 1 | | pz qz rz sz | ( 0 0 0 1 ) ( 1 1 1 1 ) ( 1 1 1 1 ) 12 egyenlet, 12 ismeretlen: aik a14 = px , a24 = py , a34 = pz a11+a14 = qx , a12+a14 = qy , a13+a14 = qz . . .

4.4.2. Projektív transzformációk

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ő?

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’  0 = ideális pont, ha h’ = 0 h’ = m41x1+m42x2+m43x3+m44h =0 [m41, m42, m43, m44] a transzformáció eltűnő síkja. a pontok homogén alakja: X’  h  X ; h  0 a transzformációk homogén alakja: M44  h  M44 ; h  0

Egy 2D projektív transzformáció A’= M· A = = ( 1 0 0 ) · (-1) | 0 0 1 | |-1| ( 0 1 0 ) ( 1) = ( -1 ) ~ ( 1 ) | 1 | | -1 | ( -1 ) ( 1 ) A transzformáció eltűnő egyenese: [0,1,0]; az X tengely

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!

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ó

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]

A sínpár perspektívája M44 · [ X Y Z C F ] = [X’ Y’ Z’ C’ F’ ] (m11 m12 m13 m14) · ( 1 0 0 0 1 ) = ( p 0 0 0 t ) | m21 m22 m23 m24| | 0 1 0 0 1 | | 0 q 0 0 t | | m31 m32 m33 m34| | 0 0 1 0 1 | | 0 0 r s 0 | (m41 m42 m43 m44) ( 0 0 0 1 1 ) ( 0 0 r 0 t ) 20 egyenlet, 20 ismeretlen: 5 : p, q, r, s, t 15 (!) : mik ; (egy megválasztható) A „nézetmező:”

Egy iránypontos perspektíva X’ = X, Y’ = Y Z’ = [½, h, 0, 1]; h: a horizont vonal

Két iránypontos perspektíva Y’ = Y X’ = [ 0.1, h, 0, 1], Z’ = [ 0.9, h, 0, 1 ]

Egy hosszú ház perspektívája

Egy egyszerű projektív transzformáció Prototípusunk: Pz = ( 1 0 0 0 ) ( r miatt nem affin!) | 0 1 0 0 | | 0 0 1 0 | ( 0 0 r 1 ) X’ = PzX = (1 0 0 0)  (x) ; h=0 v. 1 |0 1 0 0| |y| |0 0 1 0| |z| (0 0 r 1) (h) = [x', y', z', h'] = = [x, y , z, rz+h] = [x/h',y/h',z/h',1], ha h'=rz+h0 = [x, y , z, 0 ], ideális pont, ha h'=rz+h=0;

A tér átrendeződése

  Y Z 1/r

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)

Sakk-kocka egy projektív transzformációja (távlatban az osztások valójában sűrűsödnek)

Ö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: 3D => 3D projektív transzformáció, a nézetmező levetítése az alapsíkra, előtte: láthatóság-takarás

Jegyzet A 4. Fejezethez: G4E*.rtf, Gi4E*.ppt (ez az előadás) Gi4E*-Pz-matrix.ppt (a Pz mátrix vizsgálata)

Vége