T-111.1100 Johdatus Tietoliikenteeseen ja Multimediaan

Samankaltaiset tiedostot
T Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka

Tietokonegrafiikka. Jyry Suvilehto T Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2014

T Vuorovaikutteinen tietokonegrafiikka Tentti

Octreen piirtäminen. Huomioita portaalitekniikasta. Octree edestä taakse. Valaistus ja sävytys

Luento 3: 3D katselu. Sisältö

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Luku 6: Grafiikka. 2D-grafiikka 3D-liukuhihna Epäsuora valaistus Laskostuminen Mobiililaitteet Sisätilat Ulkotilat

Luento 6: Tulostusprimitiivien toteutus

T Tietotekniikan peruskurssi: Tietokonegrafiikka. Tassu Takala TKK, Tietoliikenneohjelmistojen ja multimedian laboratorio

4. Esittäminen ja visualisointi (renderöinti)

Tilanhallintatekniikat

Luento 2: 2D Katselu. Sisältö

Antti Rasila. Kevät Matematiikan ja systeemianalyysin laitos Aalto-yliopisto. Antti Rasila (Aalto-yliopisto) MS-A0204 Kevät / 16

Luento 7: Lokaalit valaistusmallit

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Osoita, että kaikki paraabelit ovat yhdenmuotoisia etsimällä skaalauskuvaus, joka vie paraabelin y = ax 2 paraabelille y = bx 2. VASTAUS: , b = 2 2

Luento 2 Stereokuvan laskeminen Maa Fotogrammetrian perusteet 1

3. Piirrä kaksi tasoa siten, että ne jakavat avaruuden neljään osaan.

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 10: Moninkertaisten integraalien sovelluksia

5. Grafiikkaliukuhihna: (1) geometriset operaatiot

Luento 2: Viivan toteutus

Luento 2: Tulostusprimitiivit

MS-A0207 Differentiaali- ja integraalilaskenta 2 Luento 5: Gradientti ja suunnattu derivaatta. Vektoriarvoiset funktiot. Taylor-approksimaatio.

Luento 6: Piilopinnat ja Näkyvyys

T Johdatus tietoliikenteeseen ja multimediatekniikkaan: Tietokonegrafiikka. Tassu Takala. Mediatekniikan laitos

Vektorimatematiikkaa Pisteet ja vektorit

Luento 10: Näkyvyystarkastelut ja varjot. Sisältö

TIES471 Reaaliaikainen renderöinti

Sisältö. Luento 1: Transformaatiot (2D) 1. Koordinaattimuunnokset. Muunnokset (jatkuu) 2. Perustransformaatiot. Perustransformaatiot (jatkuu)

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 10: Moninkertaisten integraalien sovelluksia

T Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka

KESKEISET SISÄLLÖT Keskeiset sisällöt voivat vaihdella eri vuositasoilla opetusjärjestelyjen mukaan.

11.4. Rakenteellista käsittelyä tilavuusrenderöintialgoritmeissa

Tapio Takala / Lauri Savioja Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio

TOMI LAMMINSAARI 3D-MAAILMAN KAMERAN OHJAAMINEN KASVOJEN PAIKANNUKSEN AVULLA. Diplomityö

Sisällys. T Tietokonegrafiikan perusteet. OpenGL-ohjelmointi 11/2007. Mikä on OpenGL?

JOHDATUS TEKOÄLYYN TEEMU ROOS

Insinöörimatematiikka D

a) on lokaali käänteisfunktio, b) ei ole. Piirrä näiden pisteiden ympäristöön asetetun neliöruudukon kuva. VASTAUS:

Luento 3: 2D Katselu. Sisältö

Oppimateriaali oppilaalle ja opettajalle : GeoGebra oppilaan työkaluna ylioppilaskirjoituksissa 2016 versio 0.8

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Grafiikka 205. Tässä luvussa käsitellään geometriaa ja graafisia kohteita. Mukana on pääosin alkeisoperaatioita.

2.2. Kohteiden konstruktiivinen avaruusgeometrinen esitys

Luento 3: Tulostusprimitiivien toteutus

Oppimistavoitematriisi

Objektien deformaatiot

JOHDATUS TEKOÄLYYN TEEMU ROOS

Visualisointi informaatioverkostojen Opintoneuvoja Teemu Meronen (päivitys Janne Käen visualisoinnin pohjalta)

Esityksen sisältö. Peruskäsitteitä. 3D Grafiikka tietokonepeleissä. Piirto- ja taustapuskuri

Kolme erikoismuunnosta. Muunnosten yhdistely. 3D-muunnokset. Koordinaatiston siirto

10. Globaali valaistus

y x1 σ t 1 = c y x 1 σ t 1 = y x 2 σ t 2 y x 2 x 1 y = σ(t 2 t 1 ) x 2 x 1 y t 2 t 1

10. Esitys ja kuvaus

Peilaus pisteen ja suoran suhteen Pythonin Turtle moduulilla

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 10: Napa-, sylinteri- ja pallokoordinaatistot. Pintaintegraali.

Luento 6: Geometrinen mallinnus

Sisältö. Luento 6: Piilopinnat. Peruskäsitteet (jatkuu) Peruskäsitteitä. Yksinkertaisia tapauksia. Yksinkertaiset tapaukset jatkuu

1.7 Gradientti ja suunnatut derivaatat

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset

Matematiikka B2 - Avoin yliopisto

3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. Olkoot A 2 := AA =

1. Lineaarialgebraa A := Matriisin osia voidaan muutella päivittämällä riviä, saraketta tai osamatriisia (Matlabmaisesti): B :=

Matematiikan tukikurssi

Luento 6: Geometrinen mallinnus

T Tietokonegrafiikan perusteet. OpenGL-ohjelmointi

Luento 3: Transformaatiot (2D)

Visualisointi informaatio- verkostojen opinto-oppaasta Informaatioverkostojen kilta Athene ry Opintovastaava Janne Käki 19.9.

T Verkkomedian perusteet Tietokonegrafiikka

Differentiaali- ja integraalilaskenta 2 (CHEM) MS-A0207 Hakula/Vuojamo Kurssitentti, 12.2, 2018, arvosteluperusteet

Tasogeometriaa GeoGebran piirtoalue ja työvälineet

Matriisialgebra harjoitukset, syksy 2016

JOHDATUS TEKOÄLYYN TEEMU ROOS

Oppimistavoitematriisi

Avaruuden kolme sellaista pistettä, jotka eivät sijaitse samalla suoralla, määräävät

Visualisointi informaatio- verkostojen opinto-oppaasta Opintoneuvoja Teemu Meronen (päivitys Janne Käen visualisoinnin pohjalta)

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

JOHDATUS TEKOÄLYYN TEEMU ROOS

Tekijä Pitkä matematiikka Suoran pisteitä ovat esimerkiksi ( 5, 2), ( 2,1), (1, 0), (4, 1) ja ( 11, 4).

Solmu 3/2001 Solmu 3/2001. Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä:

Kokonaislukuoptiomointi Leikkaustasomenetelmät

MS-A Matriisilaskenta Laskuharjoitus 3

Muodonmuutostila hum

Luento 4: Näkyvyystarkastelut ja varjot

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 9: Muuttujanvaihto taso- ja avaruusintegraaleissa

LUKU 4. Pinnat. (u 1, u 2 ) ja E ϕ 2 (u 1, u 2 ) := ϕ u 2

Gimp 3. Polkutyökalu, vektori / rasteri, teksti, kierto, vääntö, perspektiivi, skaalaus (koon muuttaminen) jne.

3.4.1 Perspektiiviprojektio

4.1 Kaksi pistettä määrää suoran

Geogebra -koulutus. Ohjelmistojen pedagoginen hyödyntäminen

Visualisointi informaatioverkostojen Opintoneuvoja Janne Käki

Tietokonegrafiikan perusteet

Matematiikka ja teknologia, kevät 2011

Tekijät: Hellevi Kupila, Katja Leinonen, Tuomo Talala, Hanna Tuhkanen, Pekka Vaaraniemi

Malleja ja menetelmiä geometriseen tietokonenäköön

Sovellutuksia Pinta-alan ja tilavuuden laskeminen Keskiö ja hitausmomentti

Tietokonegrafiikan kertausta eli mitä jokaisen animaattorin tulisi tietää tekniikasta

Matriisit ja vektorit Matriisin käsite Matriisialgebra. Olkoon A = , B = Laske A + B, , 1 3 3

Transkriptio:

T-111.1100 Johdatus Tietoliikenteeseen ja Multimediaan Tietokonegrafiikka Timo Tossavainen Mediatekniikan laitos Timo.Tossavainen@tkk.fi T-111.1100 p. 1

Sisältö Rasterigrafiikka Grafiikan matematiikkaa Vektorigrafiikkaa Mallintaminen Sävytys Animaatio Virtuaalimaailmat Tutkimus Grafiikan kurssit T-111.1100 p. 2

Rasterigrafiikka Digitaaliset kuvat koostuvat pikseleistä hilalla, rasterilla Pikselillä voi olla väri Tyypillinen esitys muistissa Pikselin värikomponentit peräkkäin muistissa Kuva taulukkona pikseleiden värejä Näytönohjain näyttää taulukon sisällön kuvaruudulla. T-111.1100 p. 3

PutPixel, GetPixel Pikselin värin muuttaminen. Kirjoitetaan väri taulukkoon. PUTPIXEL(x,y,c) Image[x][y] c. Pikselin värin lukeminen. Luetaan väri taulukosta. GETPIXEL(x,y) return Image[x][y]. Monimutkaisemmat piirto-operaatiot rakentuvat näiden päälle. T-111.1100 p. 4

Bresenhamin jananpiirto Liikutaan sitä koordinaattiakselia pitkin, jolla jana on pidempi, ja väritetään rivin tai sarakkeen pikseli joka on janaa lähimpänä. Algoritmissa nerokas tapa laskea seuraava lähin piste edellisestä ilman kertolaskuja ja pyöristysvirheitä. y x x y (y 0 x x 0 y) = 0 ( y, x) e (x 1,y 1 ) y (x 0,y 0 ) x T-111.1100 p. 5

Alueen värittäminen Värjättävä jokin alue uudella värillä Väri tai reunan väri määrittelee alueen x Rekursiivinen algoritmi: Jos alkupikseli ei ole reunaa tai uuden värin värinen, väritä pikseli ja yritä täyttää alue alkupikselin naapureista. T-111.1100 p. 6

Monikulmion täyttäminen Etene ylhäältä alas, laske jokaisella vaakarivillä monikulmion ja vaakarivin leikkaukset ja täytä joka toinen leikkausten väli. T-111.1100 p. 7

Rasterigrafiikan ongelmia Ohjelman toiminta eri näytöillä Muistin tarve, tehokkuus Kuvan siirtäminen vaatii jokaisen pikselin kopiointia Kuvan skaalaaminen ja kiertäminen laskennallisesti raskaita T-111.1100 p. 8

Vektorigrafiikkaa Kuvataan piirrettävä kuva äärettömän tarkkojen matemaattisten primitiivien avulla Piirretään l. renderoidaan kuva halutun resoluution rasterille Kuvan osia voidaan muokata toisistaan riippumatta. Tarvitaan laskennallisesti tehokkaita objekteja. Objektin siirtäminen, skaalaus, kierto Leikkaukset, etäisyydet T-111.1100 p. 9

Muunnokset Siirtojen, kiertojen ja skaalausten yhdisteet ovat ns. affiineja muunnoksia, jotka voidaan esittää matriiseilla, kun koordinaattivektoreiden loppuun lisätään 1. Esimerkki: Siirto tasolla eli 2D:ssä: 1 0 x x x + x 0 1 y y = y + y 0 0 1 1 1 Kuvausten yhdiste = matriisikertolasku. Käänteismatriisi = käänteiskuvauksen matriisi. T-111.1100 p. 10

Muunnokset Käyttämällä homogeenisia koordinaatteja, esim. 2D (x,y, 1) on sama piste kuin kaikki (wx,wy,w), w 0, voidaan esittää yleisillä matriiseilla ns. projektiiviset kuvaukset, kuten perspektiiviprojektio. Esimerkiksi (x,y,z) (x/z,y/z) x 1 0 0 0 y 0 1 0 0 z = 0 0 1 0 w x y z x/z y/z 1 T-111.1100 p. 11

Geometriset primitiivit Suora, puolisuora, jana Hypertaso Pallo, ellipsoidi Kolmio, monikulmio Muunnokset nopeita laskea Primitiivit säilyvät muunnoksissa suora suora kolmio kolmio hypertaso hypertaso kartioleikkaus kartioleikkaus T-111.1100 p. 12

Resoluutioriippumattomuus Mallinnetaan piirros aiemmin käsitellyillä matemaattisilla primitiiveillä Piirretään primitiivit rasterille (rasterointi). Muunnokset: Voidaan tuottaa kuva piirroksesta eri asennoissa, eri mittakaavoissa ja eri resoluutioilla. V 1 V 8 V 2 V 3 V 6 V 7 V 4 V 5 T-111.1100 p. 13

Rasterointi Piirretään approksimaatio geometrisesta primitiivistä. P C r Q T-111.1100 p. 14

Ikkuna, näyttöalue Piirrosta katsellaan ikkunan (window) läpi Ikkunasta näkyvä osuus piirretään näyttöalueeseen (viewport) T-111.1100 p. 15

Leikkaaminen Rasterista ulos jääviä primitiivejä ei voida piirtää Leikataan primitiivit näyttöalueen sisälle, piirretään tulos Leikkausalgoritmeja: Cohen-Sutherland (janat), Sutherland-Hodgman (monikulmiot). T-111.1100 p. 16

3D-vektorigrafiikka Suorat, kolmiot ja monikulmiot säilyvät perspektiiviprojektiossa n projektio P katsoja projektion keskus u ikkuna katselutaso projektiotaso projektori T-111.1100 p. 17

Mallintaminen Objektien pintageometria mallinnetaan tyypillisesti kolmioilla. Projisoidaan kärkipisteet ja piirretään kolmiot. T-111.1100 p. 18

Näkyvyys Myöhemmin piirretyt peittävät aiemmin piirretyt. Kuution piirto sivu kerrallaan voi tuottaa ao. tulokset. T-111.1100 p. 19

Näkyvyys - maalarin algoritmi Piirretään monikulmiot takaa eteen. Oh wait. T-111.1100 p. 20

Näkyvyys - säteenheitto T-111.1100 p. 21

Näkyvyys - syvyyspuskuri Pidetään kirjaa etäisyydestä, jolla viimeksi piirretty pinnan piste on. Piirretään uusi pinnan piste, jos se on lähempänä. 1 3 2 1 2 3 Kuva yläpuolelta, katsoja alhaalla. T-111.1100 p. 22

Sävytys Pinnalta havaitun värin muodostaminen (shading). T-111.1100 p. 23

Ohjelmoitava sävytys Liitetään mallin kulmapisteisiin tietoa, joka interpoloidaan kolmioiden yli. Sävytysfunktio laskee pinnan värin vakioista ja interpoloidusta tiedosta. Esimerkiksi Valonlähteiden paikat ja tyypit Materiaalin valaistusominaisuudet Tekstuurit ja tekstuurikoordinaatit Pinnan hienorakenne (kuhmut) Joskus kuva muodostetaan useiden piirtokertojen avulla (esim. varjot). T-111.1100 p. 24

Volumetrinen sumu T-111.1100 p. 25

Paikallinen valaistus - Phong Taustavalo (ambient) Hajaheijastuva valo (diffuse), mattapinnat Peiliheijastuva valo (specular), kiiltävät pinnat x θ l n r θ θ θ α e x cos θ T-111.1100 p. 26

Varjot T-111.1100 p. 27

Varjot (2) T-111.1100 p. 28

Globaali valaistus - säteenseuranta Lähetetään säde silmästä pinnan pisteeseen, seurataan heijastuvaa sädettä ja kerätään valo pinnan pisteistä. T-111.1100 p. 29

Animaatio Muutetaan piirrettävän maailman tilaa suhteessa aikaan. Piirretään kuvia tietyillä ajanhetkillä. Pieni muutos kuvien välillä saa aikaan liikehavainnon. Reaaliaikainen 20+ kuvaa/s. Ongelman monimutkaisuuden takia tarvitaan työkaluja helpottamaan animaation määrittelyä. Liikkeet voivat olla suunniteltuja tai pohjautua fysiikkaan tai interaktioon. T-111.1100 p. 30

Käänteiskinematiikka Artikuloidun rakenteen liikkeen laskeminen tavoitteiden perusteella. T-111.1100 p. 31

Virtuaalimaailmat Törmäykset, fysiikka, interaktio T-111.1100 p. 32

Tutkimus Kuvapohjainen mallinnus ja renderointi T-111.1100 p. 33

Tutkimus (2) T-111.1100 p. 34

Kurssit Vuorovaikutteisen tietokonegrafiikan perusteet Vuorovaikutteisen tietokonegrafiikan jatkokurssi 3D-tuotanto Tietokoneanimaatio Tietokonegrafiikan seminaari Keinotodellisuus Erikoiskurssit/tutkimusseminaarit T-111.1100 p. 35

Kysymyksiä? Seuraava luento: Keino- ja lisätty todellisuus. T-111.1100 p. 36