Säätötekniikan ja signaalinkäsittelyn työkurssi

Koko: px
Aloita esitys sivulta:

Download "Säätötekniikan ja signaalinkäsittelyn työkurssi"

Transkriptio

1 Säätötekniikan ja signaalinkäsittelyn työkurssi Työ D104: Kuvien suodatus 0.9 op. Julius Luukko Lappeenrannan teknillinen yliopisto Sähkötekniikan osasto/säätötekniikan laboratorio

2 Sisältö 1 Johdanto 1 2 Työn sisältö 1 3 Työn tausta Digitaalisten kuvien esittäminen Kuvien piirtäminen Kuvien suodatus Harjoitustyön osat Lämmittelyosa Harjoitusosa Yksiulotteinen suodattaminen Kuvan sumentaminen Muita suodattimia Kuvan taajuussisältö Synteettisten suurten taajuuksien käyttäminen Epälineaariset suodattimet Reunojen etsiminen Muutoskynnysfunktio Työssä tarvittavat funktiot ja muut tiedostot 12 Tämä versio: 10. toukokuuta 2010 kello 11:46 i

3 1 Johdanto Kuvankäsittely on yksi digitaalisen signaalinkäsittelyn sovellus. Tässä työssä tutustutaan digitaalisten kuvien ali- ja ylipäästösuodatukseen sekä reunojen etsintään kuvasta. Työssä tarvittavat teoreettiset perusteet löytyvät oppikirjan [1] luvuista 2-4. Työn laajuus on 0.9 opintopistettä. Tämä työohje löytyy html-muodossa osoitteesta sekä pdf-muodossa osoitteesta D104/D104.pdf. 2 Työn sisältö Työ jakaantuu kahteen osaan, lämmittelyyn ja harjoitusosaan. Lämmittelyosassa harjoitellaan kuvien piirtämistä Matlabilla. Harjoitusosassa tarkastellaan kuvien sumeuttamista ja terävöittämistä sekä reunojen etsintää Matlabilla. Lämmittelyosa suoritetaan hyväksymismenettelyllä ja harjoitusosasta palautetaan raportti, joka arvostellaan. Lämmittelyosan suorittamisen varmistamiseksi ohjaaja täyttää tämän ohjeen liitteenä olevan varmistuslomakkeen. Varmistuslomake liitetään harjoitusosan raporttiin. 3 Työn tausta 3.1 Digitaalisten kuvien esittäminen Kuva voidaan esittää kahden muuttujan funktiona x(t 1, t 2 ), missä t 1 edustaa vaakakoordinaattia ja t 2 pystykoordinaattia. Harmaasävykuvassa x(t 1, t 2 ) on skaalaarifunktio, mutta värikuvassa x(t 1, t 2 ) on esimerkiksi kolmesta komponentista muodostuva vektorifunktio (esim. RGB-koodaus). Liikkuvissa kuvissa funktio olisi lisäksi ajan funktio. Tässä harjoitustyössä keskitytään pelkästään paikoillaan oleviin kuviin. Näytteistetty harmaasävykuva esitetään kaksiulotteisena lukutaulukkona x(m, n) x(mt 1, nt 2 ), 1 m M, 1 n N. (3.1) M ja N ovat usein kakkosen potensseja, esim. 256 tai 512. Matlabissa kuva esitetään M N-kokoisena matriisina x. Matriisin alkio x(m,n), pikseli, edustaa siis näytettä (m, n). Harmaasävykuvissa pikselien arvot ovat aina ei-negatiivisia ja suuruudeltaan tietyn arvon sisällä 0 x(m, n) X max. (3.2) Tämä johtuu siitä, että kuvat muodustuvat heijastuneen tai emittoidun valon intensiteettiä kuvaavista luvuista, jotka ovat aina positiivisia ja suuruudeltaan Tämä versio: 10. toukokuuta 2010 kello 11:46 1

4 äärellisiä. Kun kuvan näytteet talletetaan tietokoneen muistiin, x(m, n):n arvot skaalataan siten, että ne voidaan esittää esimerkiksi 8-bittisinä kokonaislukuina. Silloin suurin mahdollinen arvo on X max = = 255 ja siten voidaan esittää 256 eri harmaan sävyä. 3.2 Kuvien piirtäminen Kuvien piirtäminen näytölle voi olla hankalaa varsinkin sen jälkeen, kun kuvia on käsitelty esimerkiksi digitaalisella suodattimella. Seuraavat kohdat kannattaa pitää mielessä: 1. Kaikkien kuvan alkioiden arvon pitää olla ei-negatiivisia. Suodattaminen saattaa luoda myös negatiivisia arvoja, jolloin niille on tehtävä jotain ennen kuvan piirtämistä. 2. Useimpien harmaasävykuvien talletusmuoto on 8-bittinen, jolloin kuvan alkioiden arvot ovat välillä 0 x(m, n) 255 = Kuvan alkioiden suurimman ja pienimmän arvon etsimiseen voi käyttää Matlabin funktioita max ja min. 4. Kuvan alkioiden arvot voidaan kvantisoida kokonaisluvuiksi funktioilla round, fix ja floor. 5. Kuva voidaan piirtää ruudulle Matlabin sisäänrakennetulla funktiolla image tai imagesc. Se miten lukuarvot muuttuvat väreiksi voidaan määrätä ns. värikartalla. Esimerkiksi harmaasävykuva saadaan seuraavasti image(x) colormap(gray(256)) Valitettavasti image-funktio ei tulosta kuvaa siten, että yksi kuvapiste olisi ruudullakin yksi kuvapiste. Image Processing Toolboxissa olisi funktio truesize, joka tekisi tämän. Image Processing Toolbox ei kuitenkaan käytetä tässä työssä. Saman toiminnon saa aikaan laboratoriotyötä varten tehty funktio trusize. Siten kuvan piirtäminen ruudulle tapahtuu kolmella funktiolla image(x) colormap(gray(256)) trusize; Nämä funktiokutsut on koottu labratyötä varten funktioon showimg, jota voidaan käyttää tässä laboratoriotyössä. Yksinkertaisesti siis showimg(x); 6. Jos kuvassa on kuvapisteitä, joiden lukuarvot ovat alueen ulkopuolella tai jos kuvan lukuarvot on skaalattu pienelle välille, kuvan laatu voi olla huono. Kuvan sisältämien arvojen joukkoa ja lukumäärää voi tarkastella Matlabin funktiolla hist, joka piirtää kuvaajan (ns. histogrammi), josta näkyy kuinka monta kertaa tietty lukuarvo esiintyy parametrina annettavassa matriisissa. Tämä versio: 10. toukokuuta 2010 kello 11:46 2

5 Histogrammin perusteella kuvan lukuarvoja voidaan muokata ennen kuvan piirtämistä. Tähän on kaksi tapaa: 7. Lukuarvojen "leikkaaminen". Jos jotkin lukuarvoista ovat alueen ulkopuolella, mutta lukuarvojen skaalaus pitää säilyttää, lukuarvot pitää leikata, ts. kaikki negatiiviset arvot asetetaan nollaksi ja 255:tä suuremmat arvot 255:ksi. Tätä laboratoriotyötä varten on tätä operaatiota varten tehty funktio clip. 8. Kuvan automaattinen skaalaus. Kuvapisteiden arvot x(m, n) kuvataan lineaarisella kuvauksella uusiksi arvoiksi x s (m, n) = x(m, n), jotka ovat sallitulla alueella x s (m, n) = αx(m, n) + β (3.3) Skaalauskertoimet α ja β saadaan Matlabin funktioiden min ja max avulla ja koko kuvaus on x s (m, n) = 256 x(m, n) x min, (3.4) x max x min missä merkintä r tarkoittaa luvun r kokonaisosaa. 3.3 Kuvien suodatus Kuvasignaaleja voidaan suodattaa kuten yksiulotteisia signaaleja. Kuvissa intensiteetti vaihtelee pikseli pikseliltä aivan samoin kuten esimerkiksi audiosignaali vaihtelee ajan funktiona. Yksiulotteisen signaalin aikaa vastaa siis kuvapisteen paikka. Yksiulotteisen signaalin ajan käänteisarvo on taajuus. Kuvien tapauksessa käytetään termiä "avaruudellinen taajuus". Suuri avaruudellinen taajuus tarkoittaa, että kuvassa intensiteetti muuttuu nopeasti siirryttäessä kuvapisteestä toiseen, esimerkiksi raidallinen paita. Pieni avaruudellinen taajuus tarkoittaa, että intensiteetti muuttuu hitaasti. Kuva 1 havainnollistaa taajuuden käsitettä. Yksinkertainen tapa kaksiulotteisen kuvan suodattamiseen on suodattaa ensin jokainen rivi yksiulotteisesti ja suodattaa näin saatava tulos vielä sarakkeittain. Näin toimitaan tässä laboratoriotyössä. 4 Harjoitustyön osat 4.1 Lämmittelyosa Tässä osassa harjoitellaan kuvien piirtämistä Matlabilla. Samalla varmistetaan, että kaikki harjoitusosassa tarvittavat funktiot ovat käytettävissä. Työssä tarvittavat kuvat on tallennettu Matlabin mat-muotoon ja ne voidaan lukea Matlabiin komennolla load. Tiedoston sisältö ladataan saman nimiseen Tämä versio: 10. toukokuuta 2010 kello 11:46 3

6 Kuva 1: Avaruudellinen taajuus. Vasemmanpuoleisessa kuvassa on suuri taajuus, oikeanpuoleisessa pienempi. muuttujaan, josta ne on tallennettu. Muuttujan nimi ja kuvan koko selviää komennolla whos, esimerkiksi ladataan kuva lenna.mat 1 >> load lenna >> whos Name Size Bytes Class xx 256x double array Grand total is elements using bytes >> Pääte mat voidaan jättää pois. Kuva on siis talletettu matriisiin xx ja sen koko on kuvapistettä. Matlabissa on lisäksi funktio imread, jolla voidaan lukea useilla eri tallennustavoilla talletettuja kuvia. Tuettuja tapoja ovat mm. jpeg, tiff ja bmp. Vastaavasti kuvat voidaan tallettaa funktiolla imwrite samoilla tuetuilla muodoilla. Edellä työn taustaa kuvaavassa osassa kerrottiin, että kuva voidaan piirtää ruudulle image-funktiolla. Käytön helpottamiseksi tässä laboratoriotyössä voidaan käyttää funktiota showimg, joka siis ei ole Matlabiin tai mihinkään Toolboxiin kuuluva funktio. help showimg näyttää ohjeen funktion käytöstä SHOWIMG display an image with possible scaling usage: ph = showimg(img, figno, scaled, map) img = input image figno = figure number to use for the plot if 0, re-use the same figure if omitted a new figure will be opened 1 Kuvalla "lenna" on erityinen historia kuvankäsittelyn ja -pakkaamisen tutkimuksen historiassa, kts. Tämä versio: 10. toukokuuta 2010 kello 11:46 4

7 optional args: scaled = 1 (TRUE) to do auto-scale (DEFAULT) not equal to 1 (FALSE) to inhibit scaling map = user-specified color map ph = figure handle Funktiolle voi antaa 1-4 parametria. Jos parametrina on vain kuvamatriisi img, funktio avaa uuden kuvaikkunan, skaalaa arvot välille ja käyttää harmaasävyvärikarttaa. Jos haluaa piirtää useita kuvia samaan kuvaikkunaan (esim. funktion subplot avulla), voi toisena parametrina antaa kuvan numeron tai 0, jolloin käytetään aktiivista ikkunaa. Testataan seuraavaksi, että onnistut piirtämään kuvan ruudulle Matlabilla: 1. Generoi testikuva matriisiin pic, jonka koko on Tee kuvan jokaisesta rivistä diskreetti sinisignaali, jonka jakso on 50 näytettä ja amplitudi 1 (siis arvot välillä ). Kumpi indekseistä merkitsee vaaka-akselia ja kumpi pystyakselia? 2. Erota kuvasta yksi rivi ja piirrä sen kuva plot-käskyllä. Kuvan pitäisi olla diskreetti sinisignaali 3. Käytä funktiota showimg kuvan piirtämiseen ruudulle. Selitä, miksi kuvassa on kuvan mukainen harmaasävykuvio. Miten showimg on muuttanut kuvapisteiden arvoja, jotta kuvan on voinut piirtää, ts. mikä kokonaisluku vastaa mustaa ja mikä valkoista? 4. Lataa kuva lenna.mat ja piirrä se ruudulle. 5. Piirrä kuvan 200. rivi. Millä välillä arvot ovat? 6. Miten voit piirtää kuvan negatiivin, ts. mikä on yhtälön 3.3 mukainen skaalaus mustan muuttamiseksi valkoiseksi ja valkoisen mustaksi? 4.2 Harjoitusosa Yksiulotteinen suodattaminen Yksi rivi kuvasta, esim. 50. rivi, on N-pisteen pituinen sekvenssi xx(50,n). Tämän sekvenssin voi suodattaa yksiulotteisella suodattimella vaikka funktiolla conv. Mutta miten suodatetaan koko kuva? Tähän kysymykseen etsitään vastausta seuraavassa: 1. Lataa muistiin kuva echart.mat. Erota kuvan 34. viimeinen rivi omaksi sekvenssiksi komennolla x1 = echart(256-33,:); Suodata x1 7-pisteen liukuvan keskiarvon suodattimella ja piirrä sekä x1 että suodatettu signaali samaan kuvaan subplotin avulla. Kuvaile suodatettua signaalia verrattuna suodattamattomaan joko adjektiivilla tasaisempi tai karkeampi. Selitä miksi näin. Tämä versio: 10. toukokuuta 2010 kello 11:46 5

8 Säilytä suodatettu sekvenssi myöhempää käyttöä varten. 2. Erota kuvasta 99. sarake ja suodata se ensimmäinen differenssi -suodattimella (kts. työ 102). Selitä suodatetun signaalin muoto Kuvan sumentaminen Kuten varmaan arvaat, koko kuvan suodattaminen onnistuu siten, että jokainen rivi suodatetaan erikseen. Matlabissa tämä onnistuu for-luupin avulla. Rivi m suodatetaan siten 7-pisteen liukuvan keskiarvon suodattimella seuraavasti: y 1 (m, n) = x(m, n l), 1 m M. (4.1) l=0 Näin menetellessä kuva suodatetaan vain vaakasuunnassa. Sarakkeet voidaan suodattaa toisella for-luupilla: y 2 (m, n) = y 1 (m k, n), 1 n N. (4.2) k=0 Siten y 2 (m, n) on kuva, joka on suodatettu sekä vaaka- että pystysuunnissa 7- pisteen liukuvan keskiarvon suodattimella. Matlabissa on myös funktio, joka tekee yhtälön 4.1 operaation ilman silmukkaa, conv2. conv2:lla voidaan tehdä myös paljon monimutkaisempia operaatioita, mutta tässä työssä sitä käytetään vain tähän yksinkertaiseen konvoluutioon rivi riviltä tai sarake sarakkeelta. Tee seuraavat operaatiot: 1. Toteuta yhtälöiden 4.1 ja 4.2 operaatiot käyttäen for-silmukoita ja funktiota filter funktion conv sijasta. Piirrä alkuperäinen ja suodatettu kuva funktioilla subplot ja showimg samaan kuvaan vierekkäin. Käytetään tätä kuvaa seuraavien kohtien tulosten vertailuun. 2. Suodatetaan kuva conv2:lla. Määrittele 7-pisteen liukuvan keskiarvon suodatin. Jos olet sen jo edellä määritellyt, varmista, että se on rivivektori, ei sarakevektori. Funktiota conv2 käytetään sitten seuraavasti y1 = conv2(x,b); missä x on kuvan muodostava matriisi ja b suodattimen kerroinrivivektori. Yo. operaatio suodattaa kuvan kaikki rivit matriisiin y1. Huomaa, että vektorin voi pakottaa rivivektoriksi operaatiolla b=b(:). Piirrä alkuperäinen ja suodatettu kuva funktioilla subplot ja showimg samaan kuvaan vierekkäin. Kuvaile kuvien eroa. Erota suodatetusta kuvasta alhaalta lukien 34. rivi ja vertaa sitä edellä sekvenssistä x1 suodatettuun vastaavaan riviin. Piirrä molemmat kahden kuvan subplotiin. Selitä mahdolliset erot. Tämä versio: 10. toukokuuta 2010 kello 11:46 6

9 3. Suodata y1 pystysuunnassa. Tämä tapahtuu siten, että suodattimen kertoimet ovat pystyvektorissa kutsuttaessa funktiota conv2. Pystyvektoriksi vaakavektorin saa Matlabissa transpoosioperaattorilla, esim. b. Toinen vaihtoehto pystyvektoriksi pakottamiseen on b(:). Piirrä alkuperäinen (echart) ja suodatettu kuva y2 funktioilla subplot ja showimg samaan kuvaan vierekkäin. Kuvaile kuvien eroa. Vertaa myös välitulos y1:een. 4. Mitä kuvalle tapahtuu, jos suodatin vaihdetaan 21-pisteen liukuvan keskiarvon suodattimeen? Kokeile ja kuvaile Muita suodattimia 1. Lataa kuva lenna ja piirrä kuva showimg:llä. 2. Suodata kuva seuraavilla suodattimilla sekä riveittäin että sarakkeittain ellei toisin pyydetä. Piirrä jokainen kuva ja kuvaile suodattimen aikaansaannosta. (a) a1=[1 1 1]/3; (b) a2=ones(1,7)/7; (c) a3=[1-1]; Suodata vain rivit. Huomaa, että tämä suodatin saa aikaan negatiivisia arvoja. Ennen kuvan piirtämistä, arvot on skaalattava sallitulle alueelle (showimg tekee tämän automaattisesti, kokeile myös kuvan piirtämistä suoraan funktiolla image ilman skaalausta). (d) a4=[-1 3-1]; Suodata vain rivit. (e) a5=[ ]; Tarkastele kuvia ja vastaa seuraaviin kysymyksiin: Mitkä suodattimista ovat alipäästösuodattimia? Mitä alipäästösuodatin tekee kuvalle? Mitkä suodattimet ovat ylipäästösuodattimia? Älä käytä pelkästään taajuusvastekuvaajia yo. kysymysten vastauksiksi, vaan kuvaile sanallisesti kuvan perusteella Kuvan taajuussisältö Edellä havaittiin, että alipäästösuodatus sumentaa kuvaa. Tässä osassa havaitaan, että ylipäästö- tai kaistanpäästösuodatuksella kuvaa voidaan terävöittää. Jäljempänä ylipäästösuodattimia käytetään myös reunojen selvittämiseen. 1. Luo Matlabilla alipäästösuodatin, jonka kertoimet määritellään yhtälöllä 1.1, kun k = 10 b k = e 0.075(k 10)2, kun k = 0, 1, 2,..., 20, k = 10 (4.3) 0, muualla Tämä versio: 10. toukokuuta 2010 kello 11:46 7

10 Huomaa, että Matlabin indeksointi alkaa 1:stä, joten yo. yhtälöä pitää tältä osin muuttaa. Piirrä subplotin avulla samaan kuvaan suodattimen taajuusvasteen itseisarvo plotilla ja impulssivaste stemillä. 2. Luo Matlabilla kaistanpäästösuodatin, jonka kertoimet määritellään yhtälöllä { cos [0.4π(k 10)] e b k = 0.075(k 10)2, kun k = 0, 1, 2,..., 20 (4.4) 0, muualla Piirrä samalla tavalla kuin edellä samaan kuvaan suodattimen taajuusvasteen itseisarvo plotilla ja impulssivaste stemillä. Miksi suodatin on kaistanpäästösuodatin? 3. Lataa testikuva baboon.mat. Suodata kuva sekä riveittäin että sarakkeittain alipäästösuodattimella {b k } ja talleta tulos matriisiin y. Piirrä kuva nähdäksesi suodattimen vaikutus kuvaan. Totea, onko suodatetun kuvan taajuussisältö pääasiassa matala- vai korkeataajuinen. 4. Suodata baboon sekä riveittäin että sarakkeittain kaistanpäästösuodattimella { b k } ja talleta tulos matriisiin v. Piirrä kuva nähdäksesi suodattimen vaikutus kuvaan. Totea, onko suodatetun kuvan taajuussisältö pääasiassa matala- vai korkeataajuinen. Huomautus! Kuvan piirtäminen suoraan edes showimg:llä ei ole järkevää (kokeile!). Syynä on se, että suodatetussa kuvassa on pieniä ja suuria arvoja, joita on vain hyvin vähän. showimg skaalaa automaattisesti pienimmän ja suurimman arvon 0:ksi ja 255:ksi. Suurin osa informaatiosta jää kuitenkin melko pienelle alueelle, jolloin kuvassa kontrastierot eivät erotu hyvin. Muokkaa siksi kuvaa siten, että kyllästät tiettyä arvoa suuremmat ja pienemmät arvot tiettyyn rajaan. Etsi sopiva arvo piirtämällä histogrammi v:stä komennolla hist(v(:)). 5. Sumeutettua kuvaa y(m,n) voidaan parantaa (terävoittää) lisäämälle osa kaistanpäästösuodatetusta kuvasta v (tai kyllästetty versio v:stä). Kuvan 2 esittämä lohkokaavio toteuttaa seuraavan lineaarisen kombinaation (1 α)y(m, n) + αv(m, n) (4.5) missä 0 α 1 on kerroin, joka määrää, kuinka suuri osa tuloksesta tulee kaistanpäästösuodatetusta kuvasta. Etsi sellainen arvo α:lle, jolla saat mahdollisimman paljon alkuperäistä kuvaa muistuttavan lopputuloksen. Kokeile v:n paikalla sekä muokattua että muokkaamatonta v:tä. Miksi kuva näyttää terävämmältä kuin y(m,n)? Piirrä subplotin avulla samaan kuvaan (2x2) alkuperäinen kuva (siis subplot(2,2,n)), alipäästösuodatettu, kaistanpäästösuodatettu ja terävöitetty Synteettisten suurten taajuuksien käyttäminen Kuvan tarkentaminen on melko vaikeaa, mutta edellisen kohdan perusteella voidaa yleisesti todeta, että kuvan tarkentamiseksi siihen on lisättävä suurtaajuista dataa. Tämä versio: 10. toukokuuta 2010 kello 11:46 8

11 1 α LPF y(m, n) x(n) α + Terävöitetty kuva BPF v(m, n) Kuva 2: Terävöittäminen lisäämällä osa kaistanpäästösuodatettua kuvaa alipäästösuodatettuun kuvaan. Edellä kuvattua terävöittämistapaa ei voida suoraan käyttää, jos lähtökohtana on epätarkka kuva. Edellähän suurtaajuinen data saatiin kaistanpäästösuodattamalla alkuperäistä terävää kuvaa. Reaalisessa tilanteessahan käytettävissä on ainoastaan epätarkka kuva. Terävöittämiseksi kuvaan on jotenkin saatava suurtaajuista dataa. Yksi tapa on käyttää synteettisiä suuria taajuuksia. Tätä esittää kuva 3. 1 α Alipäästökanava x(n) α + Terävöitetty kuva HPF w(m, n) Kuva 3: Sumeaan kuvaan lisätään synteettisiä suuria taajuksia. Suuret taajuudet on luotu sumeasta kuvasta ylipäästösuodatettamalla. Tutkitaan menetelmän toimivuutta seuraavasti: 1. Luo toisen differenssin suodatin, jonka siirtofunktio on H(z) = Piirrä suodattimen taajuusvasteen itseisarvo. ( 1 z 1) 2. (4.6) 2. Laske synteettinen suuritaajuinen kuva suodattamalla toisen differenssin suodattimella edellä luodusta sumeasta kuvasta y(m,n). Talleta tulos matriisiin w(m,n). Muista suodattaa sekä rivit että sarakkeet. 3. Selitä w(m,n):n taajuussisältö sillä perusteella, että se on luotu alkuperäisestä terävästä kuvasta ensin alipäästösuodattamalla ja sitten suodat- Tämä versio: 10. toukokuuta 2010 kello 11:46 9

12 tamalla se toisella differenssisuodattimella. Piirrä tämän kaskadisuodattimen taajuusvaste. Vihje: kahden polynomin tulon voi muodostaa funktiolla conv. 4. Terävöitä kuvaa synteettisten suurten taajuuksien avulla. Käytä samaa lineaarista kombinaatiota kuin edellä: (1 α)y(m, n) + αw(m, n), (4.7) missä 0 α 1. Etsi sopiva α:n arvo, jolla saat kuvan mahdollisimman teräväksi. Kokeile, kannattaako w:n arvot leikata samoin kuin v:n arvot edellä. Huomaa, että terävöittäminen voi todellakin olla vaikeaa Epälineaariset suodattimet Edellä on käytetty lineaarisia FIR-suodattimia kuvien muokkaamisessa. Kuvankäsittelyssä voidaan käyttää myös toisenlaisia suodattimia. Epälineaarisilla suodattimilla kuvan taajuussisältöä voidaan muuttaa dramaattisesti säilyttäen kuitenkin visuaalinen yhdennäköisyys kuvien välillä. Reunojen etsiminen on yksi sovellus, jossa voidaan käyttää epälineaarista suodatusta Reunojen etsiminen Esineen reuna näkyy usein värin tai harmaasävyn äkillisenä muuttumisena. Valkoisella pohjalla olevan mustan esineen reuna on siten niiden pisteiden joukko, joiden viereiset pisteet ovat harmaasävyltään suuresti poikkeavia. Harmaasävyn muuttuminen jonkin esineen sisällä on tavallisesti asteittaista, mutta reunoilla muutos on paljon nopeampaa. Siksi voidaan olettaa, että yksinkertaisella ylipäästösuodattimella voidaan havaita reunat. Kokeillaan ylipäästösuodatusta yksinkertaiseen kuvaan, jossa on vain mustaa ja valkoista: 1. Lataa testikuva echart.mat. Piirrä kuva. 2. Suodata kuva sekä vaaka- että pystysuunnassa ensimmäisen differenssin suodattimella b n = {1, 1}. Piirrä tuloksena saatava kuva showimg:llä ilman skaalausta (kolmas parametri nolla) ja negatiivisena (miten?). Miten hyvin suodatin erottaa pystysuorat reunat? Entä vaakasuorat ja vinot reunat? Miksi näin? Muutoskynnysfunktio Jos hyväksymme oletuksen, että värin tai harmaasävyn muuttuminen nopeasti merkitsee reunaa, reunojen havaitseminen voidaan tehdä helpoksi. On vain merkittävä ne pisteet, joiden ympärillä olevissa pisteissä sävyllä on suuri ero. Yhtä pistettä tarkasteltaessa tämä tarkoittaa pisteen sävyarvon vertaamista sen Tämä versio: 10. toukokuuta 2010 kello 11:46 10

13 naapureihin. Jos eron itseisarvo mihin tahansa suuntaan on suurempi kuin asetettu kynnysarvo, piste on oletettavasti reunapiste. Kuvassa 4 on esimerkki tällaisesta reunojen etsimisestä. Kuva 4: Kuvasta tools etsityt reunat Seuraavassa tarkastelemme, miten tällaisen kuvan saa aikaan. Edellä selostettu vertailu naapureiden kesken on tehtävä kuvan kaikille pisteille. On siis luotava matriisi, joka sisältää pisteiden välisten sävyjen erot ja sitten tätä matriisia verrataan kynnysarvoon. Tällainen operaatio on helppoa ensimmäisen differenssin suodattimella. Suodatetaan ensin vaakasuunnassa matrisiin yh. Suodatetaan sitten alkuperäinen kuva ensimmäisen differenssin suodattimella pystysuunnassa matriisiin yv. Viimeinen osa on vertailu kynnysarvoon. Matlabin loogiset operaatiot, esim. a>b, b==a, jne. tuottavat tuloksenaan joko 1 (tosi) tai 0 (epätosi) riippuen vertailun tuloksesta. Nyt haluamme juuri tällaisen tuloksen, 1 jos piste on reunalla tai 0 jos piste ei ole reunalla. Piste on reunalla, jos muutos pystysuunnassa tai vaakasuunnassa on suurempi kuin kynnysarvo. Matlabilla kaikkien pisteiden vertailu voidaan tehdä matriisivertailuna yhdellä rivillä y = (abs(yh)>thr) (abs(yv)>thr); missä thr on kynnysarvo. On muistettava, että ensimmäisen differenssin suodattimen ulostuloarvot voivat olla kuvapisteiden arvojen sallitun alueen ulkopuolella, joten yh:lle ja yv:lle on syytä suorittaa skaalaus ja/tai negatiivisten ja ylisuurten arvojen leikkaus. Huomaa, että jos käytössä on harmaasävyvärikartta gray(256), vastaa 0 mustaa. Jos kuva halutaan piirtää ruudulle, on havainnollisempaa useimmiten piirtää reunat mustalla ja muu alue valkoisella. Sitä varten vertailun tulos pitää kääntää toisinpäin esimerkiksi negaatio-operaattorilla. Lisäksi, 0 ja 1 ovat arvoina liian lähekkäin ja ne molemmat näkyvät mustana. Jotta 1 muuttuisi valkoiseksi, on y vielä kerrottava vähintään 200:lla. Jos kynnysarvo thr on nolla, merkitään reunaan kuuluvaksi kaikki pisteet, joi- Tämä versio: 10. toukokuuta 2010 kello 11:46 11

14 den vieressä ei ole sävyarvoltaan samansuuruinen piste. Tämä on useimmiten liian pieni kynnysarvo. Jos kynnysarvo on liian suuri, ei esimerkiksi harmaan esineen reunaa havaita, jos se on mustan taustan ympäröimä. Jotta thr:n arvo olisi helposti valittavissa, pitää myös matriisit yh ja yv olla skaalattu sopivasti, esim. välille Silloin voidaan kokeilla thr:lle esimerkiksi arvoja välillä Yritä saada aikaan kuvan 4 kaltainen tulos: 1. Lataa kuva tools.mat. Piirrä kuva 1x2 subplotiin. 2. Muodosta ensimmäisen differenssin suodatin ja suodata tools vaakasuunnassa matriisiin yh. Selvitä, miten saat funktiolla conv2 samankokoisen tuloksen kuin lähtömatriisi. 3. Suodata alkuperäinen kuva, ei yh, pystysuunnassa matriisiin yv. Käytä conv2 siten, että yv:stä tulee samankokoinen kuin yh (ja alkuperäinen kuva). 4. Skaalaa ja/tai leikkaa negatiiviset ja ylisuuret arvot yh:ssa ja yv:ssä. Mieti tarkkaan, mitä teet, sillä tämä vaikuttaa paljon reunojen löytymiseen! 5. Muodosta reunakuva edellä kuvatulla matriisivertailulla, negaatiolla ja skaalauksella. Kokeile eri kynnysarvoja. Piirrä tulos alkuperäisen viereen. 6. Tee samat operaatiot kuville echart ja lenna. 5 Työssä tarvittavat funktiot ja muut tiedostot Työssä tarvitaan funktioita, jotka eivät ole osa Matlabia. Ne voi ladata työn kotisivulta osoitteesta showimg trusize clip Työssä suodatetaan seuraavia kuvia, jotka on myös ladattavissa työn kotisivulta: baboon echart lenna tools Tämä versio: 10. toukokuuta 2010 kello 11:46 12

15 Viitteet [1] J. G. Proakis and D. G. Manolakis, Digital Signal Processing Principles, Algorithms, and Applications. Prentice-Hall, Inc., 3 ed., Tämä versio: 10. toukokuuta 2010 kello 11:46 13

16 Työ D104: Kuvien suodatus Ohjaajan varmistus lämmittelyosan suorittamisesta Liitä tämä sivu harjoitusosan raporttiin Ryhmän jäsenet: Ohjaaja täyttää seuraavat kohdat: Päiväys: Ohjaaja:

Säätötekniikan ja signaalinkäsittelyn työkurssi

Säätötekniikan ja signaalinkäsittelyn työkurssi Säätötekniikan ja signaalinkäsittelyn työkurssi Työ D102: Sinimuotoisen signaalin suodattaminen 0.4 op. Julius Luukko Lappeenrannan teknillinen yliopisto Sähkötekniikan osasto/säätötekniikan laboratorio

Lisätiedot

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

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. Laskuharjoitus 1A Mallit Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. 1. tehtävä %% 1. % (i) % Vektorit luodaan

Lisätiedot

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9. Python linkit: Python tutoriaali: http://docs.python.org/2/tutorial/ Numpy&Scipy ohjeet: http://docs.scipy.org/doc/ Matlabin alkeet (Pääasiassa Deni Seitzin tekstiä) Matriisit ovat matlabin perustietotyyppejä.

Lisätiedot

Valitse ruudun yläosassa oleva painike Download Scilab.

Valitse ruudun yläosassa oleva painike Download Scilab. Luku 1 Ohjeita ohjelmiston Scilab käyttöön 1.1 Ohjelmiston lataaminen Ohjeet ohjelmiston lataamiseen Windows-koneelle. Mene verkko-osoitteeseen www.scilab.org. Valitse ruudun yläosassa oleva painike Download

Lisätiedot

Mitä on konvoluutio? Tutustu kuvankäsittelyyn

Mitä on konvoluutio? Tutustu kuvankäsittelyyn Mitä on konvoluutio? Tutustu kuvankäsittelyyn Tieteenpäivät 2015, Työohje Sami Varjo Johdanto Digitaalinen signaalienkäsittely on tullut osaksi arkipäiväämme niin, ettemme yleensä edes huomaa sen olemassa

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe SGN-00 Signaalinkäsittelyn menetelmät Välikoe 9.3.009 Sivuilla - on. Älä vastaa siihen, jos et ollut ensimmäisessä välikokeessa. Tentin kysymykset ovat sivuilla 3-4. Vastaa vain jompaan kumpaan kokeeseen,

Lisätiedot

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006 Harjoitus 1: Matlab Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tutustuminen Matlab-ohjelmistoon Laskutoimitusten

Lisätiedot

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen SGN- Signaalinkäsittelyn perusteet Välikoe.5.4 Heikki Huttunen Tentissä ja välikokeessa saa käyttää vain tiedekunnan laskinta. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla -3 on. Sivuilla 4-5 on. Sivulla

Lisätiedot

Digitaalinen signaalinkäsittely Kuvankäsittely

Digitaalinen signaalinkäsittely Kuvankäsittely Digitaalinen signaalinkäsittely Kuvankäsittely Teemu Saarelainen, teemu.saarelainen@kyamk.fi Lähteet: Ifeachor, Jervis, Digital Signal Processing: A Practical Approach H.Huttunen, Signaalinkäsittelyn menetelmät,

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op), K2005 1 Suorita oheisten ohjeiden mukaiset tehtävät Matlab-ohjelmistoa käyttäen. Kokoa erilliseen

Lisätiedot

Zeon PDF Driver Trial

Zeon PDF Driver Trial Matlab-harjoitus 2: Kuvaajien piirto, skriptit ja funktiot. Matlabohjelmoinnin perusteita Numeerinen integrointi trapezoidaalimenetelmällä voidaan tehdä komennolla trapz. Esimerkki: Vaimenevan eksponentiaalin

Lisätiedot

110. 111. 112. 113. 114. 4. Matriisit ja vektorit. 4.1. Matriisin käsite. 4.2. Matriisialgebra. Olkoon A = , B = Laske A + B, 5 14 9, 1 3 3

110. 111. 112. 113. 114. 4. Matriisit ja vektorit. 4.1. Matriisin käsite. 4.2. Matriisialgebra. Olkoon A = , B = Laske A + B, 5 14 9, 1 3 3 4 Matriisit ja vektorit 4 Matriisin käsite 42 Matriisialgebra 0 2 2 0, B = 2 2 4 6 2 Laske A + B, 2 A + B, AB ja BA A + B = 2 4 6 5, 2 A + B = 5 9 6 5 4 9, 4 7 6 AB = 0 0 0 6 0 0 0, B 22 2 2 0 0 0 6 5

Lisätiedot

S-114.3812 Laskennallinen Neurotiede

S-114.3812 Laskennallinen Neurotiede S-114.3812 Laskennallinen Neurotiede Laskuharjoitus 2 4.12.2006 Heikki Hyyti 60451P Tehtävä 1 Tehtävässä 1 piti tehdä lineaarista suodatusta kuvalle. Lähtötietoina käytettiin kuvassa 1 näkyvää harmaasävyistä

Lisätiedot

Mediaanisuodattimet. Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että. niiden ominaisuudet tunnetaan hyvin

Mediaanisuodattimet. Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että. niiden ominaisuudet tunnetaan hyvin Mediaanisuodattimet Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että niiden ominaisuudet tunnetaan hyvin niiden analysointiin on olemassa vakiintuneita menetelmiä

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe SGN-100 Signaalinkäsittelyn menetelmät Välikoe 6.4.010 Sivuilla 1- on. Älä vastaa siihen, jos et ollut ensimmäisessä välikokeessa. Tentin kysymykset ovat sivuilla 3-4. Vastaa vain jompaan kumpaan kokeeseen,

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Kuvasignaalit. Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Kuvasignaalit. Jyrki Laitinen TL553 DSK, laboraatiot (.5 op) Kuvasignaalit Jyrki Laitinen TL553 DSK, laboraatiot (.5 op), K25 Suorita oheisten ohjeiden mukaiset tehtävät Matlab- ja VCDemo-ohjelmistoja käyttäen. Kokoa erilliseen mittauspöytäkirjaan

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op), K2005 1 Suorita oheisten ohjeiden mukaiset tehtävät Matlab-ohjelmistoa käyttäen. Kokoa erilliseen

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SGN-1200 Signaalinkäsittelyn menetelmät, Tentti 5.5.2008 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

Matlab-perusteet. Jukka Jauhiainen. OAMK / Tekniikan yksikkö. Hyvinvointiteknologian koulutusohjelma

Matlab-perusteet. Jukka Jauhiainen. OAMK / Tekniikan yksikkö. Hyvinvointiteknologian koulutusohjelma Matlab-perusteet Jukka Jauhiainen OAMK / Tekniikan yksikkö Hyvinvointiteknologian koulutusohjelma Tämän materiaalin tarkoitus on antaa opiskelijalle lyhyehkö johdanto Matlabohjelmiston perusteisiin. Matlabin

Lisätiedot

Vektoreiden virittämä aliavaruus

Vektoreiden virittämä aliavaruus Vektoreiden virittämä aliavaruus Määritelmä Oletetaan, että v 1, v 2,... v k R n. Näiden vektoreiden virittämä aliavaruus span( v 1, v 2,... v k ) tarkoittaa kyseisten vektoreiden kaikkien lineaarikombinaatioiden

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

1 Olkoon suodattimen vaatimusmäärittely seuraava:

1 Olkoon suodattimen vaatimusmäärittely seuraava: Olkoon suodattimen vaatimusmäärittely seuraava: Päästökaistan maksimipoikkeama δ p =.5. Estokaistan maksimipoikkeama δ s =.. Päästökaistan rajataajuus pb = 5 Hz. Estokaistan rajataajuudet sb = 95 Hz Näytetaajuus

Lisätiedot

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu Taulukot Taulukon määrittely ja käyttö Taulukko metodin parametrina Taulukon sisällön kopiointi toiseen taulukkoon Taulukon lajittelu esimerkki 2-ulottoisesta taulukosta 1 Mikä on taulukko? Taulukko on

Lisätiedot

Tuntematon järjestelmä. Adaptiivinen suodatin

Tuntematon järjestelmä. Adaptiivinen suodatin 1 1 Vastaa lyhyesti seuraaviin a) Miksi signaaleja ylinäytteistetään AD- ja DA-muunnosten yhteydessä? b) Esittele lohkokaaviona adaptiiviseen suodatukseen perustuva tuntemattoman järjestelmän mallinnus.

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SG-1200 Signaalinkäsittelyn menetelmät, Tentti 24.4.2006 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

Alipäästösuotimen muuntaminen muiksi perussuotimiksi

Alipäästösuotimen muuntaminen muiksi perussuotimiksi Alipäästösuotimen muuntaminen muiksi perussuotimiksi Usein suodinsuunnittelussa on lähtökohtana alipäästösuodin (LPF), josta voidaan yksinkertaisilla operaatioilla muodostaa ylipäästö- (HPF), kaistanpäästö-

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

Laskuharjoitus 9, tehtävä 6

Laskuharjoitus 9, tehtävä 6 Aalto-yliopiston perustieteiden korkeakoulu Jouni Pousi Systeemianalyysin laboratorio Mat-2.4129 Systeemien identifiointi Laskuharjoitus 9, tehtävä 6 Tämä ohje sisältää vaihtoehtoisen tavan laskuharjoituksen

Lisätiedot

Neljän alkion kunta, solitaire-peli ja

Neljän alkion kunta, solitaire-peli ja Neljän alkion kunta, solitaire-peli ja taikaneliöt Kalle Ranto ja Petri Rosendahl Matematiikan laitos, Turun yliopisto Nykyisissä tietoliikennesovelluksissa käytetään paljon tekniikoita, jotka perustuvat

Lisätiedot

Tietotyypit ja operaattorit

Tietotyypit ja operaattorit Tietotyypit ja operaattorit Luennossa tarkastellaan yksinkertaisten tietotyyppien int, double ja char muunnoksia tyypistä toiseen sekä esitellään uusia operaatioita. Numeeriset tietotyypit ja muunnos Merkkitieto

Lisätiedot

Lineaarialgebra b, kevät 2019

Lineaarialgebra b, kevät 2019 Lineaarialgebra b, kevät 2019 Harjoitusta 4 Maplella with(linearalgebra); (1) Tehtävä 1. Lineaarisia funktioita? a) Asetelma on kelvollinen: lähtö- ja maalijoukko on R-kertoiminen lineaariavaruus ja L

Lisätiedot

Kompleksiluvut signaalin taajuusjakauman arvioinnissa

Kompleksiluvut signaalin taajuusjakauman arvioinnissa Kompleksiluvut signaalin taajuusjakauman arvioinnissa Vierailuluento IMA-kurssilla Heikki Huttunen Lehtori, TkT Signaalinkäsittely, TTY heikki.huttunen@tut.fi Department of Signal Processing Fourier-muunnos

Lisätiedot

Kokonaislukuaritmetiikka vs. logiikkaluupit

Kokonaislukuaritmetiikka vs. logiikkaluupit Diskreetti matematiikka, syksy 2010 Matlab-harjoitus 3 (18.11. klo 16-18 MP103) Tehtäviin vastataan tälle paperille, osoitettuihin tyhjiin alueisiin, yleensä tyhjille riveille. Tehtävät saa ja on suorastaan

Lisätiedot

Signaalien tilastollinen mallinnus T-61.3040 (5 op) Syksy 2006 Harjoitustyö

Signaalien tilastollinen mallinnus T-61.3040 (5 op) Syksy 2006 Harjoitustyö Signaalien tilastollinen mallinnus T-61.3040 (5 op) Syksy 2006 Harjoitustyö Harjoitustyön sekä kurssin suorittaminen Kurssin suorittaminen edellyttää sekä tentin että harjoitustyön hyväksyttyä suoritusta.

Lisätiedot

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002 Matlab tehtäviä 1. Muodosta seuraavasta differentiaaliyhtälöstä siirtofuntio. Tämä differentiaaliyhtälö saattaisi kuvata esimerkiksi yksinkertaista vaimennettua jousi-massa systeemiä, johon on liitetty

Lisätiedot

Valokuvien matematiikkaa

Valokuvien matematiikkaa Valokuvien matematiikkaa Avainsanat: valokuva, pikseli, päättely Luokkataso: 3.-5. luokka, 6.-9. luokka, lukio, yliopisto Välineet: Kynä, tehtävämonisteet (liitteenä), mahdollisiin jatkotutkimuksiin tietokone

Lisätiedot

Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu

Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu Teemu Saarelainen, teemu.saarelainen@kyamk.fi Lähteet: Ifeachor, Jervis, Digital Signal Processing: A Practical Approach H.Huttunen,

Lisätiedot

T-75.4100 Digitaalinen kuvatekniikka Kevät 2015 Harjoitus 1: Kameran kuvanprosessointi

T-75.4100 Digitaalinen kuvatekniikka Kevät 2015 Harjoitus 1: Kameran kuvanprosessointi T-75.4100 Digitaalinen kuvatekniikka Kevät 2015 Harjoitus 1: Kameran kuvanprosessointi Palautus: 1.3.2015 1 1 Tavoite Työssä tutkitaan kolmea kameran kuvanprosessointiketjun vaihetta: tarkennusta, mosaiikkikuvan

Lisätiedot

1 Kannat ja kannanvaihto

1 Kannat ja kannanvaihto 1 Kannat ja kannanvaihto 1.1 Koordinaattivektori Oletetaan, että V on K-vektoriavaruus, jolla on kanta S = (v 1, v 2,..., v n ). Avaruuden V vektori v voidaan kirjoittaa kannan vektorien lineaarikombinaationa:

Lisätiedot

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

Solmu 3/2001 Solmu 3/2001. Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä: Frégier n lause Simo K. Kivelä Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä: Suorakulmaisen kolmion kaikki kärjet sijaitsevat paraabelilla y = x 2 ; suoran kulman

Lisätiedot

Sisältö. 2. Taulukot. Yleistä. Yleistä

Sisältö. 2. Taulukot. Yleistä. Yleistä Sisältö 2. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.1 2.2 Yleistä

Lisätiedot

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen SGN-11 Signaalinkäsittelyn perusteet Välikoe 3.5.16 Heikki Huttunen Laskimen käyttö sallittu. Muiden materiaalien käyttö ei sallittu. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla 1-3 on. Sivuilla 4-5

Lisätiedot

Muuttujan sisällön näet kirjoittamalla sen nimen ilman puolipistettä

Muuttujan sisällön näet kirjoittamalla sen nimen ilman puolipistettä Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos -e mlkompleksianalyysi 1. mlk001.tex Ensiapuohjeita Sijoitus muuttujaan esim: >> z=(1+i)/(1-2*i) Puolipiste lopussa estää tulostuksen. Muuttujan

Lisätiedot

Oikosulkumoottorikäyttö

Oikosulkumoottorikäyttö Oikosulkumoottorikäyttö 1 DEE-33040 Sähkömoottorikäyttöjen laboratoriotyöt TTY Oikosulkumoottorikäyttö T. Kantell & S. Pettersson 2 Laboratoriomittauksia suorassa verkkokäytössä 2.1 Käynnistysvirtojen

Lisätiedot

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus Tampereen yliopisto Tietokonegrafiikka 201 Tietojenkäsittelytiede Harjoitus 6 1..201 1. Tarkastellaan Gouraudin sävytysmallia. Olkoon annettuna kolmio ABC, missä A = (0,0,0), B = (2,0,0) ja C = (1,2,0)

Lisätiedot

Matlabin perusteita Grafiikka

Matlabin perusteita Grafiikka BL40A0000 SSKMO KH 1 Seuraavassa esityksessä oletuksena on, että Matlabia käytetään jossakin ikkunoivassa käyttöjärjestelmässä (PC/Win, Mac, X-Window System). Käytettäessä Matlabia verkon yli joko tekstipäätteeltä,

Lisätiedot

Matlab-tietokoneharjoitus

Matlab-tietokoneharjoitus Matlab-tietokoneharjoitus Tämän harjoituksen tavoitteena on: Opettaa yksinkertaisia piirikaavio- ja yksikkömuunnoslaskuja. Opettaa Matlabin perustyökaluja mittausten analysoimiseen. Havainnollistaa näytteenottotaajuuden,

Lisätiedot

1. Lineaarinen optimointi

1. Lineaarinen optimointi 0 1. Lineaarinen optimointi 1. Lineaarinen optimointi 1.1 Johdatteleva esimerkki Esimerkki 1.1.1 Giapetto s Woodcarving inc. valmistaa kahdenlaisia puuleluja: sotilaita ja junia. Sotilaan myyntihinta on

Lisätiedot

1 Vastaa seuraaviin. b) Taajuusvasteen

1 Vastaa seuraaviin. b) Taajuusvasteen Vastaa seuraaviin a) Miten määritetään digitaalisen suodattimen taajuusvaste sekä amplitudi- ja vaihespektri? Tässä riittää sanallinen kuvaus. b) Miten viivästys vaikuttaa signaalin amplitudi- ja vaihespektriin?

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

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukot C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukon muuttujilla (muistipaikoilla) on yhteinen nimi. Jokaiseen yksittäiseen

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 1 1 Matemaattisesta päättelystä Matemaattisen analyysin kurssin (kuten minkä tahansa matematiikan kurssin) seuraamista helpottaa huomattavasti, jos opiskelija ymmärtää

Lisätiedot

SGN-1251 Signaalinkäsittelyn sovellukset Välikoe Heikki Huttunen

SGN-1251 Signaalinkäsittelyn sovellukset Välikoe Heikki Huttunen SGN-5 Signaalinkäsittelyn sovellukset Välikoe.. Heikki Huttunen Tentissä ja välikokeessa saa käyttää vain tiedekunnan laskinta. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla - on. Sivuilla 4-6 on. Vastaa

Lisätiedot

ELEC-C6001 Sähköenergiatekniikka, laskuharjoitukset oppikirjan lukuun 10 liittyen.

ELEC-C6001 Sähköenergiatekniikka, laskuharjoitukset oppikirjan lukuun 10 liittyen. ELEC-C6001 Sähköenergiatekniikka, laskuharjoitukset oppikirjan lukuun 10 liittyen. X.X.2015 Tehtävä 1 Bipolaaritransistoria käytetään alla olevan kuvan mukaisessa kytkennässä, jossa V CC = 40 V ja kuormavastus

Lisätiedot

Johdatus tekoälyn taustalla olevaan matematiikkaan

Johdatus tekoälyn taustalla olevaan matematiikkaan Johdatus tekoälyn taustalla olevaan matematiikkaan Informaatioteknologian tiedekunta Jyväskylän yliopisto 5. luento.2.27 Lineaarialgebraa - Miksi? Neuroverkon parametreihin liittyvät kaavat annetaan monesti

Lisätiedot

1.4 Funktion jatkuvuus

1.4 Funktion jatkuvuus 1.4 Funktion jatkuvuus Kun arkikielessä puhutaan jonkin asian jatkuvuudesta, mielletään asiassa olevan jonkinlaista yhtäjaksoisuutta, katkeamattomuutta. Tässä ei kuitenkaan käsitellä työasioita eikä ihmissuhteita,

Lisätiedot

Matriiseista. Emmi Koljonen

Matriiseista. Emmi Koljonen Matriiseista Emmi Koljonen 3. lokakuuta 22 Usein meillä on monta systeemiä kuvaavaa muuttujaa ja voimme kirjoittaa niiden välille riippuvaisuuksia, esim. piirin silmukoihin voidaan soveltaa silmukkavirtayhtälöitä.

Lisätiedot

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2

TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2 TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos TKT-3200 Tietokonetekniikka I Harjoitustyö 4: Cache, osa 2.. 2010 Ryhmä Nimi Op.num. 1 Valmistautuminen Cache-työn toisessa osassa

Lisätiedot

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma. 2. Taulukot 2.1 Sisältö Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.2 Yleistä

Lisätiedot

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet Ohjelmointi Matlab-komentoja voidaan koota ns. M-tiedostoon. Nimi tulee tiedoston tarkentimesta.m. Matlabilla voidaan ohjelmoida kahdella eri tavalla: Skriptit eli komentojonot eli makrot Funktiot eli

Lisätiedot

Lineaarikuvauksen R n R m matriisi

Lineaarikuvauksen R n R m matriisi Lineaarikuvauksen R n R m matriisi Lauseessa 21 osoitettiin, että jokaista m n -matriisia A vastaa lineaarikuvaus L A : R n R m, jolla L A ( v) = A v kaikilla v R n. Osoitetaan seuraavaksi käänteinen tulos:

Lisätiedot

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne

Lisätiedot

Ratkaisuehdotukset LH 3 / alkuvko 45

Ratkaisuehdotukset LH 3 / alkuvko 45 Ratkaisuehdotukset LH 3 / alkuvko 45 Tehtävä : Olkoot A, B, X R n n, a, b R n ja jokin vektorinormi. Kätetään vektorinormia vastaavasta operaattorinormista samaa merkintää. Nätä, että. a + b a b, 2. A

Lisätiedot

Matlabperusteita, osa 1. Heikki Apiola Matlab-perusteita, osa 1. Heikki Apiola. 12. maaliskuuta 2012

Matlabperusteita, osa 1. Heikki Apiola Matlab-perusteita, osa 1. Heikki Apiola. 12. maaliskuuta 2012 Matlab-perusteita, 12. maaliskuuta 2012 Matlab-perusteita, Ohjelmahahmotelma 1. viikko: Matlab 2. viikko: Maple (+ annettujen Matlab tehtävien ratkaisuja) 3. viikko: Maple ja Matlab (lopputyöt) Matlab-perusteita,

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

Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.

Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei. Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva olioperustainen ohjelma Java-kielellä. Lötköt säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SG-1200 Signaalinkäsittelyn menetelmät, Tentti 21.3.2006 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

Puzzle SM 2005 15. 25.7.2005. Pistelasku

Puzzle SM 2005 15. 25.7.2005. Pistelasku Puzzle SM 005 5. 5.7.005 Pistelasku Jokaisesta oikein ratkotusta tehtävästä saa yhden () pisteen, minkä lisäksi saa yhden () bonuspisteen jokaisesta muusta ratkojasta, joka ei ole osannut ratkoa tehtävää.

Lisätiedot

Vaatimusten versiointi DOORSissa

Vaatimusten versiointi DOORSissa Vaatimusten versiointi DOORSissa 01.06.2004 SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi Miten ylläpitää versiotietoa? Vaatimusten versiotiedoissa on kaksi ylläpidettävää tietoa: Itse vaatimusten hyväksytty

Lisätiedot

6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4

6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4 Datamuuntimet 1 Pekka antala 19.11.2012 Datamuuntimet 6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4 7. AD-muuntimet 5 7.1 Analoginen

Lisätiedot

6. Harjoitusjakso II. Vinkkejä ja ohjeita

6. Harjoitusjakso II. Vinkkejä ja ohjeita 6. Harjoitusjakso II Seuraavaksi harjoitellaan algebrallisten syötteiden, komentojen ja funktioiden käyttöä GeoGebrassa. Tarjolla on ensimmäisen harjoittelujakson tapaan kahden tasoisia harjoituksia: perustaso

Lisätiedot

S Signaalit ja järjestelmät

S Signaalit ja järjestelmät dsfsdfs S-72.1110 Työ 2 Ryhmä 123: Tiina Teekkari EST 12345A Teemu Teekkari TLT 56789B Selostus laadittu 1.1.2007 Laboratoriotyön suoritusaika 31.12.2007 klo 08:15 11:00 Esiselostuksen laadintaohje Täytä

Lisätiedot

Insinöörimatematiikka D

Insinöörimatematiikka D Insinöörimatematiikka D M. Hirvensalo mikhirve@utu.fi V. Junnila viljun@utu.fi Matematiikan ja tilastotieteen laitos Turun yliopisto 2015 M. Hirvensalo mikhirve@utu.fi V. Junnila viljun@utu.fi Luentokalvot

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 16.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 16.2.2010 1 / 41 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen.

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen. TL536DSK-algoritmit (J. Laitinen)..5 Välikoe, ratkaisut Millaisia ongelmia kvantisointi aiheuttaa signaalinkäsittelyssä? Miksi ongelmat korostuvat IIR-suodatinten tapauksessa? Tarkastellaan Hz taajuista

Lisätiedot

Laskuharjoitus 2 ( ): Tehtävien vastauksia

Laskuharjoitus 2 ( ): Tehtävien vastauksia TT12S1E Tietoliikenteen perusteet Metropolia/A. Koivumäki Laskuharjoitus 2 (11.9.2013): Tehtävien vastauksia 1. Eräässä kuvitteellisessa radioverkossa yhdessä radiokanavassa voi olla menossa samanaikaisesti

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 2. Lukujen esittäminen ja aritmetiikka 2.1 Kantajärjestelmät ja lukujen esittäminen Käytettävät lukujoukot: Luonnolliset luvut IN = {0,1,2,3,... } Positiiviset kokonaisluvut

Lisätiedot

BL40A0000 Säätötekniikan ja signaalinkäsittelyn

BL40A0000 Säätötekniikan ja signaalinkäsittelyn 1 BL40A0000 Säätötekniikan ja signaalinkäsittelyn matemaattiset ohjelmistot Luennot ja harjoitukset Katja Hynynen, h. 6431, p. 040-548 8954 Katja.Hynynen@lut.fi Opetus ja suoritusvaatimukset OPETUS: Luentoja

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SGN-1200 Signaalinkäsittelyn menetelmät, Tentti 18.3.2008 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin.

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin. Linux-harjoitus 9 Linuxin mukana tulevat komentotulkit (mm. bash, tcsh, ksh, jne ) sisältävät ohjelmointikielen, joka on varsin tehokas ja ilmaisuvoimainen. Tähän yhdistettynä unix-maailmasta tutut tehokkaat

Lisätiedot

LOPPURAPORTTI 19.11.2007. Lämpötilahälytin. 0278116 Hans Baumgartner xxxxxxx nimi nimi

LOPPURAPORTTI 19.11.2007. Lämpötilahälytin. 0278116 Hans Baumgartner xxxxxxx nimi nimi LOPPURAPORTTI 19.11.2007 Lämpötilahälytin 0278116 Hans Baumgartner xxxxxxx nimi nimi KÄYTETYT MERKINNÄT JA LYHENTEET... 3 JOHDANTO... 4 1. ESISELOSTUS... 5 1.1 Diodi anturina... 5 1.2 Lämpötilan ilmaisu...

Lisätiedot

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset Harjoituksen aiheena ovat aliohjelmat ja abstraktit tietotyypit sekä olio-ohjelmointi. Tehtävät tehdään C-, C++- ja Java-kielillä.

Lisätiedot

A* Reitinhaku Aloittelijoille

A* Reitinhaku Aloittelijoille A* Reitinhaku Aloittelijoille Alkuperäisen artikkelin kirjoittanut Patrick Lester, suomentanut Antti Veräjänkorva. Suom. huom. Tätä kääntäessäni olen pyrkinyt pitämään saman alkuperäisen tyylin ja kerronnan.

Lisätiedot

Synteesi-analyysi koodaus

Synteesi-analyysi koodaus Luku 2 Synteesi-analyysi koodaus Tärkein koodausmenetelmä puheenkoodausstandardeissa 9-luvulta alkaen on ollut synteesi-analyysi koodaus (engl. analysis-by-synthesis). Tässä lähestymistavassa optimaaliset

Lisätiedot

3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö

3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö 3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö Yhtälön (tai funktion) y = a + b + c, missä a 0, kuvaaja ei ole suora, mutta ei ole yhtälökään ensimmäistä astetta. Funktioiden

Lisätiedot

Python-ohjelmointi Harjoitus 2

Python-ohjelmointi Harjoitus 2 Python-ohjelmointi Harjoitus 2 TAVOITTEET Kerrataan tulostuskomento ja lukumuotoisen muuttujan muuttaminen merkkijonoksi. Opitaan jakojäännös eli modulus, vertailuoperaattorit, ehtorakenne jos, input-komento

Lisätiedot

Elektroniikka, kierros 3

Elektroniikka, kierros 3 Elektroniikka, kierros 3 1. a) Johda kuvan 1 esittämän takaisinkytketyn systeemin suljetun silmukan vahvistuksen f lauseke. b) Osoita, että kun silmukkavahvistus β 1, niin suljetun silmukan vahvistus f

Lisätiedot

MICROSOFT EXCEL 2010

MICROSOFT EXCEL 2010 1 MICROSOFT EXCEL 2010 Taulukkolaskentaohjelman jatkokurssin tärkeitä asioita 2 Taulukkolaskentaohjelmalla voit Käyttää tietokonetta ruutupaperin ja taskulaskimen korvaajana Laatia helposti ylläpidettäviä

Lisätiedot

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100 Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).

Lisätiedot

1 Matriisit ja lineaariset yhtälöryhmät

1 Matriisit ja lineaariset yhtälöryhmät 1 Matriisit ja lineaariset yhtälöryhmät 11 Yhtälöryhmä matriisimuodossa m n-matriisi sisältää mn kpl reaali- tai kompleksilukuja, jotka on asetetettu suorakaiteen muotoiseksi kaavioksi: a 11 a 12 a 1n

Lisätiedot

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5) Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,

Lisätiedot

Sisältö. 22. Taulukot. Yleistä. Yleistä

Sisältö. 22. Taulukot. Yleistä. Yleistä Sisältö 22. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko metodin parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 22.1 22.2 Yleistä

Lisätiedot

8. Yhtälöiden ratkaisuja Newtonilla, animaatioita

8. Yhtälöiden ratkaisuja Newtonilla, animaatioita 8. Yhtälöiden ratkaisuja Newtonilla, animaatioita Käsitellään puhtaana Maple-työnä ja myös Maple-Matlab-yhteistyönä. restart with plots : N d /evalf K f D f Nsymb d / K f D f lprint Nsymb +(*cos()-sin()-1)/(*sin())

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,

Lisätiedot

Tiedonkeruu ja analysointi

Tiedonkeruu ja analysointi Tiedonkeruu ja analysointi ViDRoM Virtual Design of Rotating Machines Raine Viitala 30.9.2015 ViDRoM Virtual Design of Rotating Machines Mitataan dynaamista käyttäytymistä -> nopeuden funktiona Puhtaat

Lisätiedot

Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori

Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori Testitapaukset - Koordinaattieditori Sisällysluettelo 1. Johdanto...3 2. Testattava järjestelmä...4 3. Toiminnallisuuden testitapaukset...5 3.1 Uuden projektin avaaminen...5 3.2 vaa olemassaoleva projekti...6

Lisätiedot

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

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5. 2. MS-A000 Matriisilaskenta 2. Nuutti Hyvönen, c Riikka Kangaslampi Matematiikan ja systeemianalyysin laitos Aalto-yliopisto 2..205 Tarkastellaan esimerkkinä lineaarista yhtälöparia { 2x x 2 = x x 2 =

Lisätiedot

Matematiikan kotitehtävä 2, MAA 10 Todennäköisyys ja tilastot

Matematiikan kotitehtävä 2, MAA 10 Todennäköisyys ja tilastot Matematiikan kotitehtävä 2, MAA 10 Todennäköisyys ja tilastot Sievin lukio Tehtävien ratkaisut tulee olla esim. Libre officen -writer ohjelmalla tehtyjä. Liitä vastauksiisi kuvia GeoGebrasta ja esim. TI-nSpire

Lisätiedot

Luku 3. Listankäsittelyä. 3.1 Listat

Luku 3. Listankäsittelyä. 3.1 Listat Luku 3 Listankäsittelyä Funktio-ohjelmoinnin tärkein yksittäinen tietorakenne on lista. Listankäsittely on paitsi käytännöllisesti oleellinen aihe, se myös valaisee funktio-ohjelmoinnin ideaa. 3.1 Listat

Lisätiedot

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Tehtävä 1: Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske

Lisätiedot