Teknillinen Korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari. Ville Nenonen 49533A

Koko: px
Aloita esitys sivulta:

Download "Teknillinen Korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari. Ville Nenonen 49533A"

Transkriptio

1 Teknillinen Korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari Kevät 2004 Ville Nenonen 49533A

2 Graph Cut tekstuurisynteesimenetelmä Ville Nenonen TKK, Tietoliikenneohjelmistojen ja multimedian laboratorio Tiivistelmä Tämä paperi esittelee Graph Cut -tekstuurisynteesimenetelmän jonka avulla voidaan syntetisoida pienestä tekstuurinäytteestä suurempia samankalaisia tekstuureja. Menetelmä esittää uuden tavan sekä kuvapalasten leikkaukseen että liimaukseen uudeksi kuvaksi. Graph Cut -menetelmässä leikkaus- ja liimausoperaatiot lasketaan ottaen huomioon myös edelliset operaatiot jolloin aiemmilla menetelmillä helposti näkyviin jääneitä saumoja ei jää. Menetelmä toimii sekä kahdessa että kolmessa ulottuvuudessa joten sitä voidaan käyttää sekä kuva- ja videokuvasynteesissä jossa aika-akseli on kolmas ulottuvuus. 1 Johdanto tekstuurisynteesiin Tekstuurisynteesissä käsitellään pääsääntöisesti kaksiulotteisia kuvia siten että annetusta mallitekstuurista leikkaamalla ja liimaamalla saadaan vastaavat stokastiset ominaisuudet omaava (yleensä isompi) kuvatekstuuri. Tekstuureja halutaan syntetisoida koska suuria luonnollisen näköisiä tekstuureja on vaikea kopioida riittävän tarkasti suoraan luonnosta, kun taas pienten alueiden kuvaaminen on helppoa vaikkapa kameran avulla. Tästä kuvasta voidaan tekstuurisynteesin avulla saada tarkka mutta silti luonnollinen suuri pinta, esimerkiksi sopivat rapattu seinä tai ruohokenttä. Tekstuurisynteesimenetelmillä on myös muita sovellusmahdollisuuksia. Syntetisoituja tekstuureja tarvitaan pääasiassa tarkoissa kolmiulotteisissa malleissa kuten esimerkiksi arkkitehtien rakennusmallit. Arvioin että tulevaisuuden sovelluskohteista todennäköisin on pelit, mutta tällä hetkellä syntetisoitujen tekstuurien suuri koko ja tämän vuoksi suuri muistinkulutus rajoittaa niiden käyttöä. Tekstuurisynteesimenetelmien suurimmat ongelmat liittyvät tekstuurien leikkausja liimausoperaatioihin. Molemmat vaikuttavat siihen miten luonnollinen syntetisoidusta kuvasta saadaan. Epätoivottuja piirteitä ovat muun muassa näkyvät saumat sekä kuvan tai sen osien toistuminen samanlaisena pitkin kuvaa jolloin ihminen erottaa ne helposti kopioiduksi samasta kuvasta. Tekstuurisynteesi ei sovi kaikenlaisille kuville, 1

3 koska menetelmät perustuvat pääasiassa samankaltaisuuksien etsimiseen lähdekuvan eri osista. Tämän vuoksi menetelmät eivät osaa ottaa huomioon kuvan sisällön merkitystä luodessaan syntetisoitua kuvaa. Tämä voi aiheuttaa tahattomasti humoristisia tuloksia kuten yksikätisiä ihmisiä tai päättömiä lampaita kuten kuvassa 6. Tämä paperi esittelee Siggraph-konfrenssissa vuonna 2003 julkaistun Graph Cut -menetelmän (Kwatra et al., 2003), jolla on saatu parempia tuloksia tekstuurisynteesissä kuin vanhemmilla menetelmillä. Lisäksi menetelmä sopii myös muun muassa peräkkäisten pysäytyskuvien synteesiin aika-tasossa joten menetelmää voidaan käyttää myös videokuvan syntetisoimiseen. Kappaleessa 2 esitellään tekstuurisynteesin taustoja ja aiempia tuloksia. Kappale 3 käsittelee tarkasti Graph Cut -tekstuurisynteesiä. Menetelmä käydään läpi vaihe vaiheelta. Kappaleessa 4 esitellään menetelmän tuloksia tesktuurisynteesissä. Kappale 5 keskittyy menetelmän käyttöön pysäytys- ja videokuvan syntetisoinnissa. Viimeinen kappale 6 on yhteenveto tästä dokumentista. 2 Tausta Tekstuurisynteesitekniikat voidaan karkeasti jaotella kolmeen luokkaan. Ensimmäinen luokka on erilaiset parametrisointitekniikat, toinen luokka on menetelmät joissa mallikuvasta lasketaan erilaisia todennäköisyyksiä seuraavaksi pikseliksi joiden perusteella synteesikuva muodostetaan. Kolmas luokka johon uusimmat menetelmät yleensä kuuluvat kopioivat kokonaisia tilkkuja tai palasia lähdekuvista joista syntetisoitu kuva rakennetaan. Graph Cut -menetelmä kuuluu tähän kolmanteen luokkaan. Luokkarakenne on kuitenkin varsin karkea ja menetelmien välillä voi olla runsaasti yhteneväisyyksiä. Ensimmäisen luokan tekniikat käyttävät hyväkseen erilaisia parametreja joiden avulla lähdekuvaa voidaan tulkita ja joiden avulla saadaan aikaan syntetisoitu tulostekstuuri. Yksinkertaisin parametriesitys on käyttää hyväkseen värien histogrammeja jotka sen jälkeen yhdistetään syntetisoivaan kuvaan luotuun pohjakohinaan jonka avulla saadaan sopivaa satunnaisuutta. Menetelmä tuottaa hyviä tuloksia stokastisilla (satunnaisilla) tekstuureilla kuten hiekka (Heeger & Bergen, 1995). Toinen parametrisointitekniikka on esimerkiksi waveletien lisäys parametriksi (Portilla & Simoncelli, 2000). Parametrisoivat tekniikat eivät ole niin yleiskäyttöisiä kuin muut esitellyt tekniikat mutta niiden lähdekuvan analysointimenetelmät ovat erinomaisia. Tätä tietoa voidaan käyttää hyväksi erilaisissa hahmontunnistussovelluksissa. Parametrisointimenetelmien muunnelmia on tehty myös videokuvalle. Toisen luokan tekniikoissa kuvat muodostetaan kopioimalla yksi pikseli kerrallaan lähdekuvasta. De Bonet, 1997 esitti ensimmäisen tämän tekniikan menetelmän joka on kaksivaiheinen. Ensimmäisessä vaiheessa lähdekuvasta analysoidaan spatiaaliset (tilaa koskevat) todennäköisyydet kuvan eri osista vähentämällä kuvan resoluutiota kunnes päädytään yhden pikselin kokoiseen kuvaan. Nämä eri resoluution kuvat muodostavat liitoksia toistensa välillä ikään kuin pyramidin muotoon jossa päällimmäisenä on yhden pikselin kokoinen kuva. Näin voidaan päätellä mitkä pikselit täytyy tulla vierek- 2

4 käin jotta alkuperäisen kuvan tekstuurin muoto säilyisi. Toisessa vaiheessa rakennetaan edellisessä vaiheessa rakennetusta pyramidista syntetisoitava kuva analysoimalla todennäköisyyksiä mikä pikseli tulee jo kuvaan valitun pikselin viereen. Analysoinnissa käytetään hyväksi tietoa minkälaisia eroavaisuuksia ihmissilmä erottaa helpoiten. Näitä eroavaisuuksia pyritään tietenkin välttämään. Pikseli kerrallaan syntetisoivia tekniikoita on muitakin kuin edellä mainittu kuten Efros & Leung, 1999 ja Wei & Levoy, Saadut tulokset ovat usein hyviä ja soveltuvat myös spatiaalista informaatiota sisältäville tesktuureille kuten tiiliseinä tai puun syykuvio. Kolmannen luokan metodit joihin kuuluu myös tässä paperissa käsiteltävä Graph Cut -tekniikka kopioivat lähdetekstuurista sopivia palasia tai tilkkuja syntetisoituun tekstuuriin. Tämä on myös järkevää sillä useissa tekstuureissa on tiettyjä osia jotka toistuvat jatkuvasti. Tämän kolmannen ryhmän algoritmit keskittyvät ratkaisemaan ongelmia jotka johtuvat alkuperäisen kuvan leikkaamisesta ja saatujen palasten liimaamisesta tuloskuvaan. Ensimmäinen tämän tyypin algoritmi esiteltiin paperissa Ashikhmin, 2001 jossa lähdekuvaa käydään läpi pikseli kerrallaan syntetisoitavaa kuvaa varten siten että lähdekuvasta etsitään paras mahdollinen vieruspikseli nykyiselle pikselille. Käytännössä algoritmi löytää lähdetekstuurista melko suuria palasia jotka kopioituvat suoraan koska paras mahdollinen pikseli on usein tarkkailtavan pikselin vieressä alkuperäisessä kuvassa. Tilkkujen kopiontitekniikat sopivat parhaiten erityyppisille kuville ja sillä saadaan keskimäärin parhaan näköinen tulos jos algoritmia ei saa valita kuvaa varten erikseen. Nämä tekniikat eivät ole kuitenkaan erityisen hyödyllisiä hahmontunnistuksessa mutta sopivat usein videosynteesiin. 3 Graph Cut -menetelmän kuvaus Karkeasti ottaen Graph Cut -tekstuurisynteesi voidaan jakaa kahteen osioon eli tekstuurin leikkaukseen sekä sen liittämiseen syntetisoitavaan kuvaan. Kuitenkin nämä kaksi asiaa toimivat iteratiivisesti yhdessä jatkuvasti vuorotellen. Asia voidaan kuitenkin käsitellä melko hyvin kahdessa osassa jolloin se on myös helpompi ymmärtää. Ensimmäisessä osassa 3.1 käydään läpi sopivan palan valinta lähdekuvasta teksturoitavaan kuvaan ja toisessa osassa 3.2 tämän palan liimausoperaatiosta syntetisoitavaan kuvaan. 3.1 Tekstuurien leikkausalgoritmi Graph Cut -menetelmässä tekstuurit leikataan ja sovitetaan syntetisoitavaan kuvaan kolmella eri menetelmällä. Menetelmätovat täysin satunnainen leikkaus, koko tilkun sovittaminen ja osatilkun sovittaminen. Eri menetelmät sopivat erilaisille kuville. Jokaisessa menetelmässä pidetään huoli ettei koskaan kopioida samanlaista tilkkua uudelleen. Oli menetelmistä mikä tahansa käytössä niin ensimmäinen vaihe on kopioida koko kuva tai satunnaisesti osa siitä suorakulmion muotoisena joka sitten sijoitetaan 3

5 satunnaiseen kohtaan syntetisoitavaa kuvaa. Leikkausvaiheen iteraation seuraavat toimenpiteet riippuvat valitusta tavasta suorittaa leikkaus ja leikatun palan sijoitus. Täysin satunnaisessa leikkauksessa koko lähdekuva valitaan uudeksi tilkuksi jota sitten leikataan Graph Cut -algoritmin liimaustekniikan avulla sopivammaksi satunnaisesti valittuun sijoituskohtaan. Tätä toistetaan kunnes kuva on valmis. Mitä enemmän iteraatioita sitä enemmän tilkkuja kuvassa ja useimmiten myös parempi tulos. Tämä menetelmä on nopein leikkausalgoritmeista ja antaa hyviä tuloksia satunnaisilla tekstuureilla. Molemmissa sovitusmenetelmissä käytetään hyväksi Graph Cut -algoritmin laskemaa tietoa nykyisten saumojen kustannuksesta. Mitä suurempi kustannus saumalla on sitä suurempi todennäköisyys on että tämä sauma on näkyvä ihmissilmälle. Uusia tilkkuja pyritään sovittamaan näihin ongelma-alueisiin. Jos koko syntetisoitava kuva ei ole jo täysin lähdetekstuurin peitossa katsotaan että jokainen uusi liimattava tilkku peittää alleen myös jonkin verran peittämätöntä aluetta, jota analogisesti pidetään edellisen kaltaisena ongelma-alueena. Koko tilkun sovittamisessa etsitään lähdetekstuurista tilkku joka sopii mahdollisimman hyvin tämän hetkiseen tilanteeseen syntetisoitavassa kuvassa. Jokaiselle potentiaaliselle tilkulle lasketaan vertailuluku joita vertailemalla valitaan sopiva palanen nykyiseen kuvaan. Tätä tarkoitusta varten on kaava jossa lasketaan yhteisestä kuvaalasta pikseli kerrallaan peittävän ja vanhan pikselien toisen potenssin summa jaettuna vanhan kuvan peittyvällä alalla. Eli mitä enemmän leikkaussaumoilla on samankaltaisia pikseleitä tai mitä pienempi yhteinen pinta-ala on sitä parempi vertailuluvusta tulee. Saaduista vertailuluvuista voidaan haluttessa arpoa satunnaisesti minkälaisen palan algoritmi valitsee jotta saataisiin enemmän vaihtelua kuvaan. Vaihtoehdot vaihtelevat mahdollisimman sopivasta eli sellaisesta missä on mahdollisimman vähän leikkaavuuksia nykyisten palasten kanssa sellaiseen missä leikkaavuuksia on hieman enemmän. Tällä metodilla saadaan parhaita tuloksia järjestäytyneille tai lähes järjestäytyneillä tekstuureilla. Osatilkun sovittamisessa valitaan palasia lähdekuvasta jotka peittävät mahdollisimman hyvin syntetisoitavaan kuvaan syntyneitä ongelma-alueita. Tätä ongelma-aluetta syntetisoidussa kuvassa nimetään osatilkuksi. Valitut kuvan palaset ovat joko ongelmaalueen kokoisia tai hieman suurempia. Jotta osattaisiin valita mahdollisimman hyvä pala lähdekuvasta osatilkun sovittamisessa lasketaan vastaava kustannuslaskelma kopioimisille kuin koko tilkun sovittamamisessa. Tämän vertailuluvun avulla saadaan tietää miten kukin valittavissa oleva leikkaus sopii haluttuun sijoituskohtaan (ongelmaalueeseen). Vain sellaisia palasia otetaan huomioon jotka peittävät kokonaan syntetisoitavasta kuvasta valitun osatilkun. Myös tässä menetelmässä voidaan satunnaistaa miten täydellisesti sopivan palan algoritmi valitsee. Tämä menetelmä sopii parhaiten videokuvalle ja stokastisille tekstuureille. 4

6 3.2 Tekstuurien liimausalgoritmi Tekstuurien liimausalgorimit voidaan jakaa jakaa kolmeen osaan joista jokainen on oikeastaan uusi tilanne johon algoritmi sopeutuu. Ensimmäinen tapaus on liimata kaksi uutta saumaa toisisiinsa. Toinen tapaus on liittää yhteen kaksi kuvaa joissa toisessa tai molemmissa on jo vanhoja leikkauksia edellisten palasien kanssa. Kolmas tapaus on liimata uusi tilkku jo täysin täytettyyn kohtaan syntetisoitavassa kuvassa. Tälläinen tilanne tulee vastaan kun tahdotaan peittää saumakohtia uusilla tilkuilla. Kun kyseessä on kahden tilkun uusi sauma on ratkaistavana leikkaus näiden kahden tilkun välillä. Kuvat asetetaan osittain päällekkäin esimerkiksi 8 pikselin leveydeltä ja koko kuvan pituudelta. Esimerkiksi 32x32 pikselin tilkuilla voisi yhteisen kuvaalan koko olla 8x32 pikseliä. Tälle yhteiselle kuva-alalle muodostetaan suorakulmion muotoinen graafi jossa jokainen pikseli on yksi graafin solmu. Tämän jälkeen asetetaan yksi solmu merkkamaan molempia tilkun osia jotka eivät ole päällekkäin. Tämän jälkeen saadun graafien solmujen välille lasketaan kaaret. Kaaret graafin reunoilta lopputilkkua merkitseviin solmuihin merkataan äärettömän pituiksi. Tämä merkitsee sitä että nämä pikselit tulevat aina valituksi lopulliseen leikkaukseen. Lopuille solmuille lasketaan pituus laskemalla päällekkäin olevien pikselien värien erotus. Kun kaikkien solmujen väliin on laskettu kaari lasketaan leikkaus ylhäältä alas alkaen leikaten aina siitä kohdasta missä kaari on lyhin. Tämä leikkaus on yleisesti tunnettu graafiongelma ja sen ratkaisu on helppo implementoida. Tätä ratkaisua on kutsuttu joko nimellä min-cut (Ford & Fulkerson, 1962) tai max-flow (Sedgewick, 2001). Seuraava tilanne on ottaa huomioon tilkkua liitettäessä jo liitoskohtaan aiemmin liitettyjen tilkkujen saumat. Tässä kohtaa Graph Cut -menetelmä eroaa aiemmin käytetyistä algoritmeista sillä se muistaa aiemmat saumat toisin kuin vanhemmat ratkaisut. Uuden ja vanhojen palojen yhteyteen muodostetaan jälleen graafi kuten edellisessä kappaleessa kerrottiin mutta sillä erotuksella että vanhat leikkaukset merkataan tähän graafiin omina saumasolmuinaan. Jokainen saumasolmu liitetään kaarella uutta palaa merkitsevään solmuun. Tämän kaaren pituudeksi merkataan sitä merkitsevän vanhan sauman pituus. Koska saumasolmu tuli kahden äsken liitettynä olleen solmun väliin, täytyy näiden ja saumasolmujen välinen pituus laskea uudelleen. Pituudeksi merkataan edelliseen tapaan olemassa olevien ja uusien pikselien värien erotus. Samaan tapaan toimitaan jokaisen vanhan solmun kohdalla kunnes on jälleen luotu graafi, joka ei kuitenkaan enää ole suorakulmion muotoinen saumasolmujen vuoksi. Tämän jälkeen graafista ratkaistaan jälleen leikkaus. Jos saumasolmun ja uuden kuvan välinen kaari leikataan tarkoittaa tämä sitä että vanha sauma jää myös uuteen kuvaan. Jos sitä taas ei leikata, sauma peittyy uusilla pikseleillä eikä vanhaa kaaren pituutta lasketa mukaan tämän kaaren (sauman) pituuteen. Jos taas jompi kumpi kaarista saumasolmun ja pikselien välillä leikataan merkitsee tämä sitä että edellisen sauman kohtaan tulee myös uusi sauma jota esittävän kaaren pituuteen on laskettavan vanhaa saumaa esittävän kaaren pituus. On tärkeä huomata että korkeintaan yksi kolmesta jokaisesta saumasolmusta lähtevästä kaaresta voidaan leikata jotta min-cut algoritmi toimisi oikein. 5

7 Kolmas tilanne johon voidaan törmätä etenkin peitettäessä todennäköisesti näkyviä saumoja on sellainen missä uusi tilkku liitetään alueeseen joka on jo täytetty kokonaan aiemmilla tilkuilla. Tilanne ei eroa varsinaisesti mitenkään edellisessä kappaleessa selostetusta tilkkujen liittämisestä. Nyt algoritmi suoritetaan koko liimattavan kappaleen reunalle. Uuden tilkun keskelle jäänyt alue peittää alle jäävän mahdollisen ongelmakohdan. Graafin parhaan leikkauksen etsiminen n solmuiselle graafille on Sedgewick, 2001 mukaan luokkaa. Tekstuurisynteesissä käytetyissä graafeissa vaativuus on Kwatra et al., 2003 mukaan ollut enemmän luokkaa. 3.3 Tehokkuutta parantavat lisäykset Kwatra et al., 2003 esittävät kolme erilaista parannusta ja tehokkuutta lisäävä seikkaa Graph Cut -tekstuurisynteesimenetelmään. Ensimmäinen esitetty on parempi funktio kahden pikselin välisen eron laskemiseksikuin on pelkkä värien eron laskeminen joka on esitetty kappaleessa 3.2. Uudessa funktiossa otetaan huomioon myös se seikka että tasaisessa värialueessa algoritmin aiheuttamat epämuodostumat näkyvät helpommin. Niinpä värien erotuksen lisäksi otetaan huomioon myös värien muutoksen nopeus ympärillä olevissa pikseleissä (värien jyrkkyys). Toinen parannus Graph Cut-menetelmään on lisätä huntuisuutta saumakohtiin koska vaikka paras mahdollinen sauma löydetään aina ei se välttämättä ole silti näkymätön. Huntuisuus lasketaan jokaiselle pikselille sopivalta etäisyydeltä saumoista. Pikselien väriarvojen dynamiikkaa vähennetään joten mahdolliset näkyvät ongelmakohdat näkyvät huonommin. Toinen tapa vähentää saumojen näkyvyyttä on laskea kuvan resoluutiota saumojen kohdalta. Tämä vähentää kuvan kontrastia jos ongelmasaumoja on useita. Kwatra et al., 2003 mainitaan että yleensä jompikumpi saumakohtien näkyvyyttä estävä menetelmä toimii paremmin riippuen syntetisoitavasta kuvasta. Kolmas tapa parantaa Graph Cut -algoritmin tehokkuutta on muuttaa parasta saumaa etsivien algoritmien muoto sellaiseksi että voidaan käyttää hyväksi nopeita Fouriermuunnoksia. Tämä nopeuttaa saumoja etsivää algoritmia moninkymmenkertaisesti. 4 Tekstuurisynteesin tuloksia Tässä kappaleessa esitellään syntetisoituja tekstuureja sekä kommentoidaan synteesin onnistumista. Kuvat 1 ja 2 esittää näppäimistöstä syntetisoidun kuvan jossa vasemmalla on näyte ja oikealla suurempi syntetisoitu kuva. Tekstuurisynteesi on onnistunut hyvin koska näytekuvassa esiintyy toistuvia rakenteita jotka algoritmi kopioi kokonaisina syntetisoitavaan kuvaan. Tähän kuvaan on käytetty kappaleessa 3.1 selostettua koko tilkun sovittamista. 6

8 Kuva 1: Näppäimistön lähdekuva. Kuva 2: Syntetisoitu näppäimistö kuuden iterointikierroksen jälkeen. Kuva 4 esittää syntetisoitua kuvaa oliiveista jotka syntetisoituvat hyvin. Kuvaan on saatu lisää monipuolisuutta käyttämällä hyväksi myös muita muunnoksia kuin pelkkää kopiointia ja leikkausta. Tähän kuvaan on käytetty myös kuvan peilausta ja pyöritystä, tämän voi nähdä myös vertaamalla syntetisoitua kuvaa lähdekuvaan 3. Nämä muunnokset ovat hyödyllisiä kun syntetisoidaan sellaista tekstuuria jossa syntetisoitavien kappaleiden asennolla ei ole merkitystä kuten kuvan oliiveilla. Esimerkiksi ihmisjoukkoa syntetisoidessa ei pyöritys tuottaisi luonnollisen näköisiä tuloksia. Kuva 3: Oliivi lähdekuva. Kuva 4: Syntetisoitu oliivitekstuuri jossa on käytetty hyväksi myös rotaatioita. Kuvassa 6 nähdään syntetisoituja lampaita lähdekuvasta 5. Syntetisointi toimii muuten mainiosti mutta algoritmi ei osaa tulkita kuvan sisältöä joten lampailla saattaa olla kaksi häntää tai kaksi päätä. Tämän havaitseminen on helppoa. Tässä kuvassa on käytetty kappaleessa 3.1 käytettyä osatilkun sovittamista. 7

9 Kuva 5: Lammas lähdekuva Kuva 6: Syntetisoituja lampaita kuuden iterointikierroksen jälkeen. Graph Cut -menetelmällä saadaan aikaan parempia tuloksia kuin aiemmilla tekstuurisyntetisointimenetelmillä. Kwatra et al., 2003 vertaavat Graph Cut-menetelmää paperissa Efros & Freeman, 2001 esitetyn menetelmän kanssa. Kuvat ovat parempia Graph Cut -menetelmällä, koska kuvissa näkyy vähemmän selviä epämuodostumia joka johtuu Graph Cut -menetelmän tavasta etsiä aina parhaat mahdolliset leikkaukset kuvatilkuille. 5 Muita sovelluksia Graph Cut -menetelmälle Tekstuurisynteesin lisäksi Graph Cut -menetelmällä voidaan tehdä myös kuva- ja videotekstuurisynteesiä. Kuvasynteesissä useita kuvia yhdistetään yhdeksi kuvaksi kun taas videosynteesissä lyhyestä videosta syntetisoidaan pidempi ilman että video näyttäisi siltä että sitä vain toistetaan useita kertoja peräkkäin. 5.1 Kuvasynteesi Kuvasynteesi tapahtuu Graph Cut -algoritmilla merkkaamalla lähdekuviin mitkä pikselit tai pikselialueet on valittava mistäkin kuvasta. Tämän jälkeen algoritmi etsii parhaat mahdolliset saumakohdat leikattavaksi ja liimattavaksi yhteen kuvaan. Parhaita saumakohtia ovat joko sellaiset värialueet joita esiintyy sekä liimattavassa että leikattavassa kuvassa tai ne kohdat kuvissa joissa esiintyy jyrkkiä värimuunnoksia. Kuvasynteesi esimerkissä kuvassa 9 nähdään miten on yhdistetty kuva 7 mökistä ja kuva 8 jokimaisemasta jossa paras leikkaus on löytynyt vedestä joka myös silmämääräisesti arvioiden näyttää olevan lähes samanväristä molemmissa kuvissa. Kuva 7: Kuva josta leikataan mökki syntetisoitavaan kuvaan. Kuva 8: Kuva josta leikataan metsämaisema syntetisoitavaan kuvaan. 8

10 Kuva 9: Yhdistetty kuva jossa paras leikkaus kuvien välillä löytyi lähes samanvärisestä vedestä jota esiintyy molemmissa kuvissa. 5.2 Videotekstuurisynteesi Graph Cut -tekstuurisynteesitekniikka sopii hyvin myös videokuvan syntetisoimiseen. Videokuvan syntetisoiminen on haasteellisempi tehtävä kuin kaksiulotteisen kuvan syntetisoiminen koska siinä on myös temporaalinen ulottuvuus, eli aika. Myös videokuvaa syntetisoidessa on tärkeää valita sopiva tilkun leikkausmenetelmä, koska eri menetelmät toimivat eri tavoin erilaisilla videoilla. Videomateriaalissa voi muutokset tapahtua spatiaalisesti ja temporaalisesti. Jos muutoksia tapahtuu näissä molemmissa tasoissa on leikkauskin etsittävä näissä tasoissa. Jos videossa esiintyy vain temporaalisia muutoksia voidaan keskittyä etsimään leikkausta vain aikatasossa. Yksi sovellus videotekstuurisynteesille on tehdä lyhyistä videoista pidempiä niin että niitä voidaan toistaa ikuisesti ilman että niissä näkyy selviä merkkejä toistosta. Jos videossa esiintyy vain temporaalista muutosta voidaan videosta tehdä loppumaton etsimällä riittävän samanlaisia kuvia ja syntetisoimalla niiden väliin jäävät ruudut Graph Cut -menetelmällä. Tällöin leikkaukseksi syntyy aina taso eikä viiva kuten kaksiulotteisissa sovelluksissa. Kwatra et al., 2003 esittää että 60 ruudun syntetisointi kahden olemassa olevan ruudun väliin toimii hyvin ja antaa hyviä tuloksia monilla videoilla. Tyypillisiä videoita joissa muutokset ovat lähinnä temporaalisia ja edellä mainittu synteesi toimii hyvin ovat esimerkiksi tuulessa huojuva pelto ja suihkulähde. Jos videossa on temporaalisen muutoksen lisäksi huomattavaa spatiaalista muutosta on videosynteesi vaikeampaa. Tälläisiä videoita ovat esimerkiksi savu joka liikkuu jatkuvasti tiettyyn suuntaan ja aallot jotka lyövät meren rantaan. Tälläisiä videoita syntetisoidessa täytyy ottaa huomioon myös liikkeen suunta ja myös liikuttaa pikseleitä syntetisoidessa uusia ruutuja olemassa olevien ruutujen väliin. Tälläisiin videoihin paras leikkausalgoritmi on osa-tilkun sovittaminen. Kun muutokset tapahtuvat sekä pai- 9

11 kan että ajan mukaan on videon ikuinen toistaminen paljon vaikeampaa kuin pelkän ajan suhteen syntetisoidessa. Tämä voidaan ratkaista pakottamalla syntetisoitavan videon 10 ensimmäistä ja viimeistä ruutua samoiksi ja syntetisoinnin jälkeen poistamalla 10 ensimmäistä ruutua syntetisoidusta videosta. Kwatra et al., 2003 esittää meren rantaan lyövät aallot sellaisena materiaalina jota he eivät onnistuneet syntetisoimaan koska algoritmi hävittää aallot alhaalta ylös eikä onnistu syntetisoimaan niiden katoamista rantahietikkoon. Jos syntetisoitava video on hyvin lyhyt voi sen syntetisointi onnistua jos videossa näkyvä ilmiö on luonnossakin tarpeeksi satunnainen. Tälläinen ilmiö on esimerkiksi tuli jota voidaan syntetisoida onnistuneesti lyhyestäkin näytteestä lisäämällä spatiaalisiin siirtymiin sattumanvaraisuutta. Tämä lisää entisestään syntetisoidun videon monipuolisuutta. Myös videon kokoa voidaan suurenta kuten kaksiulotteisten kuvienkin tapauksessa. Tällöin suurempaan ruutuun syntetisoidaan alkuperäisen kaltaista kuvaa kuten kaksiulotteisissakin kuvissa. Esimerkkejä Graph Cut -menetelmällä syntetisoiduista videoista löytyy sivulta URL:< 6 Yhteenveto Tässä paperissa esiteltiin Graph Cut -tekstuurisynteesimenetelmä jonka avulla syntetisoituihin tekstuureihin löydetään aina parhaat mahdolliset leikkaus- ja liimauskohdat. Sekä leikkaukseen että liimaukseen esitettiin useita ratkaisumalleja jotka sopivat erilaisiin tilanteisiin. Tämä tekee algoritmista mukautuvan. Menetelmällä on useita sovelluksia kuten tekstuurisynteesi, kuvasynteesi ja videotekstuurisynteesi. Mielestäni Graph Cut -menetelmä on melko vakuuttava ja vertailutulokset aiemmin käytettyihin menetelmiin ovat selvästi paremmat joskin ongelmatapauksia ja niiden mahdollisia ratkaisukeinoja olisi voinut esitellä enemmän. Kaksiulotteisille tekstuureille algoritmi toimii kuitenkin hienosti ja algoritmia voisi käyttää jo nyt hyväksi luodessa suuria tekstuureja tarkkoihin kolmiuloitteisiin malleihin. Graph Cut -menetelmä jättää kuitenkin useita jatkotutkimuksen kohteita monimutkaisempien tekstuurien syntetisointia varten. Yksi näistä olisi kehittää jokin älykäs järjestelmä joka tunnistaisi kuvasta minkälaiset muodot ovat toivottuja jotta päättömiä lampaita ei syntyisi syntetisoinnissa. Universaalin ratkaisun kehittäminen olisi todennäköisesti lähes mahdotonta mutta jos algoritmi osaisi etsiä ominaisuudet jotka toistuvat tietynmuotoisissa kappaleissa on, lampaiden tapauksessa vaikkapa kaksi silmää ja yksi pää, voisi tekstuurisynteesin laatu parantua vielä nykyisestä. VIITTEET Ashikhmin Michael Synthesizing natural textures. Pages of: Proceedings of the 2001 symposium on Interactive 3D graphics. ACM Press. 10

12 De Bonet Jeremy S Multiresolution sampling procedure for analysis and synthesis of texture images. Pages of: Proceedings of the 24th annual conference on Computer graphics and interactive techniques. ACM Press/Addison- Wesley Publishing Co. Efros Alexei A. & Freeman William T Image quilting for texture synthesis and transfer. Pages of: Proceedings of the 28th annual conference on Computer graphics and interactive techniques. ACM Press. Efros Alexei A. & Leung Thomas K Texture Synthesis by Non-Parametric Sampling. Page 1033 of: Proceedings of the International Conference on Computer Vision-Volume 2. IEEE Computer Society. Ford L. & Fulkerson Flows in Networks. Princeton University Press. Heeger David J. & Bergen James R Pyramid-based texture analysis/synthesis. Pages of: Proceedings of the 22nd annual conference on Computer graphics and interactive techniques. ACM Press. Kwatra Vivek, Schödl Arno, Essa Irfan, Turk Greg & Bobick Aaron Graphcut Textures: Image and Video Synthesis Using Graph Cuts. ACM Transactions on Graphics, SIGGRAPH 2003, 22(3), Portilla Javier & Simoncelli Eero P A Parametric Texture Model Based on Joint Statistics of Complex Wavelet Coefficients. Int. J. Comput. Vision, 40(1), Sedgewick Algorithms in C. Addison-Wesley. Chap. Part 5: Graph Algorithms. Wei Li-Yi & Levoy Marc Fast texture synthesis using tree-structured vector quantization. Pages of: Proceedings of the 27th annual conference on Computer graphics and interactive techniques. ACM Press/Addison-Wesley Publishing Co. 11

Ville Nenonen 49533A

Ville Nenonen 49533A Teknillinen Korkeakoulu 26.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Kevät 2004: Kuvapohjaiset menetelmät Ville Nenonen 49533A Graph Cut -tekstuurisynteesimenetelmä

Lisätiedot

Graph cut - tekstuurisynteesitekniikka

Graph cut - tekstuurisynteesitekniikka TEKNILLINEN KORKEAKOULU 28.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Kevät 2004 Graph cut - tekstuurisynteesitekniikka Laura Kainonen 52627U Graph

Lisätiedot

TEKNILLINEN KORKEAKOULU Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari Kevät 2004

TEKNILLINEN KORKEAKOULU Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari Kevät 2004 TEKNILLINEN KORKEAKOULU 7.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Kevät 2004 Graphcut Textures Laura Kainonen 52627U Graphcut Textures Laura

Lisätiedot

Luku 8. Aluekyselyt. 8.1 Summataulukko

Luku 8. Aluekyselyt. 8.1 Summataulukko Luku 8 Aluekyselyt Aluekysely on tiettyä taulukon väliä koskeva kysely. Tyypillisiä aluekyselyitä ovat, mikä on taulukon välin lukujen summa tai pienin luku välillä. Esimerkiksi seuraavassa taulukossa

Lisätiedot

Kuva-analogiat. Juha Uotila 50468E

Kuva-analogiat. Juha Uotila 50468E TEKNILLINEN KORKEAKOULU 26.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Kevät 2004: Kuvapohjaiset menetelmät Kuva-analogiat Juha Uotila 50468E Kuva-analogiat

Lisätiedot

Kenguru 2015 Mini-Ecolier (2. ja 3. luokka) RATKAISUT

Kenguru 2015 Mini-Ecolier (2. ja 3. luokka) RATKAISUT sivu 1 / 10 3 pistettä 1. Kuinka monta pilkkua kuvan leppäkertuilla on yhteensä? (A) 17 (B) 18 (C) 19 (D) 20 (E) 21 Ratkaisu: Pilkkuja on 1 + 1 + 1 + 2 + 2 + 1 + 3 + 2 + 3 + 3 = 19. 2. Miltä kuvan pyöreä

Lisätiedot

Tekstuurien syntetisointi pinnoille

Tekstuurien syntetisointi pinnoille Teknillinen Korkeakoulu 27. huhtikuuta 2004 Tietoliikenneohjelmistojen ja multimedian laboratorio Tik-111.500 Tietokonegrafiikan seminaari Kevät 2004 Kuvapohjaiset menetelmät Tekstuurien syntetisointi

Lisätiedot

Tietorakenteet, laskuharjoitus 7, ratkaisuja

Tietorakenteet, laskuharjoitus 7, ratkaisuja Tietorakenteet, laskuharjoitus, ratkaisuja. Seuraava kuvasarja näyttää B + -puun muutokset lisäysten jälkeen. Avaimet ja 5 mahtuvat lehtisolmuihin, joten niiden lisäys ei muuta puun rakennetta. Avain 9

Lisätiedot

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 2. Luento 13 Ti Timo Männikkö Algoritmit 2 Luento 13 Ti 30.4.2019 Timo Männikkö Luento 13 Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Ositus ja rekursio Rekursion toteutus Algoritmit 2 Kevät 2019 Luento 13 Ti 30.4.2019

Lisätiedot

Kombinatorinen optimointi

Kombinatorinen optimointi Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein

Lisätiedot

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria Graafit ja verkot Suuntamaton graafi: eli haaroja Joukko solmuja ja joukko järjestämättömiä solmupareja Suunnattu graafi: Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria Haaran päätesolmut:

Lisätiedot

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt Yhtälöryhmät 1/6 Sisältö Yhtälöryhmä Yhtälöryhmässä on useita yhtälöitä ja yleensä myös useita tuntemattomia. Tavoitteena on löytää tuntemattomille sellaiset arvot, että kaikki yhtälöt toteutuvat samanaikaisesti.

Lisätiedot

Johdatus verkkoteoriaan 4. luento

Johdatus verkkoteoriaan 4. luento Johdatus verkkoteoriaan 4. luento 28.11.17 Viikolla 46 läpikäydyt käsitteet Viikolla 47 läpikäydyt käsitteet Verkko eli graafi, tasoverkko, solmut, välit, alueet, suunnatut verkot, isomorfiset verkot,

Lisätiedot

Algoritmit 2. Luento 11 Ti Timo Männikkö

Algoritmit 2. Luento 11 Ti Timo Männikkö Algoritmit 2 Luento 11 Ti 24.4.2018 Timo Männikkö Luento 11 Rajoitehaku Kapsäkkiongelma Kauppamatkustajan ongelma Paikallinen etsintä Lyhin virittävä puu Vaihtoalgoritmit Algoritmit 2 Kevät 2018 Luento

Lisätiedot

Kenguru 2019 Student lukio

Kenguru 2019 Student lukio sivu 0 / 7 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Koodi (ope täyttää): Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Oikeasta vastauksesta

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 10 1 Funktion monotonisuus Derivoituva funktio f on aidosti kasvava, jos sen derivaatta on positiivinen eli jos f (x) > 0. Funktio on aidosti vähenevä jos sen derivaatta

Lisätiedot

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen Luento omatoimisen luennan tueksi algoritmiikan tutkimusseminaarissa 23.9.2002. 1 Sisältö Esitellään ongelmat Steiner-puu Kauppamatkustajan

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 Väliarvolause Oletetaan, että funktio f on jatkuva jollain reaalilukuvälillä [a, b] ja derivoituva avoimella välillä (a, b). Funktion muutos tällä välillä on luonnollisesti

Lisätiedot

Datatähti 2019 loppu

Datatähti 2019 loppu Datatähti 2019 loppu task type time limit memory limit A Summa standard 1.00 s 512 MB B Bittijono standard 1.00 s 512 MB C Auringonlasku standard 1.00 s 512 MB D Binääripuu standard 1.00 s 512 MB E Funktio

Lisätiedot

PARITUS KAKSIJAKOISESSA

PARITUS KAKSIJAKOISESSA PARITUS KAKSIJAKOISESSA GRAAFISSA Informaatiotekniikan t iik seminaari i Pekka Rossi 4.3.2008 SISÄLTÖ Johdanto Kaksijakoinen graafi Sovituksen peruskäsitteet Sovitusongelma Lisäyspolku Bipartite matching-algoritmi

Lisätiedot

Kenguru 2011 Cadet (8. ja 9. luokka)

Kenguru 2011 Cadet (8. ja 9. luokka) sivu 1 / 7 NIMI LUOKKA/RYHMÄ Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Jätä ruutu tyhjäksi, jos et halua

Lisätiedot

T : Max-flow / min-cut -ongelmat

T : Max-flow / min-cut -ongelmat T-61.152: -ongelmat 4.3.2008 Sisältö 1 Määritelmät Esimerkki 2 Max-flow Graafin leikkaus Min-cut Max-flow:n ja min-cut:n yhteys 3 Perusajatus Pseudokoodi Tarkastelu 4 T-61.152: -ongelmat Virtausverkko

Lisätiedot

Harjoitus 6 ( )

Harjoitus 6 ( ) Harjoitus 6 (21.4.2015) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s. t. g(x) 0 h(x) = 0 x X olevan optimointitehtävän Lagrangen duaali on missä max θ(u, v) s. t.

Lisätiedot

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 2. Luento 13 Ti Timo Männikkö Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys

Lisätiedot

Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005

Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Graafin 3-värittyvyyden tutkinta T-79.165 Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Mikko Malinen, 36474R 29. maaliskuuta, 2005 Tiivistelmä Artikkelissa käydään läpi teoriaa, jonka avulla

Lisätiedot

Algoritmit 1. Luento 8 Ke Timo Männikkö

Algoritmit 1. Luento 8 Ke Timo Männikkö Algoritmit 1 Luento 8 Ke 1.2.2017 Timo Männikkö Luento 8 Järjestetty binääripuu Solmujen läpikäynti Binääripuun korkeus Binääripuun tasapainottaminen Graafit ja verkot Verkon lyhimmät polut Fordin ja Fulkersonin

Lisätiedot

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Esimerkki otteluvoiton todennäköisyys A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Yksittäisessä pelissä A voittaa todennäköisyydellä p ja B todennäköisyydellä q =

Lisätiedot

Algoritmit 2. Luento 6 To Timo Männikkö

Algoritmit 2. Luento 6 To Timo Männikkö Algoritmit 2 Luento 6 To 28.3.2019 Timo Männikkö Luento 6 B-puun operaatiot Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2019 Luento 6 To 28.3.2019 2/30 B-puu 40 60 80 130 90 100

Lisätiedot

Cadets 2004 - Sivu 1 RATKAISUT

Cadets 2004 - Sivu 1 RATKAISUT Cadets 2004 - Sivu 1 3 pistettä 1/ Laske 2004 4 200 A 400800 B 400000 C 1204 1200 E 2804 2004 4 200= 2004 800= 1204 2/ Tasasivuista kolmiota AC kierretään vastapäivään pisteen A ympäri. Kuinka monta astetta

Lisätiedot

Kenguru 2012 Junior sivu 1 / 8 (lukion 1. vuosi)

Kenguru 2012 Junior sivu 1 / 8 (lukion 1. vuosi) Kenguru 2012 Junior sivu 1 / 8 Nimi Ryhmä Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta

Lisätiedot

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto) 811 Tietorakenteet (kevät 9) Harjoitus 11, ratkaisuja (Topi Musto) 1. Bellmanin-Fordin algoritmin alustusvaiheen jälkeen aloitussolmussa on arvo ja muissa solmuissa on arvo ääretön. Kunkin solmun arvo

Lisätiedot

Cadets Sivu 1

Cadets Sivu 1 Cadets 2004 - Sivu 1 3 pistettä 1/ Laske 2004 4 200 A 400800 B 400000 C 1204 1200 E 2804 2/ Tasasivuista kolmiota AC kierretään vastapäivään pisteen A ympäri. Kuinka monta astetta sitä on kierrettävä kunnes

Lisätiedot

Kenguru 2012 Cadet (8. ja 9. luokka)

Kenguru 2012 Cadet (8. ja 9. luokka) sivu 1 / 7 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta saat miinuspisteitä

Lisätiedot

Kenguru 2017 Student lukio

Kenguru 2017 Student lukio sivu 1 / 9 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Oikeasta vastauksesta saa 3, 4 tai 5 pistettä.

Lisätiedot

Impedanssitomografia-peli

Impedanssitomografia-peli Impedanssitomografia-peli Avainsanat: inversio-ongelmat, päättely, satunnaisuus Luokkataso: 3.-5. luokka, 6.-9. luokka, lukio, yliopisto Välineet: kynä, paperia, 2 pelinappulaa, 4 kolikkoa tai kolikonheittokortit

Lisätiedot

2 Pistejoukko koordinaatistossa

2 Pistejoukko koordinaatistossa Pistejoukko koordinaatistossa Ennakkotehtävät 1. a) Esimerkiksi: b) Pisteet sijaitsevat pystysuoralla suoralla, joka leikkaa x-akselin kohdassa x =. c) Yhtälö on x =. d) Sijoitetaan joitain ehdon toteuttavia

Lisätiedot

1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa:

1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa: Tietorakenteet, laskuharjoitus 10, ratkaisuja 1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa: SamaLuku(T ) 2 for i = 1 to T.length 1 3 if T [i] == T [i + 1] 4 return True 5 return

Lisätiedot

10. Painotetut graafit

10. Painotetut graafit 10. Painotetut graafit Esiintyy monesti sovelluksia, joita on kätevä esittää graafeina. Tällaisia ovat esim. tietoverkko tai maantieverkko. Näihin liittyy erinäisiä tekijöitä. Tietoverkkoja käytettäessä

Lisätiedot

Scratch ohjeita. Perusteet

Scratch ohjeita. Perusteet Perusteet Scratch ohjeita Scratch on graafinen ohjelmointiympäristö koodauksen opetteluun. Se soveltuu hyvin alakouluista yläkouluunkin asti, sillä Scratchin käyttömahdollisuudet ovat monipuoliset. Scratch

Lisätiedot

4. Varastossa on 24, 23, 17 ja 16 kg:n säkkejä. Miten voidaan toimittaa täsmälleen 100 kg:n tilaus avaamatta yhtään säkkiä?

4. Varastossa on 24, 23, 17 ja 16 kg:n säkkejä. Miten voidaan toimittaa täsmälleen 100 kg:n tilaus avaamatta yhtään säkkiä? Peruskoulun matematiikkakilpailu Loppukilpailu perjantaina 3.2.2012 OSA 1 Ratkaisuaika 30 min Pistemäärä 20 Tässä osassa ei käytetä laskinta. Kaikkiin tehtäviin laskuja, kuvia tai muita perusteluja näkyviin.

Lisätiedot

Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea.

Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea. Roolit Tommi Perälä Department of Mathematics, Hypermedia Laboratory Tampere University of Technology 25.3.2011 J. Kleinberg kehitti -algoritmin (Hypertext Induced Topic Search) hakukoneen osaksi. n taustalla

Lisätiedot

Kenguru 2016 Student lukiosarja

Kenguru 2016 Student lukiosarja sivu 1 / 9 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta saat miinuspisteitä

Lisätiedot

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen Etsintä verkosta (Searching from the Web) T-61.2010 Datasta tietoon Heikki Mannila, Jouni Seppänen 12.12.2007 Webin lyhyt historia http://info.cern.ch/proposal.html http://browser.arachne.cz/screen/

Lisätiedot

Toinen harjoitustyö. ASCII-grafiikkaa

Toinen harjoitustyö. ASCII-grafiikkaa Toinen harjoitustyö ASCII-grafiikkaa Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin itse. Ideoita

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 4 Jatkuvuus Jatkuvan funktion määritelmä Tarkastellaan funktiota f x) jossakin tietyssä pisteessä x 0. Tämä funktio on tässä pisteessä joko jatkuva tai epäjatkuva. Jatkuvuuden

Lisätiedot

MAB3 - Harjoitustehtävien ratkaisut:

MAB3 - Harjoitustehtävien ratkaisut: MAB3 - Harjoitustehtävien ratkaisut: 1 Funktio 1.1 Piirretään koordinaatistoakselit ja sijoitetaan pisteet: 1 1. a) Funktioiden nollakohdat löydetään etsimällä kuvaajien ja - akselin leikkauspisteitä.

Lisätiedot

MATEMATIIKKA JA TAIDE I

MATEMATIIKKA JA TAIDE I 1 MATEMATIIKKA JA TAIDE I Tehtävät sopivat peruskoulun alaluokille. Ne on koostettu Matematiikkalehti Solmun Matematiikkadiplomeista I VI. Sivunumerot viittaavat näiden diplomitehtävien sivuihin. Aihepiirejä:

Lisätiedot

Keskeiset ladonta-algoritmit verkostoanalyysityössä

Keskeiset ladonta-algoritmit verkostoanalyysityössä Keskeiset ladonta-algoritmit verkostoanalyysityössä Verkostoanalyysi 2011 TTY Jarno Marttila Tampereen teknillinen yliopisto Hypermedialaboratorio TUT / HLAB 1 Sisällys Graafien piirtämisestä Ladonnasta

Lisätiedot

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS JOHDATUS TEKOÄLYYN TEEMU ROOS TERMINATOR SIGNAALINKÄSITTELY KUVA VOIDAAN TULKITA KOORDINAATTIEN (X,Y) FUNKTIONA. LÄHDE: S. SEITZ VÄRIKUVA KOOSTUU KOLMESTA KOMPONENTISTA (R,G,B). ÄÄNI VASTAAVASTI MUUTTUJAN

Lisätiedot

Kohdissa 2 ja 3 jos lukujen valintaan on useita vaihtoehtoja, valitaan sellaiset luvut, jotka ovat mahdollisimman lähellä listan alkua.

Kohdissa 2 ja 3 jos lukujen valintaan on useita vaihtoehtoja, valitaan sellaiset luvut, jotka ovat mahdollisimman lähellä listan alkua. A Lista Aikaraja: 1 s Uolevi sai käsiinsä listan kokonaislukuja. Hän päätti laskea listan luvuista yhden luvun käyttäen seuraavaa algoritmia: 1. Jos listalla on vain yksi luku, pysäytä algoritmi. 2. Jos

Lisätiedot

Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa Linkkikeskukset ja auktoriteetit (hubs and authorities) -algoritmi

Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa Linkkikeskukset ja auktoriteetit (hubs and authorities) -algoritmi Kurssin loppuosa Diskreettejä menetelmiä laajojen 0-1 datajoukkojen analyysiin Kattavat joukot ja niiden etsintä tasoittaisella algoritmilla Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1 Ohjelmoinnin peruskurssi Y1 CSE-A1111 30.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 30.9.2015 1 / 27 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.

Lisätiedot

S-114.3812 Laskennallinen Neurotiede

S-114.3812 Laskennallinen Neurotiede S-114.381 Laskennallinen Neurotiede Projektityö 30.1.007 Heikki Hyyti 60451P Tehtävä 1: Virityskäyrästön laskeminen Luokitellaan neuroni ensin sen mukaan, miten se vastaa sinimuotoisiin syötteisiin. Syöte

Lisätiedot

Kenguru 2017 Cadet (8. ja 9. luokka)

Kenguru 2017 Cadet (8. ja 9. luokka) sivu 1 / 16 3 pistettä 1. Kello on 17.00. Kuinka paljon kello on 17 tunnin kuluttua? (A) 8.00 (B) 10.00 (C) 11.00 (D) 12.00 (E) 13.00 17 tuntia on 7 tuntia vaille täysi vuorokausi. 17 7 = 10, joten 17

Lisätiedot

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014 Yhtälönratkaisusta Johanna Rämö, Helsingin yliopisto 22. syyskuuta 2014 Yhtälönratkaisu on koulusta tuttua, mutta usein sitä tehdään mekaanisesti sen kummempia ajattelematta. Jotta pystytään ratkaisemaan

Lisätiedot

Aki Taanila LINEAARINEN OPTIMOINTI

Aki Taanila LINEAARINEN OPTIMOINTI Aki Taanila LINEAARINEN OPTIMOINTI 26.4.2011 JOHDANTO Tässä monisteessa esitetään lineaarisen optimoinnin alkeet. Moniste sisältää tarvittavat Excel ohjeet. Viimeisin versio tästä monisteesta ja siihen

Lisätiedot

Kenguru 2012 Student sivu 1 / 8 (lukion 2. ja 3. vuosi)

Kenguru 2012 Student sivu 1 / 8 (lukion 2. ja 3. vuosi) Kenguru 2012 Student sivu 1 / 8 Nimi Ryhmä Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta

Lisätiedot

Harjoitus 6 ( )

Harjoitus 6 ( ) Harjoitus 6 (30.4.2014) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on max θ(u,v) s.t. u 0,

Lisätiedot

Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto.

Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Sivu 0 / 9 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Oikeasta vastauksesta saa 3, 4 tai 5 pistettä.

Lisätiedot

LABORAATIOSELOSTUSTEN OHJE H. Honkanen

LABORAATIOSELOSTUSTEN OHJE H. Honkanen LABORAATIOSELOSTUSTEN OHJE H. Honkanen Tämä ohje täydentää ja täsmentää osaltaan selostuskäytäntöä laboraatioiden osalta. Yleinen ohje työselostuksista löytyy intranetista, ohjeen on laatinut Eero Soininen

Lisätiedot

Kenguru 2013 Cadet (8. ja 9. luokka)

Kenguru 2013 Cadet (8. ja 9. luokka) sivu 1 / 7 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta saat miinuspisteitä

Lisätiedot

T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet )

T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet ) T-79144 Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet 11-22) 26 29102004 1 Ilmaise seuraavat lauseet predikaattilogiikalla: a) Jokin porteista on viallinen

Lisätiedot

Kenguru 2015 Ecolier (4. ja 5. luokka)

Kenguru 2015 Ecolier (4. ja 5. luokka) sivu 1 / 13 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta saat miinuspisteitä

Lisätiedot

Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö

Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin

Lisätiedot

Demo 1: Simplex-menetelmä

Demo 1: Simplex-menetelmä MS-C2105 Optimoinnin perusteet Malliratkaisut 3 Ehtamo Demo 1: Simplex-menetelmä Muodosta lineaarisen tehtävän standardimuoto ja ratkaise tehtävä taulukkomuotoisella Simplex-algoritmilla. max 5x 1 + 4x

Lisätiedot

Fibonaccin luvut ja kultainen leikkaus

Fibonaccin luvut ja kultainen leikkaus Fibonaccin luvut ja kultainen leikkaus Avainsanat: Fibonacci, lukujono, kultainen leikkaus, suhde, yhtälö Luokkataso: 6.-9.-luokka, lukio, yliopisto Välineet: Kynä, paperi (kulmaviivain, sakset) Kuvaus:

Lisätiedot

Kenguru 2013 Student sivu 1 / 7 (lukion 2. ja 3. vuosi)

Kenguru 2013 Student sivu 1 / 7 (lukion 2. ja 3. vuosi) Kenguru 2013 Student sivu 1 / 7 NIMI RYHMÄ Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta

Lisätiedot

Kuva 1. Jokaisen tavallisen kuvan tasotyökalussa näkyy vain yksi taso, tässä nimellä tausta.

Kuva 1. Jokaisen tavallisen kuvan tasotyökalussa näkyy vain yksi taso, tässä nimellä tausta. Gimp alkeet XII 9 luokan ATK-työt/HaJa Sivu 1 / 6 GIMP:in tasotyökalu Lue ensin nämä ohjeet! Harjoitus lopussa! GIMP:in tasotyökalu on nimensä mukaisesti työkalu, jolla hallitaan tasoja, niiden läpinäkyvyyttä,

Lisätiedot

Tietotekniikan valintakoe

Tietotekniikan valintakoe Jyväskylän yliopisto Tietotekniikan laitos Tietotekniikan valintakoe 2..22 Vastaa kahteen seuraavista kolmesta tehtävästä. Kukin tehtävä arvostellaan kokonaislukuasteikolla - 25. Jos vastaat useampaan

Lisätiedot

Harjoitus 3 (3.4.2014)

Harjoitus 3 (3.4.2014) Harjoitus 3 (3..) Tehtävä Olkoon kaaren paino c ij suurin sallittu korkeus tieosuudella (i, j). Etsitään reitti solmusta s solmuun t siten, että reitin suurin sallittu korkeus pienimmillään olisi mahdollisimman

Lisätiedot

HB-Harkko-kirjasto asennetaan oletusarvoisesti ArchiCADin kirjastohakemiston alle (C:\Program Files\Graphisoft\ArchiCAD 13\Kirjasto 13).

HB-Harkko-kirjasto asennetaan oletusarvoisesti ArchiCADin kirjastohakemiston alle (C:\Program Files\Graphisoft\ArchiCAD 13\Kirjasto 13). HB-HARKKO KÄYTTÖOHJE Lyhyesti Kirjasto sisältää kevytsora- ja eristeharkko-objektin lisäksi laajennuksen, jonka avulla suunnittelija voi tehdä kokonaisen rakennuksen mallin harkoista automaattisesti detaljisuunnittelua

Lisätiedot

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS JOHDATUS TEKOÄLYYN TEEMU ROOS AI-TUTKIJAN URANÄKYMIÄ AJATUSTENLUKUA COMPUTER VISION SIGNAALINKÄSITTELY KUVA VOIDAAN TULKITA MUUTTUJIEN (X,Y) FUNKTIONA. LÄHDE: S. SEITZ VÄRIKUVA KOOSTUU KOLMESTA KOMPONENTISTA

Lisätiedot

6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.)

6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.) 6. Tekstin muokkaaminen 6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.) Tekstin maalaaminen onnistuu vetämällä hiirellä haluamansa tekstialueen yli (eli osoita hiiren

Lisätiedot

Tekijä MAA2 Polynomifunktiot ja -yhtälöt = Vastaus a)

Tekijä MAA2 Polynomifunktiot ja -yhtälöt = Vastaus a) K1 a) Tekijä MAA Polynomifunktiot ja -yhtälöt 6.8.016 ( + + ) + ( ) = + + + = + + + = + 4 b) 4 4 ( 5 + ) ( 5 + 1) = 5 + + 5 + 1 4 = + + + 4 = + 5 5 1 1 Vastaus a) 4 + b) 4 + 1 K a) f ( ) = + 1 f () = +

Lisätiedot

Johdatus graafiteoriaan

Johdatus graafiteoriaan Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 126 Luku 3 Puut 3.1 Puu 3.2 Virittävä puu 3.3 Virittävän puun konstruointi 3.4 Minimaalinen virittävä puu

Lisätiedot

2.3 Virheitä muunnosten käytössä

2.3 Virheitä muunnosten käytössä 2.3 Virheitä muunnosten käytössä Esimerkissä 1 yhtälönratkaisuprosessi näytetään kokonaisuudessaan. Yhtälön rinnalla ovat muunnokset ja sanallinen selitys, johon oppilaat täydentävät esimerkissä käytetyt

Lisätiedot

58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen)

58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen) 58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen) 1. Avaimet 1, 2, 3 ja 4 mahtuvat samaan lehtisolmuun. Tässä tapauksessa puussa on vain yksi solmu, joka on samaan aikaan juurisolmu

Lisätiedot

Helsingin seitsemäsluokkalaisten matematiikkakilpailu Ratkaisuita

Helsingin seitsemäsluokkalaisten matematiikkakilpailu Ratkaisuita Helsingin seitsemäsluokkalaisten matematiikkakilpailu 22..204 Ratkaisuita. Laske 23 45. a) 4000 b) 4525 c) 4535 d) 5525 e) 5535 Ratkaisu. Lasketaan allekkain: 45 23 35 90 45 5535 2. Yhden maalipurkin sisällöllä

Lisätiedot

ORMS2020 Päätöksenteko epävarmuuden vallitessa Syksy 2008. päätöspuiden avulla tarkastellaan vasta seuraavissa harjoituksissa.

ORMS2020 Päätöksenteko epävarmuuden vallitessa Syksy 2008. päätöspuiden avulla tarkastellaan vasta seuraavissa harjoituksissa. ORMS00 Päätöksenteko epävarmuuden vallitessa Syksy 008 Harjoitus Ratkaisuehdotuksia Nämä harjoitukset liittyvät päätöspuiden rakentamiseen: varsinaista päätöksentekoa päätöspuiden avulla tarkastellaan

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 2 Lisää osamurtoja Tutkitaan jälleen rationaalifunktion P(x)/Q(x) integrointia. Aiemmin käsittelimme tapauksen, jossa nimittäjä voidaan esittää muodossa Q(x) = a(x x

Lisätiedot

Möbiuksen nauha. Välineet: paperisuikaleita, paperiristejä (liitteenä) lyijykynä, teippiä, sakset, värikyniä, liimaa ja värillistä paperia

Möbiuksen nauha. Välineet: paperisuikaleita, paperiristejä (liitteenä) lyijykynä, teippiä, sakset, värikyniä, liimaa ja värillistä paperia Möbiuksen nauha Avainsanat: yksipuolinen paperi, kaksiulotteinen pinta, topologia Luokkataso: 1.-2. luokka, 3.-5. luokka, 6.-9. luokka, lukio Välineet: paperisuikaleita, paperiristejä (liitteenä) lyijykynä,

Lisätiedot

Projektiportfolion valinta

Projektiportfolion valinta Projektiportfolion valinta Mat-2.4142 Optimointiopin seminaari kevät 2011 Portfolion valinta Käytettävissä on rajallinen määrä resursseja, joten ne on allokoitava mahdollisimman hyvin eri projekteille

Lisätiedot

Johdatus graafiteoriaan

Johdatus graafiteoriaan Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 62 Luku 2 Yhtenäisyys 2.1 Polku 2.2 Lyhin painotettu polku 2.3 Yhtenäinen graafi 2.4 Komponentti 2.5 Aste

Lisätiedot

Turun seitsemäsluokkalaisten matematiikkakilpailu 18.1.2012 Tehtävät ja ratkaisut

Turun seitsemäsluokkalaisten matematiikkakilpailu 18.1.2012 Tehtävät ja ratkaisut (1) Laske 20 12 11 21. Turun seitsemäsluokkalaisten matematiikkakilpailu 18.1.2012 Tehtävät ja ratkaisut a) 31 b) 0 c) 9 d) 31 Ratkaisu. Suoralla laskulla 20 12 11 21 = 240 231 = 9. (2) Kahden peräkkäisen

Lisätiedot

Kenguru 2017 Ecolier: Ratkaisut (4. ja 5. luokka)

Kenguru 2017 Ecolier: Ratkaisut (4. ja 5. luokka) sivu 1 / 12 Oikeat vastaukset ovat alla. 3 pistettä TEHTÄVÄ 1 2 3 4 5 6 7 VASTAUS C C E B C E A 4 pistettä TEHTÄVÄ 8 9 10 11 12 13 14 VASTAUS D B E A C A C 5 pistettä TEHTÄVÄ 15 16 17 18 19 20 21 VASTAUS

Lisätiedot

Algoritmit 2. Luento 12 To Timo Männikkö

Algoritmit 2. Luento 12 To Timo Männikkö Algoritmit 2 Luento 12 To 3.5.2018 Timo Männikkö Luento 12 Geneettiset algoritmit Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Algoritmit 2 Kevät 2018 Luento 12 To 3.5.2018 2/35 Algoritmien

Lisätiedot

9. Vektorit. 9.1 Skalaarit ja vektorit. 9.2 Vektorit tasossa

9. Vektorit. 9.1 Skalaarit ja vektorit. 9.2 Vektorit tasossa 9. Vektorit 9.1 Skalaarit ja vektorit Skalaari on koon tai määrän mitta. Tyypillinen esimerkki skalaarista on massa. Lukumäärä on toinen hyvä esimerkki skalaarista. Vektorilla on taas suuruus ja suunta.

Lisätiedot

Avaruuslävistäjää etsimässä

Avaruuslävistäjää etsimässä Avaruuslävistäjää etsimässä Avainsanat: avaruusgeometria, mittaaminen Luokkataso: 6.-9. lk, lukio Välineet: lankaa, särmiön muotoisia kartonkisia pakkauksia(esim. maitotölkki tms.), sakset, piirtokolmio,

Lisätiedot

Kenguru 2013 Ecolier sivu 1 / 8 (4. ja 5. luokka)

Kenguru 2013 Ecolier sivu 1 / 8 (4. ja 5. luokka) Kenguru 2013 Ecolier sivu 1 / 8 3 pistettä 1. Missä kuviossa mustia kenguruita on enemmän kuin valkoisia kenguruita? Kuvassa D on 5 mustaa kengurua ja 4 valkoista. 2. Nelli haluaa rakentaa samanlaisen

Lisätiedot

58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut

58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut 58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut 1. Palautetaan vielä mieleen O-notaation määritelmä. Olkoon f ja g funktioita luonnollisilta luvuilta positiivisille

Lisätiedot

Kortinhaltijat joilla on maksukeskeytys Maksuryhmään liitettyjen kortinhaltijoiden lukumäärä, joiden maksut ovat tilapäisesti keskeytetty.

Kortinhaltijat joilla on maksukeskeytys Maksuryhmään liitettyjen kortinhaltijoiden lukumäärä, joiden maksut ovat tilapäisesti keskeytetty. 1(6) MAKSURYHMÄN HALLINTA Maksuryhmäkohtaiselle sivulle pääset klikkaamalla yksittäisen maksuryhmän nimeä verkkopalvelun etusivulla tai valitsemalla ryhmän Maksuryhmät - osion listalta. Sivun tiedot ja

Lisätiedot

MAB3 - Harjoitustehtävien ratkaisut:

MAB3 - Harjoitustehtävien ratkaisut: MAB - Harjoitustehtävien ratkaisut: Funktio. Piirretään koordinaatistoakselit ja sijoitetaan pisteet:. a) Funktioiden nollakohdat löydetään etsimällä kuvaajien ja - akselin leikkauspisteitä. Funktiolla

Lisätiedot

Kenguru 2010 Cadet (8. ja 9. luokka) sivu 1 / 5

Kenguru 2010 Cadet (8. ja 9. luokka) sivu 1 / 5 Kenguru 2010 Cadet (8. ja 9. luokka) sivu 1 / 5 NIMI LUOKKA/RYHMÄ Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto.

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 9.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 9.2.2009 1 / 35 Listat Esimerkki: halutaan kirjoittaa ohjelma, joka lukee käyttäjältä 30 lämpötilaa. Kun lämpötilat

Lisätiedot

Yhden illan jutut. Matinkylän Martat r.y. Kässämartat: Raili Monto ja Sisko Salmi

Yhden illan jutut. Matinkylän Martat r.y. Kässämartat: Raili Monto ja Sisko Salmi Yhden illan jutut Matinkylän Martat r.y. Kässämartat: Raili Monto ja Sisko Salmi Säilytyspussukka ompelemalla Tarvikkeet: kaksi eriväristä kangastilkkua esim 22 x 42 cm. Ohje: 1. Leikkaa kangaskappaleet

Lisätiedot

Opetusmateriaali. Fermat'n periaatteen esittely

Opetusmateriaali. Fermat'n periaatteen esittely Opetusmateriaali Fermat'n periaatteen esittely Hengenpelastajan tehtävässä kuvataan miten hengenpelastaja yrittää hakea nopeinta reittiä vedessä apua tarvitsevan ihmisen luo - olettaen, että hengenpelastaja

Lisätiedot

Verkon värittämistä hajautetuilla algoritmeilla

Verkon värittämistä hajautetuilla algoritmeilla Verkon värittämistä hajautetuilla algoritmeilla 5 12 30 19 72 34 Jukka Suomela 15 77 18 4 9. tammikuuta 2012 19 2 68 Verkko 2 Verkko solmu 3 Verkko solmu kaari 4 Hajautettu järjestelmä solmu (tietokone)

Lisätiedot

ELOKUVATYÖKALUN KÄYTTÖ ANIMAATION LEIKKAAMISESSA. Kun aloitetaan uusi projekti, on se ensimmäisenä syytä tallentaa.

ELOKUVATYÖKALUN KÄYTTÖ ANIMAATION LEIKKAAMISESSA. Kun aloitetaan uusi projekti, on se ensimmäisenä syytä tallentaa. ELOKUVATYÖKALUN KÄYTTÖ ANIMAATION LEIKKAAMISESSA Kun aloitetaan uusi projekti, on se ensimmäisenä syytä tallentaa. Projekti kannattaa tallentaa muutenkin aina sillöin tällöin, jos käy niin ikävästi että

Lisätiedot

Algoritmit 1. Luento 7 Ti Timo Männikkö

Algoritmit 1. Luento 7 Ti Timo Männikkö Algoritmit 1 Luento 7 Ti 31.1.2017 Timo Männikkö Luento 7 Järjestetty binääripuu Binääripuiden termejä Binääripuiden operaatiot Solmun haku, lisäys, poisto Algoritmit 1 Kevät 2017 Luento 7 Ti 31.1.2017

Lisätiedot