Ville Nenonen 49533A

Koko: px
Aloita esitys sivulta:

Download "Ville Nenonen 49533A"

Transkriptio

1 Teknillinen Korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari Kevät 2004: Kuvapohjaiset menetelmät 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 samankaltaisia 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 helposti näkyviin jääviä saumoja ei synny niin helposti kuin aiemmilla menetelmillä. Menetelmä toimii sekä kahdessa että kolmessa ulottuvuudessa, joten sitä voidaan käyttää sekä kuva että 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 vaikka kameran avulla. Tästä kuvasta voidaan tekstuurisynteesin avulla saada tarkka mutta silti luonnollisen näköinen suuri pinta, esimerkiksi sopivat rapattu seinä tai ruohokenttä. Tekstuurisynteesimenetelmillä on myös muita sovellusmahdollisuuksia kuten kuvasynteesi ja videotekstuurisynteesi. Syntetisoituja tekstuureja tarvitaan esimerkiksi tarkoissa kolmiulotteisissa malleissa kuten arkkitehtien rakennusmallit. Arvioin että tulevaisuuden sovelluskohteista todennäköisimmät ovat pelit ja kolmiulotteinen mallinnus. 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 2. Tämä paperi esittelee Siggraph-konfrenssissa vuonna 2003 julkaistun Graph Cut -menetelmän (Kwatra et al., 2003), jolla on saatu parempia tuloksia tekstuurisynteesissä kuin aiemmilla 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 taustaa 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 tekstuurisynteesissä. Kappale 5 keskittyy menetelmän käyttöön pysäytys- ja videokuvan syntetisoinnissa. Kappale 6 sisältää dokumentin yhteenvedon. Kuva 1: Lammas lähdekuva Kuva 2: Syntetisoituja lampaita kuuden iterointikierroksen jälkeen. 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. Kolmannessa luokassa, johon uusimmat menetelmät yleensä kuuluvat, kopioidaan lähdekuvista kokonaisia tilkkuja tai palasia, 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äksi värien histogrammeja, jotka sen jälkeen yhdistetään syntetisoitavaan 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 tässä paperissa esitellyt tekniikat mutta niiden lähdekuvan analysointimenetelmät ovat erinomai- 2

4 sia. 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. Ensimmäinen (De Bonet, 1997) tämän luokan menetelmä 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äälimmäisenä on yhden pikselin kokoinen kuva. Näin voidaan päätellä mitkä pikselit täytyy tulla vierekkä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. Näitä eroavaisuuksia pyritään tietenkin välttämään. Pikseli kerrallaan syntetisoivia tekniikoita on muitakin kuin edellä mainittu (Efros & Leung, 1999 ja Wei & Levoy, 2000). Saadut tulokset ovat usein hyviä ja soveltuvat myös spatiaalista informaatiota sisältäville tekstuureille kuten tiiliseinä tai puun syykuvio. Kolmannen luokan metodit, johon kuuluu myös tässä paperissa käsiteltävä Graph Cut -tekniikka, kopioivat lähdetekstuurista sopivia palasia tai tilkkuja syntetisoitavaan kuvaan. Tämä on myös luontevaa, koska 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äisen tämän tyypin algoritmin esitti Ashikhmin (Ashikhmin, 2001). Tässä algoritmissa lähdekuvaa käydään läpi pikseli kerrallaan syntetisoitavaa kuvaa varten siten että lähdekuvasta etsitään paras mahdollinen vieruspikseli nykyiselle pikselille. Parhaalla tarkoitetaan tässä tapauksessa sellaista pikseliä joka muistuttaa eniten valittua pikseliä. Käytännössä algoritmi löytää lähdetekstuurista melko suuria tilkkuja jotka kopioituvat suoraan, koska paras mahdollinen pikseli on usein alkuperäisessä kuvassa tarkkailtavan pikselin vieressä. Tilkkujen kopiontitekniikat sopivat parhaiten erityyppisille kuville ja sillä saadaan keskimäärin vähintään hyvä 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 Graph Cut -tekstuurisynteesi voidaan jakaa kahteen vaiheeseen eli tekstuurin leikkaukseen sekä sen liittämiseen syntetisoitavaan kuvaan. Nämä kaksi asiaa toimivat iteratiivisesti yhdessä jatkuvasti vuorotellen. Ensimmäisessä kappaleessa 3.1 käydään läpi sopivan palan valinta lähdekuvasta teksturoitavaan kuvaan ja toisessa kappaleessa 3.2 tämän palan liimausoperaatiosta syntetisoitavaan kuvaan. 3

5 3.1 Tekstuurien leikkausalgoritmi Graph Cut -menetelmässä tekstuurit leikataan ja sovitetaan syntetisoitavaan kuvaan kolmella eri menetelmällä. Menetelmät ovat 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 satunnaiseen kohtaan syntetisoitavaa kuvaa. Leikkausvaiheen iteraation seuraavat toimenpiteet riippuvat valitusta tavasta suorittaa leikkaus ja 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 tilkku nykyiseen kuvaan. Vertailuluku saadaan laskemalla yhteisestä kuva-alasta pikselien erotuksen toisen potenssin summa. Eli mitä enemmän leikkaussaumoilla on samankaltaisia pikseleitä tai mitä pienempi yhteinen pinta-ala on sitä parempi vertailuluvusta tulee. Saaduista vertailuluvuista voidaan halutessa arpoa satunnaisesti minkälaisen palan algoritmi valitsee. Näin kuvaan saadaan enemmän vaihtelua. 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äytyneillä tai lähes järjestäytyneillä tekstuureilla. Osatilkun sovittamisessa valitaan lähdekuvasta sellaisia palasia, jotka peittävät mahdollisimman hyvin syntetisoitavaan kuvaan syntyneitä ongelma-alueita. Tätä ongelmaaluetta syntetisoidussa kuvassa nimetään osatilkuksi. Lähdetekstuurista valitut kuvan palaset ovat aina joko ongelma-alueen kokoisia tai hieman suurempia. Jotta osattaisiin valita mahdollisimman hyvä pala lähdekuvasta osatilkun sovittamisessa lasketaan vastaava kustannuslaskelma kopioimisille kuin koko tilkun sovittamisessa. Tämän vertailuluvun avulla saadaan tietää miten kukin valittavissa oleva leikkaus sopii haluttuun sijoituskohtaan (ongelma-alueeseen). Vain sellaisia palasia otetaan huomioon jotka peit- 4

6 tä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. 3.2 Tekstuurien liimausalgoritmi Tekstuurien liimausalgoritmit voidaan jakaa kolmeen tapaukseen, joista jokainen on uusi tilanne johon algoritmi sopeutuu. Ensimmäinen tapaus on liimata kaksi uutta saumaa toisiinsa. 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 kuva-alan koko olla 8x32 pikseliä. Tälle yhteiselle kuva-alalle muodostetaan suorakulmion muotoinen graafi, jossa jokainen pikseli on yksi graafin solmuista. Tämän jälkeen asetetaan yksi solmu graafin molemmin puolin merkkamaan niitä pikseleitä tilkuista jotka eivät ole päällekkäin toistensa kanssa. Tässä esimerkki tapauksessa syntyy siis solmuinen graafi. Tämän jälkeen graafin 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 kaarille lasketaan pituus laskemalla kaaren molemmissa päissä päällekkäin olevien pikselien värien erotus, jonka jälkeen nämä erotukset lasketaan yhteen joka merkataan kyseessä olevan kaaren pituudeksi. Kun kaikkien solmujen väliin on laskettu kaari lasketaan leikkaus ylhäältä alas leikaten aina siitä kohdasta missä kaari on lyhin. Tämä leikkaus on yleisesti tunnettu graafi ongelma ja sen ratkaisu on helppo implementoida. Ratkaisu muistuttaa hyvin paljon tunnettuja graafin kahden solmun lyhimmän polun laskemiseen käytettyjä algoritmeja. Tätä ratkaisua on kutsuttu joko nimellä min-cut (Ford & Fulkerson, 1962) tai max-flow (Sedgewick, 2001). Kuva 3: Esimerkki kahden uuden sauman leikkauksesta ja siitä syntyneestä graafista. 5

7 Tätä kahden uuden kuvatilkun sauman muodostumista esitetään kuvassa 3. Kuvassa vasemmalla on tilkut A ja B joiden väliin jäänyt alue esitetään vaaleansinisellä värillä. Kuvien välinen leikkaus näkyy kuvassa punaisena viivana. Kuvan oikealla puolella näkyy pieni esimerkki miltä graafi näyttää ja miten siihen on syntynyt leikkaus. Kuvassa esimerkiksi lyhin kaari on ollut solmujen 1 ja 2 välillä. 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 palasien 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 tilkkua 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älisten kaarien pituus laskea uudelleen. Pituudeksi merkataan edelliseen tapaan olemassa olevien ja uusien pikselien värien erotusten summa. 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 laskettava 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. Kuva 4: Esimerkki uuden sauman liimauksesta vanhaan saumaan ja siitä syntyneestä graafista. Kuvassa 4 esitetään uuden sauman liimauksesta saumaan missä on jo vanha sau- 6

8 ma ennestään. Vanha sauma on merkattu punaisella ja uusi sauma sinisellä. Graafissa näkyvät pallot ovat saumasolmuja ja vihreät kaaret ovat kaaret näistä uuteen tilkkuun. 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ä vanhaan saumaan. Nyt algoritmi suoritetaan koko liimattavan kappaleen reunalle. Uuden tilkun keskelle jäänyt alue peittää alle jäävän mahdollisen ongelmakohdan. Graafin parhaan leikkauksen etsiminen -solmuiselle graafille on luokkaa (Sedgewick, 2001). Tekstuurisynteesissä käytetyissä graafeissa vaativuus on ollut enemmän luokkaa (Kwatra et al., 2003). 3.3 Tehokkuutta parantavat lisäykset On esitetty (Kwatra et al., 2003) kolme erilaista parannusta ja tehokkuutta lisäävä seikkaa Graph Cut -tekstuurisynteesimenetelmään. Ensimmäinen esitetty on parempi funktio kahden pikselin välisen eron laskemiseksi, kuin 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ä silti ole 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. On mainittu että yleensä jompikumpi saumakohtien näkyvyyttä estävä menetelmä toimii paremmin riippuen syntetisoitavasta kuvasta (Kwatra et al., 2003). Kolmas tapa parantaa Graph Cut -menetelmän tehokkuutta on muuttaa parasta saumaa etsivien algoritmien muoto sellaiseksi että voidaan käyttää hyväksi nopeita Fourier-muunnoksia. Tämä nopeuttaa saumoja etsivää algoritmia moninkymmenkertaisesti. 4 Tekstuurisynteesin tuloksia Tässä kappaleessa esitellään syntetisoituja tekstuureja sekä kommentoidaan synteesin onnistumista. Kuvat 5 ja 6 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. 7

9 Kuva 5: Näppäimistön lähdekuva. Kuva 6: Syntetisoitu näppäimistö kuuden iterointikierroksen jälkeen. Kuva 8 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 tilkun peilausta ja pyöritystä. Tämän voi nähdä myös vertaamalla syntetisoitua kuvaa lähdekuvaan (kuva numero 7). 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 7: Oliivi lähdekuva. Kuva 8: Syntetisoitu oliivitekstuuri, jossa on käytetty hyväksi myös tilkun rotaatioita ja peilausta. Kuvassa 2 nähdään syntetisoituja lampaita lähdekuvasta 1. 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 esiteltyä osatilkun sovittamista. 8

10 Graph Cut -menetelmällä saadaan aikaan parempia tuloksia kuin aiemmilla tekstuurisyntetisointimenetelmillä. Graph Cut-menetelmää on verrattu(kwatra et al., 2003) Efrosin ja Freemanin menetelmään (Efros & Freeman, 2001). 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 videotekstuurisynteesissä 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 syntetisoitavaan 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 11 nähdään miten on yhdistetty kuva 9 mökistä ja kuva 10 jokimaisemasta, jossa paras leikkaus on löytynyt vedestä. Myös silmämääräisesti arvioiden vesi näyttää olevan lähes saman väristä molemmissa kuvissa. Kuva 9: Kuva, josta leikataan mökki syntetisoitavaan kuvaan 11. Kuva 10: Kuva, josta leikataan metsämaisema syntetisoitavaan kuvaan 11. 9

11 Kuva 11: 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 erilaisille videomateriaaleille. 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. On esitetty (Kwatra et al., 2003), että 60 ruudun syntetisointi kahden olemassa olevan ruudun väliin toimii hyvin ja antaa hyviä tuloksia monilla videmateriaaleilla. 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 liikuttaa pikseleitä synteti- 10

12 soidessa uusia ruutuja olemassa olevien ruutujen väliin. Tälläisiin videoihin paras leikkausalgoritmi on osa-tilkun sovittaminen. Kun muutokset tapahtuvat sekä paikan että ajan mukaan on videon ikuinen toistaminen vaikeampaa kuin pelkän ajan suhteen syntetisoidessa. Tämä voidaan ratkaista pakottamalla syntetisoitavan videon kymmenen ensimmäistä ja kymmenen viimeistä ruutua samoiksi ja syntetisoinnin jälkeen poistamalla kymmenen ensimmäistä ruutua syntetisoidusta videosta. Epäonnistumisena on esitetty (Kwatra et al., 2003) meren rantaan lyövät aallot, 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 suurentaa kuten kaksiulotteisten kuvienkin tapauksessa. Tällöin suurempaan ruutuun syntetisoidaan alkuperäisen kaltaista kuvaa kuten kaksiulotteisissakin kuvissa. Videotekstuurisynteesi on Graph Cut -menetelmällä melko raskasta ja lyhyidenkin videoiden synteesin voi mennä tunteja nykyaikaisella tietokoneella. Esimerkkejä Graph Cut -menetelmällä syntetisoiduista videoista löytyy sivulta URL:< Myös tässä paperissa esitetyt kuvat on saatu tältä sivulta lukuunottamatta kuvia 3 ja 4. 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 luotaessa 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, lampaiden tapauksessa vaikka kaksi silmää ja yksi pää, voisi tekstuurisynteesin laatu parantua nykyisestä. 11

13 VIITTEET Ashikhmin Michael Synthesizing natural textures. Pages of: Proceedings of the 2001 symposium on Interactive 3D graphics. ACM Press. 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. 12

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

Teknillinen Korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio T Tietokonegrafiikan seminaari. Ville Nenonen 49533A Teknillinen Korkeakoulu 31.3.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Kevät 2004 Ville Nenonen 49533A Graph Cut tekstuurisynteesimenetelmä Ville

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä?

Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä? Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä? 2012-2013 Lasse Lensu 2 Ongelma 2: Voidaanko dataa tai informaatiota tallettaa tiiviimpään tilaan koodaamalla se uudelleen? 2012-2013 Lasse

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

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

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

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

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

Monikulmiot 1/5 Sisältö ESITIEDOT: kolmio

Monikulmiot 1/5 Sisältö ESITIEDOT: kolmio Monikulmiot 1/5 Sisältö Monikulmio Monikulmioksi kutsutaan tasokuviota, jota rajaa perättäisten janojen muodostama monikulmion piiri. Janat ovat monikulmion sivuja, niiden päätepisteet monikulmion kärkipisteitä.

Lisätiedot

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä Luku 7 Verkkoalgoritmit Verkot soveltuvat monenlaisten ohjelmointiongelmien mallintamiseen. Tyypillinen esimerkki verkosta on tieverkosto, jonka rakenne muistuttaa luonnostaan verkkoa. Joskus taas verkko

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

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

MATEMATIIKKA JA TAIDE II

MATEMATIIKKA JA TAIDE II 1 MATEMATIIKKA JA TAIDE II Aihepiirejä: Hienomotoriikkaa harjoittavia kaksi- ja kolmiulotteisia väritys-, piirtämis- ja askartelutehtäviä, myös sellaisia, joissa kuvio jatkuu loputtomasti, ja sellaisia,

Lisätiedot

Kaksintaistelun approksimatiivinen mallintaminen (valmiin työn esittely)

Kaksintaistelun approksimatiivinen mallintaminen (valmiin työn esittely) Kaksintaistelun approksimatiivinen mallintaminen (valmiin työn esittely) Juho Roponen 10.06.2013 Ohjaaja: Esa Lappi Valvoja: Ahti Salo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla.

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

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

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

1. STEREOKUVAPARIN OTTAMINEN ANAGLYFIKUVIA VARTEN. Hyvien stereokuvien ottaminen edellyttää kahden perusasian ymmärtämistä.

1. STEREOKUVAPARIN OTTAMINEN ANAGLYFIKUVIA VARTEN. Hyvien stereokuvien ottaminen edellyttää kahden perusasian ymmärtämistä. 3-D ANAGLYFIKUVIEN TUOTTAMINEN Fotogrammetrian ja kaukokartoituksen laboratorio Teknillinen korkeakoulu Petri Rönnholm Perustyövaiheet: A. Ota stereokuvapari B. Poista vasemmasta kuvasta vihreä ja sininen

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

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

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

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

2. Seuraavassa kuvassa on verkon solmujen topologinen järjestys: x t v q z u s y w r. Kuva 1: Tehtävän 2 solmut järjestettynä topologisesti.

2. Seuraavassa kuvassa on verkon solmujen topologinen järjestys: x t v q z u s y w r. Kuva 1: Tehtävän 2 solmut järjestettynä topologisesti. Tietorakenteet, laskuharjoitus 11, ratkaisuja 1. Leveyssuuntaisen läpikäynnin voi toteuttaa rekursiivisesti käsittelemällä jokaisella rekursiivisella kutsulla kaikki tietyllä tasolla olevat solmut. Rekursiivinen

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

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

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

Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana

Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana Muilla kielillä: English Suomi Pong-peli, vaihe 3 Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana Jaetaan ohjelma pienempiin palasiin (aliohjelmiin) Lisätään peliin maila (jota ei voi vielä

Lisätiedot

Teknillinen korkeakoulu 6.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari.

Teknillinen korkeakoulu 6.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari. Teknillinen korkeakoulu 6.4.2004 Tietoliikenneohjelmistojen ja multimedian laboratorio T-111.500 Tietokonegrafiikan seminaari Wang-laatoitus Ville Leino 45323K Ville Leino TKK, Tietoliikenne ohjelmistojen

Lisätiedot

13 Lyhimmät painotetut polut

13 Lyhimmät painotetut polut TIE-20100 Tietorakenteet ja algoritmit 297 13 Lyhimmät painotetut polut BFS löytää lyhimmän polun lähtösolmusta graafin saavutettaviin solmuihin. Se ei kuitenkaan enää suoriudu tehtävästä, jos kaarien

Lisätiedot

Algoritmit 2. Luento 6 Ke Timo Männikkö

Algoritmit 2. Luento 6 Ke Timo Männikkö Algoritmit 2 Luento 6 Ke 29.3.2017 Timo Männikkö Luento 6 B-puun operaatiot B-puun muunnelmia Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2017 Luento 6 Ke 29.3.2017 2/31 B-puu

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

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

Puhesynteesin perusteet Luento 5: unit selection -synteesi

Puhesynteesin perusteet Luento 5: unit selection -synteesi Puhesynteesin perusteet Luento 5: unit selection -synteesi Nicholas Volk 14.2.2008 Käyttäytymistieteellinen tiedekunta Idea Aitoa puhetta on tallennettu tietokantaan tuhansien äänteiden verran Jopa yksittäisen

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

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

Sinulle on annettu bittijono, ja tehtäväsi on muuttaa jonoa niin, että jokainen bitti on 0.

Sinulle on annettu bittijono, ja tehtäväsi on muuttaa jonoa niin, että jokainen bitti on 0. A Bittien nollaus Sinulle on annettu bittijono, ja tehtäväsi on muuttaa jonoa niin, että jokainen bitti on 0. Saat käyttää seuraavia operaatioita: muuta jokin bitti vastakkaiseksi (0 1 tai 1 0) muuta kaikki

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

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

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

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

Algoritmit 2. Luento 12 Ke Timo Männikkö

Algoritmit 2. Luento 12 Ke Timo Männikkö Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit

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

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

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

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

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

Kenguru 2015 Cadet (8. ja 9. luokka)

Kenguru 2015 Cadet (8. ja 9. luokka) 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

Laskennallinen menetelmä puun biomassan ja oksien kokojakauman määrittämiseen laserkeilausdatasta

Laskennallinen menetelmä puun biomassan ja oksien kokojakauman määrittämiseen laserkeilausdatasta Laskennallinen menetelmä puun biomassan ja oksien kokojakauman määrittämiseen laserkeilausdatasta Pasi Raumonen, Mikko Kaasalainen ja Markku Åkerblom Tampereen teknillinen ylipisto, Matematiikan laitos

Lisätiedot

Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö

Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö 21.01.2013 Ohjaaja: Kai Virtanen Valvoja: Raimo P. Hämäläinen Työn

Lisätiedot

14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut

14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut JYVÄSKYLÄN YLIOPISTO 14. Luennon sisältö Kuljetustehtävä esimerkki Verkkoteoria ja optimointi verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut kevät 2012 TIEA382 Lineaarinen ja diskreetti

Lisätiedot

etunimi, sukunimi ja opiskelijanumero ja näillä

etunimi, sukunimi ja opiskelijanumero ja näillä Sisällys 1. Algoritmi Algoritmin määritelmä. Aiheen pariin johdatteleva esimerkki. ja operaatiot (sijoitus, aritmetiikka ja vertailu). Algoritmista ohjelmaksi. 1.1 1.2 Algoritmin määritelmä Ohjelmointi

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

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

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

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

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

Kaikkiin tehtäviin laskuja, kuvia tai muita perusteluja näkyviin.

Kaikkiin tehtäviin laskuja, kuvia tai muita perusteluja näkyviin. Peruskoulun matematiikkakilpailu Loppukilpailu perjantaina 1.2.2013 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

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

N S. ta tai m ä. BLÄUER 2003 www.kasityo.com versio 1.0

N S. ta tai m ä. BLÄUER 2003 www.kasityo.com versio 1.0 N S ta tai m ä BLÄUER 2003 www.kasityo.com versio 1.0 ONNISTUNUT SALKKU Salkkuja on eri kokoisia, muotoisia ja värisiä. Huomiota kiinnitetään seuraaviin kohtiin. SALKUN AUKAISEMINEN PYÖRÖSAHALLA JA SEN

Lisätiedot