MARKUS LAINE PULLONPALAUTUSETIKETIN ETSINTÄ JA TUNNISTUS

Samankaltaiset tiedostot
JOHDATUS TEKOÄLYYN TEEMU ROOS

Digitaalinen signaalinkäsittely Kuvankäsittely

S09 04 Kohteiden tunnistaminen 3D datasta

JOHDATUS TEKOÄLYYN TEEMU ROOS

8. Morfologinen kuvanprosessointi 8.1. Perusteita

JOHDATUS TEKOÄLYYN TEEMU ROOS

Vektorien pistetulo on aina reaaliluku. Esimerkiksi vektorien v = (3, 2, 0) ja w = (1, 2, 3) pistetulo on

JOHDATUS TEKOÄLYYN TEEMU ROOS

Kompleksiluvut signaalin taajuusjakauman arvioinnissa

10. Esitys ja kuvaus

2D piirrelaskennan alkeet, osa I

JOHDATUS TEKOÄLYYN TEEMU ROOS

v 8 v 9 v 5 C v 3 v 4

1. Lineaarinen optimointi

6.6. Tasoitus ja terävöinti

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)

Mitä on konvoluutio? Tutustu kuvankäsittelyyn

Matematiikan tukikurssi

Luku 8. Aluekyselyt. 8.1 Summataulukko

Sami Hirvonen. Ulkoasut Media Works sivustolle

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

Osa IX. Z muunnos. Johdanto Diskreetit funktiot

Matemaatiikan tukikurssi

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

Tietotekniikan valintakoe

Matematiikan tukikurssi

Johdatus verkkoteoriaan 4. luento

PIKSELIT JA RESOLUUTIO

Kenguru 2011 Cadet (8. ja 9. luokka)

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

Matematiikan tukikurssi

Scratch ohjeita. Perusteet

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään

Kenguru 2017 Student lukio

Matematiikan tukikurssi

Algoritmit 2. Luento 6 To Timo Männikkö

Diskreetin matematiikan perusteet Malliratkaisut 2 / vko 38

Venekilpailu! Esteiden väistely ja hahmon ohjaaminen

S Laskennallinen Neurotiede

Tekijä Pitkä matematiikka

Cantorin joukon suoristuvuus tasossa

Matriisit, kertausta. Laskutoimitukset. Matriisikaavoja. Aiheet. Määritelmiä ja merkintöjä. Laskutoimitukset. Matriisikaavoja. Matriisin transpoosi

MAB3 - Harjoitustehtävien ratkaisut:

y=-3x+2 y=2x-3 y=3x+2 x = = 6

A = a b B = c d. d e f. g h i determinantti on det(c) = a(ei fh) b(di fg) + c(dh eg). Matriisin determinanttia voi merkitä myös pystyviivojen avulla:

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

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

5.3 Ensimmäisen asteen polynomifunktio

Juuri 10 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty

Ratkaisu: a) Kahden joukon yhdisteseen poimitaan kaikki alkiot jotka ovat jommassakummassa joukossa (eikä mitään muuta).

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

Koska ovat negatiiviset. Keskihajontoja ei pystytä laskemaan mutta pätee ¾.

JOHDATUS TEKOÄLYYN TEEMU ROOS

2 Pistejoukko koordinaatistossa

Matematiikan tukikurssi, kurssikerta 2

Demo 1: Simplex-menetelmä

Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9

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

Lajittelumenetelmät ilmakehän kaukokartoituksen laadun tarkkailussa (valmiin työn esittely)

Luento 6: 3-D koordinaatit

811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu

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

3 Suorat ja tasot. 3.1 Suora. Tässä luvussa käsitellään avaruuksien R 2 ja R 3 suoria ja tasoja vektoreiden näkökulmasta.

Kenguru 2013 Cadet (8. ja 9. luokka)

T Luonnollisten kielten tilastollinen käsittely

MS-A0402 Diskreetin matematiikan perusteet

VERKOSTO GRAAFINEN OHJE

2 Raja-arvo ja jatkuvuus

Moniulotteisia todennäköisyysjakaumia

1 Kannat ja kannanvaihto

Konformigeometriaa. 5. maaliskuuta 2006

3 Raja-arvo ja jatkuvuus

2.3 Virheitä muunnosten käytössä

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

7. Normaalijakauma ja standardipisteet

Algoritmi III Vierekkäisten kuvioiden käsittely. Metsätehon tuloskalvosarja 7a/2018 LIITE 3 Timo Melkas Kirsi Riekki Metsäteho Oy

Reaalilukuvälit, leikkaus ja unioni (1/2)

5 Lineaariset yhtälöryhmät

4 Yleinen potenssifunktio ja polynomifunktio

Injektio. Funktiota sanotaan injektioksi, mikäli lähtöjoukon eri alkiot kuvautuvat maalijoukon eri alkioille. Esim.

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

Numeeriset menetelmät

Vektoreiden virittämä aliavaruus

MAB3 - Harjoitustehtävien ratkaisut:

Lyhyt yhteenvetokertaus nodaalimallista SÄTEILYTURVAKESKUS STRÅLSÄKERHETSCENTRALEN RADIATION AND NUCLEAR SAFETY AUTHORITY

Yhtälön oikealla puolella on säteen neliö, joten r. = 5 eli r = ± 5. Koska säde on positiivinen, niin r = 5.

Matematiikan ja tilastotieteen laitos Algebra I - Kesä 2009 Ratkaisuehdoituksia harjoituksiin 8 -Tehtävät sivua Heikki Koivupalo ja Rami Luisto

Harjoitus 3 ( )

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

Toinen harjoitustyö. ASCII-grafiikkaa

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

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

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

Matematiikan tukikurssi, kurssikerta 3

Asiakas ja tavoite. Tekninen toteutus

Järvi 1 Valkjärvi. Järvi 2 Sysijärvi

Matematiikan tukikurssi

Ilkka Mellin Todennäköisyyslaskenta Osa 3: Todennäköisyysjakaumia Moniulotteisia todennäköisyysjakaumia

Transkriptio:

MARKUS LAINE PULLONPALAUTUSETIKETIN ETSINTÄ JA TUNNISTUS Kandidaatintyö Tarkastaja: lehtori Heikki Huttunen

ii TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Signaalinkäsittelyn ja tietoliikennetekniikan koulutusohjelma LAINE, MARKUS: Pullonpalautusetikettien etsintä ja tunnistus Kandidaatintyö, 20 sivua Toukokuu 2011 Pääaine: Signaalinkäsittely Tarkastaja: lehtori Heikki Huttunen Avainsanat: Eroosio, dilaatio, avaus, bottom-hat, top-hat, Fourier-deskriptorit, kappaleen tunnistus, p-tile kynnystys, reunan etsintä, pullo, palautus, konenäkö Konenäkö on yksi tärkeä osa-alue digitaalisessa kuvankäsittelyssä. Tässä työssä tutustutaan hiukan konenäköön ja hahmontunnistukseen. Työssä pyrittiin etäisesti mallintamaan pullonpalautusautomaatin toimintaa. Työssä testattiin vaihtoehtoista tapaa perinteiselle viivakoodin tunnistamiselle. Pullosta otettiin kuva ja pyrittiin kuvasta etsimään panttitunniste. Erilaiset panttitunnisteet pyrittiin luokittelemaan eri luokkiin. Työssä käsitellään aluksi toteutuksessa käytettyä teoriaa ja sen jälkeen kerrotaan kuinka itse toteutuksesta. Lopuksi arvioimme vielä toteutuksen mielekkyyttä ja mahdollisia muita ratkaisuja.

iii ALKUSANAT Tämä työ on Tampereen teknillisen yliopiston signaalinkäsittelyn laitoksen kandidaatintyöseminaarin opinnäytetyö, joka on kirjoitettu keväällä 2011. Työn myötä ennestään hiukan tuntematon signaalinkäsittelyn osa-alue tuli huomattavasti tutummaksi ja herätti mielenkiinnon. Viimeistään työn myötä vahvistui tunne siitä, että digitaalinen kuvankäsittely on asia, jonka parissa työskentely voisi olla kiinnostavaa. Haluaisin esittää suuren kiitoksen työn ohjaajalle Heikki Huttuselle kommenteista ja vinkeistä työn aikana. Tampereella 08.05.2011 Markus Laine

SISÄLLYS 1 Johdanto... 1 2 Menetelmät... 2 2.1 Eroosio ja Dilaatio... 2 2.2 Avaus ja sulku... 3 2.3 Bottom-hat ja top-hat muunnokset... 4 2.4 Kynnystys ja reunojen etsintä... 4 2.5 Fourier-muunnos... 9 3 Menetelmien sovellus ja tulokset... 11 3.1 Panttimerkinnän etsiminen... 12 3.2 Panttimerkinnän tunnistaminen... 15 3.3 Tulosten vertailu ja arviointi... 17 4 Yhteenveto... 19 Lähteet... 20 iv

v TERMIT JA NIIDEN MÄÄRITELMÄT Binäärinen kuva Blokki Otsu RGB Kuva, joka voi saada arvoikseen vain ykkösiä ja nollia. Kuvan osa, usein esimerkiksi 3x3 matriisi. Nobuyuki Otsun kehittämä kynnystysmenetelmä. Värimaailma, joka koostuu kolmesta eri komponentista: punaisesta, vihreästä ja sinisestä. FFT Histogrammi Nopea Fourier-muunnos (Eng. Fast Fourier Transform) on algoritmi, jolla voidaan laskea normaalisti raskas Fouriermuunnos diskreetille datalle tehokkaasti ja nopeasti tietokoneella. Kuvaa harmaasävyjen tilastollista jakaumaa.

1 1 JOHDANTO Signaalinkäsittelyn menetelmien ja sovellusten määrä on kasvanut hurjaa vauhtia tekniikan kehittyessä ja varsinkin sen digitalisoituessa. Digitaalinen kuvankäsittely ja hahmontunnistus ovat tulossa yhä enemmän ja enemmän mukaan jokapäiväisiin teknisiin laitteisiin ja sovelluksiin. Jopa pullonpalautusautomaateissa käytetään erilaisia signaalinkäsittelyn menetelmiä. Tässä työssä pyritään osittain jäljittelemään pullonpalautusautomaatin toimintaa. Oikeissa automaateissa tunnistus toteutetaan viivakoodin avulla. Sen lisäksi oikeissa automaateissa tarkastellaan myös muita pullojen ominaisuuksia väärinkäytösten estämiseksi. Työtä rajataan siten, että tarkastelemme vain muovipulloja, joissa on Palautuspakkaus Oy:n (PALPA) vaatimat merkinnät [1]. Toisin kuin oikeissa automaateissa, työssä keskityttiin vain kuvan 1 kaltaisen visuaalisen panttitunnisteen löytämiseen ja tunnistamiseen kuvasta. Oikeilla automaateilla on myös reaaliaikavaatimuksia, joihin ei tässä työssä paneuduttu. Kuva 1. Esimerkki pullon panttitunnisteesta. Kuvan värit ja pantin arvot voivat vaihdella riippuen pullon koosta ja etiketin värityksestä. Koska automaateissa tunnistus ei tapahdu visuaalisen panttitunnisteen avulla, eivät niiden määrityksetkään ole yhtä tarkkoja kuin viivakoodien. Viivakoodilta vaaditaan aina että viivat ovat tummemmalla värillä ja välit vaaleammalla, mutta panttitunnisteiden tapauksessa väreistä ja niiden suhteista ei voida olla varmoja. Työtä varten pyrittiin kuvaamaan mahdollisimman paljon erilaisia pulloja ja ottamaan niistä kuvia tavallisella digitaalikameralla mahdollisimman vakioissa olosuhteissa. Näistä kuvista yritettiin löytää panttitunniste ja tunnistaa se oikeaan luokkaan pantin arvon mukaan. Tähän käytettiin tunnettuja hahmontunnistuksen työkaluja, kuten kynnystämistä ja Fourier-deskriptoreita. Fourier-deskriptorit ovat tehokas tapa kappaleiden muotojen tunnistamiseen, koska niissä voidaan suurelta osin eliminoida kappaleen kokoon, kiertymiseen ja sijaintiin liittyvät tekijät. Panttitunnisteen löydyttyä käytettiin uudestaan, Fourier-deskriptoreita pullojen luokittelemiseksi panttien mukaisiin luokkiin. Koska työssä pyritään etäisesti jäljittelemään pullonpalautusautomaattia, mukana testeissä on muutama kuva, joissa panttitunniste on kulunut tai puuttuu kokonaan. Työssä käytettyjä menetelmiä voidaan soveltaa myös moniin muihin kappaleen muotoon liittyviin tunnistusongelmiin.

2 2 2 MENETELMÄT Tässä kappaleessa tutustutaan työssä käytettyjen menetelmien taustalla oleviin teorioihin ja taustoihin. Useimmat menetelmistä ovat digitaalisessa kuvankäsittelyssä ja hahmontunnistuksessa hyvin yleisesti käytettyjä. Morfologiset operaatiot ovat työkaluja, joiden avulla kuvasta saadaan erotettua joitain kiinnostavia kohteita, kuten alueen tai kappaleen muotoja tai reunaviivoja. Suurin osa morfologisista operaatioista perustuu eroosioon ja dilaatioon. Niin myös bottom-hat ja top-hat muunnokset, joita työssä käytetään hyväksi.[2, s. 627 634, 672.] Fourier-muunnoksen idea on yksi tärkeimmistä digitaalisen kuvankäsittelyn menetelmistä. Siinä aikatason data muutetaan taajuustasoon, jolloin datalle voidaan tehdä helposti toimenpiteitä, jotka olisivat mahdottomia tai hyvin hankalia toteuttaa aikatasossa. 2.1 Eroosio ja Dilaatio Eroosio ja dilaatio ovat operaatioita, joilla kuvassa olevia kappaleita voidaan pienentää tai kasvattaa. Seuraavassa määritellään binäärisille kuville eroosio ja dilaatio. Eroosio (Eng. erosion) määritellään kaavalla (2.1.1) missä A tarkoittaa kuvaa, jolle eroosiota toteutetaan ja B tietynmuotoista kappaletta, jota yritetään sovittaa kuvaan A kaikissa eri pisteissä z. Kaavassa tarkoittaa kappaletta B siirrettynä kohtaan z. Kaavassa z:lla tarkoitetaan pisteiden joukkoa, jolle sovitettu kappale B on kappaleen A osajoukko. [2, s. 631 633.] Dilaatio (Eng. dilation) puolestaan määritellään kaavalla [ ] (2.1.2) missä A ja B ovat samoja kuin eroosion tapauksessa. :llä puolestaan tarkoitetaan B:n peilikuvaa origon suhteen, jolloin sen jokainen koordinaattipari x ja y muuttuvat koordinaattipareiksi -x ja -y. Nyt z on kaikkien niiden pisteiden joukko, jolle sovitetun :n ja A:n leikkaus on A:n osajoukko. [2, s. 633 635.] Yksinkertaistukseksi voidaan sanoa, että eroosio ja dilaatio ovat blokeille tehtyjä suodatustoimenpiteitä. Eroosion tapauksessa, jos kuvan A blokki vastaa kappaletta B, tällöin z (B:n keskikohta) saa arvon yksi ja muulloin arvon nolla. Dilaation tarkastelta-

2. Menetelmät 3 essa, jos kuvan A blokista ja :stä löytyy edes yksi toisiaan vastaava alkio, tällöin z (B:n keskikohta) saa arvon 1 ja muulloin arvon 0. Eroosio siis pienentää ja dilaatio suurentaa kappaleita. Kuvassa 2 on pyritty havainnollistamaan kyseisiä toimenpiteitä. Kuva 2 A, B, Eroosio ja Dilaatio ovat kaikki binäärisiä kuvia, eli ne voivat sisältää vain arvoja 0 ja 1. 0 kuvaa mustaa ja 1 valkoista. Kuvassa A 60x60 on 50x50 kokoinen valkoinen neliö. B on puolestaan 5x5 kokoinen valkoinen neliö. Eroosio 60x60 on A:n ja B:n välinen eroosio, jossa valkoisen neliön koko on 46x46. Dilaatio 60x60 on A:n ja B:n (johtuen B:n symmetrisyydestä ) välinen dilaatio, jossa valkoisen neliön koko on 54x54. 2.2 Avaus ja sulku Avaus ja sulku ovat morfologisia operaatioita, jotka perustuvat eroosioon ja dilaatioon. Tässä käsitellään binäärisiä tapauksia. Yleisesti avaus (Eng. opening) tasoittaa kappaleiden reunoja. Se pyöristää muotoja poistamalla kapeita kannaksia ja ohuita ulkonemia. Sulku (Eng. closing) tasoittaa myös kappaleiden reunoja. Se täyttää reunaviivojen pienet aukot, kapeat kannakset sekä reiät kappaleiden sisällä. Kuvat 3 ja 4 havainnollistavat avausta ja sulkua. Kuva 3 A, B, Eroosio ja Avaus ovat binäärisiä kuvia. Kuvista nähdään, että kappaleen koko periaatteessa säilyy. Terävät ulkonevat kulmat vain pyöristyvät.

2. Menetelmät 4 Kuva 4 A, B, Eroosio ja Sulku ovat binäärisiä kuvia. Kuvista nähdään, että kappaleen koko periaatteessa säilyy. Terävät sisenevät kulmat vain pyöristyvät. Avaus määritellään kaavan (2.2.1) mukaan, missä A:n ja B:n eroosiosta otetaan dilaatio B:n kanssa. Sulku määritellään kaavan (2.2.2) mukaan, missä A:n ja B:n dilaatiosta otetaan eroosio B:n kanssa. [2, s. 635 639.] 2.3 Bottom-hat ja top-hat muunnokset Bottom-hat ja top-hat muunnokset perustuvat sulkuun ja avaukseen. Niiden avulla pyritään hävittämään kuvasta objekteja. Tässä käsitellään binäärisiä tapauksia. Bottom-hat muunnosta käytetään tummille kappaleille vaalealla taustalla ja top-hat muunnosta vaaleille kappaleille tummalla taustalla. Bottom-hat muunnos määritellään kaavan (2.3.1) mukaan, missä A:n ja B:n sulusta vähennetään alkuperäinen kuva A. [2, s. 672 674.] Top-hat muunnos puolestaan määritellään kaavan (2.3.2) mukaan, missä alkuperäisestä kuvasta A vähennetään A:n ja B:n avaus. [2, s. 672 674.] 2.4 Kynnystys ja reunojen etsintä Kynnystys on usein käytetty operaatio, jolla pyritään kuvasta saamaan esille paremmin haluttu data. Kynnystystä voidaan tehdä sekä väri että harmaasävykuville. Tässä keskitytään harmaasävykuviin, jolloin kynnystyksen tarkoituksena on tehdä harmaasävyku-

2. Menetelmät 5 vista binäärisiä. Kynnystysmenetelmiä on olemassa aina yksinkertaisista vakioarvoihin perustuvista monimutkaisempiin automaattisiin menetelmiin [3]. Käytännössä kynnystämisellä kuitenkin tarkoitetaan sitä, että harmaasävykuvasta tietyn arvon ylittävät pikselit merkitään ykköseksi tai nolliksi ja vastaavasti kynnysarvoa pienemmät nolliksi tai ykkösiksi. Arvot voivat olla muutakin, mutta useimmiten binäärikuvien arvot ovat nollia tai ykkösiä. Kuvassa 5 on esimerkkejä, joissa johdantokappaleen kuvan 1 harmaasävymuunnosta on kynnystetty erilaisilla vakiarvoilla. Kuva 5 Vasemmalla on johdantokappaleen kuvasta 1 laskettu harmaasävykuva. Seuraavat kaksi kuvaa ovat tapauksia, joissa kynnysarvo on ollut huono, kun halutaan saada esiin kuvan kappaleet. Toisessa on kynnystetty liian matalalla ja toisessa liian korkealla arvolla. Viimeisessä kuvassa kappaleet ovat selkeästi näkyvissä, joten kynnystys on onnistunut ja harmaasävykuvasta on saatu binäärinen. Kuvan 5 tapauksessa vakioarvolla kynnystäminen on mielekästä, mutta jos meillä olisi useampi vastaava kuva, jonka harmaasävyarvot poikkeavat toisistaan, kannattaa käyttää automaattista kynnystysmenetelmää. Näin saamme selkeistä kuvista, joissa tausta on selvästi erivärinen kuin itse objekti, helposti halutut kappaleet esille. Otsun menetelmä sopii juuri tämänkaltaisille kuville. Otsun menetelmässä pyritään maksimoimaan histogrammia tarkasteltaessa luokkien välinen varianssi [2, s. 742 747]. Histogrammi on graafinen malli tilastollisesta jakaumasta. Sovitaan että kuvassa on L harmaasävyä, joten jokainen pikseli voi saada arvon väliltä 0 L-1 ja histogrammi kertoo kuinka monta pikseliä kutakin harmaasävyä kuvasta löytyy. Tämän tiedon avulla on mahdollista laskea todennäköisyys kullekin harmaasävyarvolle jakamalla kunkin harmaasävyarvon pikselien kappalemäärä koko kuvan pikseleiden määrällä. Kuvalle voidaan valita kynnysarvoksi jokin harmaasävyn arvo. Tämä kynnysarvo jakaa kuvan kahteen luokkaan, sen alapuolelle jääviin ja sen yläpuolelle jääviin. Todennäköisyys, että jokin pikseli kuuluu kynnysarvoon tai sen alapuoleiseen luokkaan, eli luokkaan 1, voidaan laskea kumulatiivisena summana yksittäisten harmaasävyjen ilmenemistodennäköisyyksien avulla kaavan (2.4.1) avulla, missä p i on kunkin harmaasävyn ilmenemistodennäköisyys [2, s. 743 744]. Vastaavasti jäljelle jääneeseen luokkaan 2 kuuluvien pikselien todennäköisyys voidaan laskea kaavan (2.4.2)

2. Menetelmät 6 avulla. Keskimääräiset harmaasävyt luokille 1 ja 2 voidaan laskea kaavojen (2.4.3) (2.4.4) avulla. Koko kuvan keskimääräinen harmaasävy m G saadaan kaavan 2.2.3 avulla siten, että k on suurin mahdollinen harmaasävy, eli L-1. Tämän avulla voimme laskea luokkien 1 ja 2 välisen varianssin kaavan (2.4.5) mukaan. Otsun metodin tarkoituksena on laskea luokkien väliset varianssit kaikille eri kynnysarvoille ja valita niistä suurimman luokkien välisen varianssin toteuttanut kynnysarvo k. [2, s. 744 745.] Tämän työn tapauksessa ei aina ole aivan selvää, millaisia harmaasävyarvoja tausta ja halutut objektit saavat, kuten kuvasta 6 huomataan, joten kokeilujen jälkeen päädyttiin panttitunnisteen etsinnässä automaattiseen kynnystykseen perustuvaan p-tile kynnystykseen, jossa vähintään tietty prosenttiosuus kuvan pikseleistä saa arvon yksi. Kuvan histogrammin avulla on mahdollista valita sellainen kynnysarvo, että vähintään tietty prosenttiosuus kuvan pikseleistä saa arvokseen ykkösen ja loput nollan. Kaavan 2.4.1 avulla voidaan laskea kumulatiivinen summa harmaasävyarvojen todennäköisyyksistä koko kuvalle valitsemalla k:n arvoksi L-1. Tämän jälkeen valitaan kynnysarviksi se harmaasävy, jonka kohdalla kumulatiivinen summa ylittää halutun prosenttiarvon p.

2. Menetelmät 7 Kuva 6 Esimerkkikuva, johon Otsun metodi ei tehoa, koska halutun objektin lisäksi taustalta löytyy myös vaaleita harmaasävyjä. P-tile kynnystys toimii paremmin kyseiselle kuvalle. Leimaaminen (Eng. labeling) on operaatio, jolla pyritään erottamaan kappaleita toisistaan. Sen tarkoituksena on antaa jokaiselle kappaleen pikselille sama arvo ja kaikille kappaleille eriävä yhtenäinen arvo. Työssä käytetty funktio käy kuvan riveittäin läpi ja merkkaa vierekkäiset kappaleen pikselit samoiksi juoksevalla numeroinnilla. Sen jälkeen se tarkastaa, mitkä eri riveillä olevat eriävät numeroarvot ovat oikeasti samaa kappaletta ja antaa näille kaikille saman kappaleen pikseleille yhtenevän arvon. [4.] Kuvassa 8 on kynnystetty kuva ja vieressä leimattu kuva, jossa leimaamista on korostettu muuttamalla jokainen löydetty yhtenäinen alue omaksi värikseen. Kuva 7 Esimerkki leimaamisesta. Vasemmalla kynnystetty kuva ja oikealla leimaamisen lopputulos. Leimatussa kuvassa jokaista yksittäistä aluetta merkataan eri värillä visu-

2. Menetelmät 8 alisoinnin vuoksi. Oikeasti leimaaminen antaa alueille numeroita alkaen ykkösestä (tausta on nolla) niin pitkälle, kun kappaleita löytyy. Reunojen etsiminen kuvasta on eräs hyvin tärkeä operaatio, kun objekteja yritetään tunnistaa. Raunojen etsimiseen on olemassa useita erilaisia algoritmeja sekä väri, että harmaasävykuville, mutta perusperiaate niissä kaikissa on hyvin samankaltainen. Reunojen etsinnässä kannattaa käyttää hyväksi leimaamisen lopputulosta, jolloin voidaan tarkastella jokaista kappaletta erikseen. Yhtenäisen kappaleen pikselit voidaan asettaa ykkösiksi ja kaikki muut kuvan pikselit nolliksi. Seuraavassa oletetaan kuvien olevan binäärisiä. Aluksi etsitään yksi piste kappaleesta, usein ensimmäinen vastaantuleva ykkönen, kun käydään kuvaa vasemmalta oikealle ylhäältä alkaen rivi kerrallaan. Seuraavaksi käsittelemme kyseisen reunapisteen naapurustoa. Reunan etsinnässä voidaan käyttää joko kahdeksan naapurustoa tai neljän naapurustoa. Neljän naapurustossa tarkastelemme vain kulloisenkin pisteen pääilmansuunnissa viereisiä pisteitä, mutta kahdeksan naapurustossa myös tarkastellaan myös väli-ilmansuuntia, kuten kuvasta 7 nähdään. [2, s. 796 798.] Kuva 8 Reunojen etsimiseen käytetyt osoitinkuviot. Vasemmanpuoleinen osoitinkuvio sopii neljännaapurustolle ja oikeanpuoleinen kahdeksannaapurustolle. Numerot kuvaavat osoittimen jakojäännöksen arvoa. Naapurustoa tarkasteltaessa täytyy tehdä myös päätös siitä, etsitäänkö reunapisteitä myötä- vai vastapäivään. Myötäpäivään mentäessä tarkastelemme aina ensin tulosuuntaan nähden Lännessä tai Lounaassa olevaa pistettä, riippuen naapuruston tarkastelutavasta. Jos tässä pisteessä sijaitsee taustaa eikä kappaletta, tarkastellaan myötäpäivään seuraavana tulevia pisteitä, kunnes löydetään kappaleeseen kuuluva piste. Vastapäivään mentäessä tarkastellaan puolestaan aina ensin tulosuuntaan nähden Idässä tai Kaakossa olevaa pistettä ja aina vastapäivään seuraavaa pistettä, kunnes löydetään kappaleeseen kuuluva reunapiste. [2, s. 796 798.] Kumpaan suuntaan tahansa pyörittäessä aina kun löydämme seuraavan reunapisteen, tarkastelemme sen naapurustoa ja merkkaamme siirtymissuunnan tulosuunnaksi sekä otamme ylös uuden reunapisteen koordinaatit. Samaa toistetaan niin kauan kunnes viimeisin reunapiste on sama kuin toinen reunapiste ja toisiksi viimeinen sama kuin ensimmäinen. Koska kaksi viimeisintä pistettä on samat kuin kaksi ensimmäistä, ne ovat turhia ja jätetään pois lopullisista reunapisteiden koordinaateista. Näin on saavutettu kappaleen reunapisteet. [2, s. 796 798.]

2. Menetelmät 9 Käytännössä tämänkaltainen suuntien tarkastelu voidaan toteuttaa helposti osoittimen avulla. Osoitin on jokin muuttuja, jonka arvoa kasvatetaan aina sen mukaan, löydetäänkö taustaan vai kappaleeseen kuuluva piste. Pyörittäminen onnistuu helposti tarkastelemalla neljän tai kahdeksan jakojäännöstä. Myötäpäivään pyörittäessä aina, kun löydämme kappaleen pisteen, summaamme kuvan 8 osoittimen arvoon yksi tai kolme, käytetyn naapuruston koosta riippuen. Aina, kun löydämme taustaan kuuluvan pisteen, kasvatamme osoitinta vastaavasti kolmella tai seitsemällä. 2.5 Fourier-muunnos Fourier-muunnoksessa dataa kuvataan normaalin aikatason sijaan taajuustasossa. Taajuustasossa on mahdollista toteuttaa hyvin paljon erinäisiä toimenpiteitä datalle. Suurin osa näistä toimenpiteistä on mahdotonta toteuttaa millään järkevällä tavalla aikatasossa. Fourier-muunnoksessa oletetaan, että mikä tahansa jatkuva säännöllinen funktio voidaan esittää siniaaltoisten funktioiden integraalin tai summan avulla ja palauttaa takaisin aikatasoon muuttumattomana. Yhden muuttujan tapauksessa jatkuva-aikainen Fouriermuunnos määritellään kaavalla (2.5.1) jossa on alkuperäinen funktio ja käänteismuunnos kaavalla (2.5.2) jossa F(Y) on Fourier-muunnos [2, s. 205]. Muunnos saadaan muutettua diskreetiksi korvaamalla integraali summalla ja funktio f(y) näytteillä x n. Diskreetille tapaukselle Fourier-muunnos saadaan kaavan (2.5.3) mukaan ja sen käänteismuunnos kaavan (2.5.4) mukaan [2, s. 222]. Useampiulotteiselle datalle kaavat ovat lähes samoja, mutta pääasiassa kaavaan lisätään integraaleja tai summia ja niiden sisään lisää kertoimia. Tietokoneilla Fourier-muunnosten laskentaan käytetty algoritmi on FFT. Eräs Fourier-muunnosten sovellus on Fourier-deskriptorit. Niiden avulla pystytään hyvin kuvaamaan kappaleen ulkomuotoa siten, ettei kappaleen kiertymisellä, kääntymi-

2. Menetelmät 10 sellä, koolla tai sijainnilla ole merkitystä. Käytettäessä Fourier-deskriptoreita kappaleen tunnistamiseen, tarvitaan tieto kappaleen ääriviivojen koordinaateista. Tämän jälkeen muutamme kaksiulotteiset koordinaatit yksiulotteisiksi kaavan (2.5.5) avulla. Kaavassa x(t) ja y(t) ovat koordinaattipareja ja x c ja y c koordinaattiparien keskiarvo eli keskipiste. [5.] Jotta myöhemmin voidaan vertailla erilaisten reunojen Fourier-deskriptoreita keskenään, täytyy kaikista saaduista yksiulotteisista vektoreista r(t) tehdä samanpituisia. Tämä voidaan toteuttaa esimerkiksi jättämällä tasaisin väliajoin näyte vektorista r(t) pois siten, että lopullinen vektori on vaaditun pituinen. Vektorille tehdään Fouriermuunnos kaavan 2.5.3 mukaan. Seuraavaksi saatua Fourier-muunnosta X k täytyy muokata siten, ettei kappaleen kiertymisellä, kääntymisellä, koolla tai sijainnilla ole merkitystä. [5.] Kaavan 2.5.5 muunnos on invariantti kääntymiselle, joten myös sen Fouriermuunnos on sitä. Kääntymisen vaikutus voidaan eliminoida jättämällä X k :n vaihe huomioimatta ja keskittymällä vain X k :n pituuteen. Paikan vaikutuksesta päästään jättämällä ensimmäinen X k :n alkio, niin kutsuttu DC komponentti, pois. Johtuen kaavan 2.5.5 reaalisuudesta X k :n komponenttien pituudet toistuvat puolesta välistä eteenpäin. Näin ollen voimme ottaa käsittelyyn ensimmäisen puolikkaan ilman DC komponenttia. Enää tarvitsee muuttaa jäljellä olevat kertoimet skaalaukselle invariantiksi. [5.] Tämä onnistuu, kun jaetaan jäljellä olevien komponenttien pituudet DC komponentin pituudella kaavan (2.5.6) mukaan. Nyt saadussa vektorissa X ovat halutut Fourier deskriptorit. Koska deskriptoreiden alkupäässä on tieto kappaleen pääpiirteisestä ulkomuodosta ja loppupäässä tieto tarkemmasta kappaleen muodosta, voidaan valita vertailua varten k kerrointa X:n alkupäästä. Vertailua varten täytyy myös olla tiedossa vertailukappale Y ja vertailukappaleen k Fourier-deskriptoria. Y:n ja X:n samankaltaisuuden mittaamiseen voidaan käyttää euklidista etäisyyttä (2.5.7) vektoreiden välillä. [5.]

11 11 3 MENETELMIEN SOVELLUS JA TULOKSET Ensimmäinen tehtävä oli kerätä tyhjiä pulloja, joista voitaisiin ottaa kuvan 9 kaltaisia kuvia. Riittävän erilaisten ja suuren määrän kerääminen osoittautui kuitenkin hankalammaksi kuin oli tarkoitus. Niinpä työssä luovuttiin laajamittaisesta pullojen tunnistamisesta eri luokkiin panttien perusteella ja pyrittiin vain löytämään panttitunniste sekä Fourier-deskriptoreiden avulla luokittelemaan pullo 40 tai 20 sentin arvoiseksi tai pantittomaksi. Suurin osa pulloista oli keskikokoisia 20 sentin arvoisia, isoja 40 sentin arvoisia pulloja ja pantittomia oli vain muutama ja pieniä 10 sentin arvoisia pulloja ei ollenkaan. Kuva 9 Esimerkki kuvatuista pulloista. Työssä oletettiin pulloista otettujen kuvien olevan lähes vakio-olosuhteissa. Etäisyys ja tausta olivat esimerkiksi lähes samanlaiset kaikissa kuvissa. Jokunen kuva oli otettu myös erilaisessa valaistuksessa. Pullonpalautusautomaatti simulaation kannalta tehtiin myös oletus, että pullo oli saatu jollain konstilla oikein päin oikeaan kohtaan, eli panttitunniste osoitti suoraan kameraa kohti, kuten kuvasta 9 nähdään. Kuvien ottamisen jäl-

3. Menetelmien sovellus ja tulokset 12 keen päästiin vihdoinkin itse asiaan, eli panttitunnisteen etsimiseen ja tunnistamiseen MATLAB:n avulla. 3.1 Panttimerkinnän etsiminen Heti hetken testailun jälkeen osoittautui panttitunnisteen etsiminen kohtuullisen hankalaksi. Suurin ongelma oli merkinnän ja taustan värissä sekä niiden läheisyydessä. Joissain pulloissa, kuten kuvan 6 pullossa, panttimerkinnän ylempi nuoli sijaitsi hyvin lähellä taustaa, jonka harmaasävy oli kohtuullisen lähellä nuolen harmaasävyä. Jälkeenpäin ajateltuna olisi ehkä ollut syytä testata eri väriavaruuksia tai niiden jotain yksittäistä komponenttia. Esimerkiksi HSV väriavaruuden [6] värisävy komponentti olisi voinut antaa hiukan erinäköisiä harmaasävykuvia. Isojen harmaasävykuvien kynnystämiseen olisi ollut syytä kokeilla paikallista Otsun kynnystysmenetelmää. Siinä kuva jaetaan pienempiin osiin, joille voidaan erikseen valita kynnysarvo Otsun menetelmällä. Joka tapauksessa pitkällisen yritys ja erehdys menetelmän kautta aikaiseksi saatiin kuitenkin menetelmä, jolla panttitunnisteen etsiminen onnistui kaikille testikuville. Aivan ensiksi RGB-kuville tehtiin kuvan 10 kaltainen harmaasävy muunnos kaavan (3.3.1) avulla, missä R, G ja B tarkoittavat kunkin pikselin punaista, vihreää ja sinistä komponenttia ja I näiden avulla muodostettua harmaasävyarvoa. Kuva 10 Harmaasävykuva kuvan 9 pullosta.

3. Menetelmien sovellus ja tulokset 13 Koska ei tiedetty onko etsitty objekti tummempi vai vaaleampi kuin tausta, tehtiin kaikille kuville kuvan 11 top-hat muunnos ja bottom-hat muunnos. Näin pyrittiin karsimaan kuvista turhia objekteja ja varmistettiin, että panttitunnisteen nuolet ovat taustaa vaaleammat jommassakummassa kuvassa. Kuva 11 Vasemmalla top-hat muunnos ja oikealla bottom-hat muunnos kuvan 10 kuvalle. Kuvasta rajattu näkyviin vain etiketin alue. Kuvasta voidaan huomata, että toisessa kuvista panttitunnisteen nuolet ovat vaaleat tummalla taustalla. Muunnosten jälkeen kuvat kynnystettiin kuvan 12 p-tile menetelmällä. Sopiva prosenttiosuus p löydettiin kokeilemalla erilaisia arvoja. Lopulta kun noin 3,6 prosenttia kuvan pikseleistä kynnystettiin ykköseksi, saatiin kaikista testimateriaalin kuvista haluttu tieto näkyviin. Kuva 12 P-tile kynnystys kuvan 11 kuville prosenttiarvon p ollessa noin 3,6.

3. Menetelmien sovellus ja tulokset 14 Jotta kappaleita saatiin yhdistettyä ja reikiä täytettyä, tehtiin seuraavaksi kappaleille kuvan 13 sulku ja avaus hiukan erilaisin parametrein kyseisessä järjestyksessä. Kuva 13 Kuvan 12 kuville tehty sulku ja avaus, siten että ensin sulku ja sen lopputulokselle heti perään avaus. Tämän jälkeen kuvasta etsittiin kappaleiden reunat. Reunojen löydyttyä valittiin vain kuvan 14 potentiaaliset, eli tarpeeksi suuret reunat (kaikki, joissa on yli 350 koordinaattiparia). Kuva 14 Vihreällä on piirretty saadut potentiaaliset reunat kuvan 13 kuvien päälle. Jotta reunat olisivat vertailukelpoisia, tehtiin kaikista kelpuutetuista reunoista samanpituisia, jättäen pois tasaisin välein koordinaattipareja siten, että niitä oli lopulta 350 kappaletta. Seuraavaksi koordinaattipareista selvitettiin Fourier-deskriptorit kappaleessa 2.5 esitetyin menetelmin. Näin saaduista Fourier-deskriptoreista valittiin 30 ensimmäistä

3. Menetelmien sovellus ja tulokset 15 vertailtaviksi. Kaikkien kuvien kaikkia potentiaalisia reunoja verrattiin referenssireunaan, joka oli aikaisemmin muistiin tallennettu malli panttitunnisteen nuolesta, ja valittiin pienimmän euklidisten etäisyyksien toteuttavat reunat kuvaamaan panttitunnisteen nuolia eli verrattiin löytyykö top-hat muunnoksen vai bottom-hat muunnoksen avulla paremmin nuolia kuvaavat reunat. Näin saatiin jokaiselle kuvalle kaksi kuvan 15 ehdokasta panttitunnisteen nuoliksi. Näiden kahden nuolen keskipisteiden keskipisteen pitäisi siis olla jotakuinkin panttitunnisteen keskipiste. Tässä kohtaa ei huomioitu millään tavalla kuvia, joista ei nuolia kuulunutkaan löytyä, vaan niillekin etsittiin potentiaaliset nuolet. Sillä ei kuitenkaan lopullisen luokittelun kannalta ole väliä. Kuva 15 Kuvan 13 oikeanpuoleisen kuvan päälle on vihreällä piirretty nuoliehdokkaat, sinisillä ympyröillä näiden keskikohdat ja punaisella raksilla potentiaalisen panttitunnisteen keskikohta. Näin on löydetty panttitunnisteen nuolet kuvan 9 pullolle. Joka tapauksessa panttitunnisteiden keskikohdan avulla voidaan valita kuvan 15 kaltaisia alueita määrittämällä vakioarvot keskipisteiden ympäriltä valittavalle alueelle. Vakioarvot toimivat hyvin, koska kuvien panttitunnisteet ovat lähes samankokoisia. Kuva 16 Esimerkkikuvia potentiaalisesta panttitunnisteesta. Kolme ensimmäistä vasemmalta ovat oikeita tunnisteita ja viimeinen on jokin aivan muu. 3.2 Panttimerkinnän tunnistaminen Nyt on saatu siis saatu selville alkuperäisessä harmaasävykuvassa olevat alueet, joista pantin arvon pitäisi löytyä. Haluttiin varmistua myös siitä, että kuvissa numerot ovat

3. Menetelmien sovellus ja tulokset 16 vaaleita ja tausta tumma. Tämän takia tallennettiin myös jokaiselle kuvalle tieto siitä, kummasta bottom-hat muunnoksesta vai top-hat muunnoksesta nuoliehdokkaat löydettiin. Tämän tiedon avulla pystyttiin sanomaan, ovatko nuolet tummemmat vai vaaleammat kuin tausta. Nuolten ollessa tummemmat, otettiin kuvasta negatiivi, eli vähennettiin kuvan pisteiden arvot suurimmasta harmaasävyarvosta eli 255:stä. Näin kuvan värit kääntyvät toisinpäin, kuten huomaamme kuvasta 17. Kuva 17 Vasemmalla on pantti ja oikealla sen negatiivi. Nyt kun on löydetty kuvan 16 kaltaisia kuvia, voidaan käyttää Otsun kynnystysmenetelmää, joka antaa meille kuvan 18 kaltaisia kuvia. Kuva 18 Esimerkki harmaasävykuvasta ja sen Otsun metodilla kynnystetystä versiosta. Kynnystämisen jälkeen käytettiin lähes samoja keinoja pantin tunnistamiseen kuin nuolten etsimiseen, mutta hiukan erilaisin parametrein. Aluksi otettiin sulku ja avaus kyseisessä järjestyksessä, jonka lopputuloksen kaltainen kuva löytyy kuvasta 19. Etsittiin myös kaikki yli 70 koordinaattiparin reunat ja poistimme niistä koordinaattipareja tasaisin välein siten, että lopulta koordinaattipareja oli vain 70 kussakin potentiaalisessa ehdokkaassa. Kuvassa 19 on visualisoitu myös löytyneet reunakandidaatit. Kuva 19 Vasemmalla on esimerkki sulusta ja avauksesta kuvan 18 vasemmanpuoleiselle harmaasävykuvalle ja oikealla potentiaaliset reunat visualisoituna vihreällä värillä. Seuraavaksi laskettiin Fourier-deskriptorit, kuten edellä ja valittiin niistä 10 ensimmäistä vertailtaviksi. Vertailimme kaikkia potentiaalisia reunoja eräistä kuvista poimittuihin kakkosen ja nelosen Fourier-deskriptoreihin. Kunkin kuvan kaikkien reunojen molempien vertailujen tuloksista etsittiin pienin arvo ja sen avulla tehtiin päätös siitä, mihin

3. Menetelmien sovellus ja tulokset 17 kolmesta luokasta pullo kuului. Luokat määriteltiin siten, että ensimmäiseen luokkaan kuuluivat pullot, joiden pantti on 40 senttiä, toiseen luokkaan pullot, joiden pantti on 20 senttiä ja kolmanteen luokkaan pullot, jotka hylätään. Jos arvo oli yli 0,1 merkitsimme pullon kolmanteen luokkaan. Eli kolmannen luokan pulloista ei löydetty asiaankuuluvaa panttimerkintää. Jos taas arvo oli alle 0,1, niin pullo kuului luokkaan yksi tai kaksi, riippuen siitä kumpi vertailu tuotti pienemmän tuloksen. Jos vertailu numeron kaksi Fourier-deskriptoreiden kanssa tuotti paremman tuloksen, pullo kuului luokkaan kaksi, jos taas numeron neljä Fourier-deskriptoreiden kanssa, pullo kuului luokkaan yksi. 3.3 Tulosten vertailu ja arviointi Panttitunnisteen etsiminen ja luokittelu onnistui kaikkien hankaluuksien jälkeen todella hyvin testikuville. Jos kuvia olisi ollut enemmän, ei kaikkien kuvien tunnistaminen ja luokittelu olisi ehkä onnistunut oikein. Tämänhetkisessä koodissa on myös paljon vakioarvoihin perustuvia asioita, kuten reunojen pituuksia ja avauksessa, sulussa bottomhat muunnoksessa ja top-hat muunnoksessa käytettyjen kappaleiden muotoja ja kokoja. Niitä olisi mahdollista suhteuttaa esimerkiksi kuvan kokoon, pullon kokoon kuvassa tai johonkin muuhun vastaavaan, jolloin tunnistus voisi onnistua hiukan erilaisillekin pullojen kuville. Kun tarkoitus on kuitenkin etäisesti jäljitellä pullonpalautusautomaatin toimintaa, vakioarvot eivät välttämättä haittaa, koska myös olosuhteet ovat lähes vakiot. Toisaalta jotkut kuvat olisivat voineet vaatia hiukan erilaisen lähestymistavankin. Luultavasti nuolten etsintä ja varsinkin luokittelu olisi voitu tehdä erilaisin tavoin. Kuten edellä jo mainittiin, kaikki pullot onnistuttiin luokittelemaan oikein. Varsinaisessa luokitteluvaiheessa testattiin myös vertailussa käytettyjen Fourier-deskriptoreiden määrän vaikutusta kuvan 20 panttitunnisteiden luokitustulokseen. Kuva 20 Pulloista irrotetut panttitunnisteet. Lopputulos oli kuitenkin hiukan yllättävä, sillä luokittelua testattiin 50 erilaisella Fourier-desriptoreiden määrällä alkaen ykkösestä ja päättyen 50:een ja vain kahdessa tapauksessa kaikkia pulloja ei luokiteltu oikein. Luokittelussa epäonnistuttiin vain, kun vertailussa käytettiin kuvan 21 yhtä tai kuvan 22 kahta Fourier-deskriptoria. Niiden vastaavat virheluokitteluprosentit olivat 20 ja 8.

3. Menetelmien sovellus ja tulokset 18 Kuva 21 Panttitunnisteiden luokittelu visualisoituna, kun on käytetty yhtä Fourierdeskriptoria vertailussa. Kuvasta nähdään, että viisi tunnistetta on luokiteltu väärin. Kuva 22 Panttitunnisteiden luokittelu visualisoituna, kun on käytetty kahta Fourierdeskriptoria vertailussa. Kuvasta nähdään, että alarivillä olevat kaksi hylättävää kuvaa on luokiteltu väärin. Fourier-deskriptoreiden määrän vaikutuksen vertailu olisi voinut olla mielenkiintoisempaa nuolien etsintä vaiheessa, mutta koska kuvat ovat isoja, eikä niitä esikäsittelyvaiheessa pienennetty, niiden käsittely vie paljon aikaa. Niinpä ajanpuutteen vuoksi kyseinen kokeilu jätettiin tekemättä.

3. Menetelmien sovellus ja tulokset 19 4 YHTEENVETO Digitaalinen kuvankäsittely ja sen myötä myös hahmontunnistus ei ole aina kovin yksinkertaista. Usein uusien algoritmien kehittely täytyykin toteuttaa yrityksen ja erehdyksen kautta. Jo pienillä datan muokkauksilla voidaan saada suuria muutoksia lopputulokseen. Tieteen alana digitaalinen kuvankäsittely kuitenkin kehittyy kovaa vauhtia ja uusia ideoita ja algoritmeja kehitellään kokoajan. Tämän työ osoittaa todeksi jo ennestään tunnetun tosiasian, että Fourier-deskriptorit ovat hyvä tapa kappaleen muodon tunnistamisessa. Täytyy kuitenkin ottaa huomioon, ettei työssä päästy kuunnolliseen laajaan materiaaliin perustuvaan luokitteluun johtuen kuvien vähyydestä, mutta tälle pienelle joukolle kuvia, joka saatiin kasattua, luokittelu työssä esitellyin keinoin onnistui erinomaisesti. Työn pääpaino sijoittui kuitenkin panttitunnisteen etsintään, joka oli hankala tehtävä. Työ olisi luultavasti onnistunut paljon pienemmällä vaivalla, jos teoriaan keinojen takana olisi tutustuttu paremmin jo ennen varsinaista algoritmin muodostamista. Siitä huolimatta panttitunnisteet lopulta löydettiin. Itse panttitunnisteiden luokittelu sen sijaan oli melko yksinkertainen ja toteutus onnistui erinomaisesti. Fourier-deskriptoreiden käyttö oli helppo valinta tunnistamiseen sillä niiden toimintaan oli jo tutustuttu panttitunnisteiden etsimisessä. Tehtävää olisi voitu varmasti lähestyä aivan erilaisin ratkaisukeinoin, mutta koossa olevalle materiaalille valitut menetelmät osoittautuivat hyvin toimiviksi.

20 LÄHTEET [1] Uusien kierrätysmuovipullojen merkinnät [WWW]. Palautuspakkaus Oy. 19.1.2009. [viitattu 25.4.2011]. Saatavissa: http://www.palpa.fi/files/palpafi/ohjeistukset/kmp_merkintaesite.pdf [2] Conzalez, R.C., Woods, R.E. Digital Image Processing. Third Edition. Upper Saddle River, New Jersey 2008, Pearson Education, Inc. 954 p. [3] Sezgin, M., Survey over image thresholding techniques and quantitative performance evaluation. Journal of Electronic Imaging [verkkolehti]. Information Technologies Research Institute, Tübitak Marmara Research Center, Electric-Electronic Engineering Department, Bogazici University.13(2004)1, pp 146 165 [viitattu 25.4.2011]. Saatavissa: http://www.busim.ee.boun.edu.tr/~sankur/sankurfolder/threshold_survey.pdf [4] Haralick, Robert, M., Linda, G., Shapiro, Computer and Robot Vision. Volume I. Addison-Wesley 1992, pp. 28-48. [5] Zhan, D., Lu, G. A Comparative Study on Shape Retrieval Using Fourier Descriptors with Different Shape Signatures [WWW]. Gippsland School of Computing and Information Technology. Australia. Monash University. [viitattu 25.4.2011]. Saatavissa: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.67.2229&rep=rep1&type=pdf [6] Agoston, M.K., Computer Graphics and Geometric Modeling: Implementation and Algorithms. London, Springer 2005. pp. 300 306.