Kuvankäsittelytekniikat Kari Pihkala TKK Kari.Pihkala@hut.fi Tiivistelmä Tämä artikkeli käsittelee tietokonenäön tasoa tällä hetkellä. Artikkelissa keskitytään matalan tason tietokonenäköön, kuvankäsittelyyn. Kuvan ymmärtäminen on jätetty toiseen seminaariaiheeseen. Kuvankäsittelytekniikoiden esittelyn jälkeen käydään läpi eräs käytännön toteutus. Lopuksi esitetään alan tämänhetkisiä ongelmia sekä tulevaisuus. 1 JOHDANTO Tämä artikkeli on kirjoitettu Digitaalisen Median Tutkimusseminaaria varten. Seminaarin aiheena oli Stanley Kubrickin ohjaama elokuva "Avaruusseikkailu 2001". Seminaarissa on tarkoituksena verrata nykypäivän tekniikkaa elokuvassa olevaan HAL 9000 tietokoneeseen. Tässä artikkelissa keskitytään tietokonenäköön. Tietokonenäön tutkimus alkoi 1950-luvulla (Jaenicke et al., 1999). Sen juuret ovat tekoälyn tutkimuksessa. Yhtenä alkuperäisistä ajatuksista oli antaa tietokoneelle yhtä hyvä tai parempi näkökyky kuin ihmiselle. Tämä tuli suoraan tekoälyn tarpeista, koska näkökyky on tarpeellinen, jotta voisi oppia ja ymmärtää ympäröivää maailmaa. Näiden yritysten jälkeen tutkimus keskittyi tehdasautomaatioon sekä robotiikkaan. Näissä järjestelmissä tarkasteltava maailma oli tunnettu ja tätä valmista tietoa pystyttiin käyttämään hyväksi kuvia analysoidessa. Näissä järjestelmissä tietokonenäkö oli passiivista. Passiivisessa järjestelmässä kamera on lukittu kuvaamaan kokoajan samaa kohtaa. 1980-luvulla todettiin etteivät passiiviset järjestelmät voineet käsitellä todellisen maailman monimuotoisia kuvia. Tällaista prosessointia varten tarvittiin toisenlainen järjestelmä. Tämän seurauksena syntyivät aktiiviset järjestelmät. Ajatus aktiivisista järjestelmistä syntyi ihmissilmistä, jotka esikäsittelevät kuvan ennen kuin aivot analysoivat sen. Tähän kuuluu muun muassa liikkuvan kohteen seuranta ja näön tarkennus. Näköjärjestelmää täytyy siis kontrolloida aktiivisesti, jotta se olisi tehokas. Aktiiviseen näköjärjestelmään kuuluu osana kameran liikuttaminen, niin että järjestelmä voi automaattisesti valita parhaan näkökulman katselukohteeseen. Jotta tietokonenäön käsittely olisi helpompaa, jaetaan se usein kahteen osaan, alemman ja ylemmän tason prosessointiin (Sonka et al., 1995). Tämä artikkeli perehtyy erityisesti 1
matalan tason kuvankäsittelyyn. Ylemmän tason prosessointi on jätetty toiseen seminaariaiheeseen. Perusperiaatteet kuvan esikäsittelyssä eivät ole muuttuneet viime vuosina. Luvuissa 2 ja 3 käydään läpi kuvan syöttöä ja perusoperaatioita (Saarelma, 1997). Luvussa 4 käydään läpi segmentointia ja hahmontunnistusta, ja luvussa 5 kolmiulotteista näköä ja liikettä (Sonka et al., 1995). Luvussa 6 käydään läpi esimerkki tietokonenäön toteutuksesta (Scassellati, 1998). Lopuksi verrataan nykytekniikkaa elokuvan HAL 9000 tietokoneeseen ja arvioidaan tulevaisuutta. 2 KUVAN SYÖTTÖ Tietokone näkee yleensä katsomalla maailmaa kameralla. Eri tarkoituksiin on rakennettu erilaisia kameroita. Kameran ei tarvitse välttämättä nähdä vain näkyvää valoa. Jotkin kamerat voivat nähdä infrapunaa, jotkin ultraäänen avulla. Saarelma (1997) on käynyt läpi kuvansyöttölaitteita, digitointia ja kuvankäsittelyä, joita käsitellään tässä ja seuraavassa luvussa. 2.1 Tyypillisimmät kamerat Tyypillisimpiä kuvansyöttölaitteita ovat putkikamerat ja CCD-kamerat. Kuvassa 1 on hahmoteltu putkikameran rakennetta. Putkikameroissa elektronisuihku skannaa valolle herkkää pintaa, joka aiheuttaa sähkövirran. Tämä sähkövirta tulee ulos analogisena videosignaalina. Jotta tietokone pystyisi käsittelemään tätä videosignaalia, on se muunnettava digitaaliseen muotoon, usein erillisellä laitteella. Varsinkin nykyään käytetään paljon kevyitä CCD-kameroita, joista voi saada suoraan digitaalisen signaalin kameroihin sisään rakennetun digitoijan vuoksi. Näin säästytään erilliseltä videodigitoijalta. Kamera toimii seuraavasti: Kamerassa olevat valolle herkät elementit toimivat kondensaattoreina, jotka reagoivat ympäristön valaistuksen intensiteettiin keräämällä valaistuksen tasoa vastaavan varauksen. Varauksen luennan ja digitoinnin jälkeen elementit nollataan, jolloin valaistus alkaa kasvattaa uutta varausta. Eräs CCD-kameran rakenne on esitetty kuvassa 2. suihku Kuva 1: Putkikameran rakenne. videosignaali 2
R G B R G G B R G B B R G B R R G B R G videosignaali Kuva 2: CCD-kameran rakenne. 2.2 Kuvan digitointi Analoginen videosignaali täytyy muuntaa digitaaliseen muotoon, jotta tietokone pystyy käsittelemään sitä. Tämä tapahtuu digitoinnilla, joka koostuu näytteenotosta ja kvantisoinnista kuvan 3 osoittamalla tavalla. Näytteenotossa analogisesta signaalista otetaan tietyn ajan välein näytteitä, jolloin jatkuva signaali muuttuu diskreetiksi. Tämä diskreetti signaali, joka on vielä analoginen, kvantisoidaan pyöristämällä sen arvo lähimpään esivalittuun arvoon. (a) (b) (c) Kuva 3: Signaalin digitointi: (a) Analoginen jatkuva signaali, (b) näytteistetty signaali, (c) kvantisoitu signaali. 3 KUVAN ESIKÄSITTELY Kun kuva on siirretty digitaalisessa muodossa tietokoneeseen, täytyy sitä esikäsitellä, jotta kuvassa olevat virheet korjataan ja sitä olisi helpompi käsitellä. Tämä voi tapahtua pisteoperaatioilla, suodatusoperaatioilla, geometrisilla operaatioilla tai globaaleilla operaatioilla. Nämä ovat kuvankäsittelyohjelmistoissa yleisesti löytyviä ominaisuuksia. 3.1 Pisteoperaatiot Pisteoperaatiolla kuvan kirkkautta ja kontrastia voidaan muuttaa kaavan (1) mukaan. g(i,j) = a f(i,j) + b, (1) jossa g viittaa käsiteltyyn kuvaan, f viittaa alkuperäiseen kuvaan, i ja j määrittelevät laskettavan pisteen koordinaatit, a kontrastin ja b kokonaistummuuden. 3
3.2 Suodatusoperaatiot Kuvaa suodatettaessa voidaan kuvalle tehdä monenlaisia operaatioita, esimerkiksi pehmentää, korostaa tai hakea reunoja. Suodatuksessa on kyse matemaattisesta operaatiosta, jossa lasketaan alkuperäisen kuvan ja suodatinmatriisin konvoluutio. Esimerkkejä suodatuksesta on kuvassa 4. (a) (b) (c) (d) Kuva 4: Suodatus: (a) Alkuperäinen kuva, (b) pehmennetty kuva, (c) korostettu kuva, (d) reunat tunnistettu. 3.3 Geometriset operaatiot Kuvaa voidaan muokata myös geometrisillä operaatioilla, jotka venyttävät, supistavat tai kääntävät kuvaa. Tällainen operaatio tarvitsee tehdä, jos kameran linssi vääristää kuvaa. Tämä operaatio koostuu kahdesta vaiheesta, spatiaalimuunnoksesta, joka järjestää kuvan pisteet uudelleen ja harmaatasojen interpoloinnista, jolla uudelleenjärjestetystä kuvasta tehdään tummuuden ja värin suhteen jatkuva. Spatiaalimuunnos voidaan esittää kaavoilla (2) ja (3). x = r(x, y) (2) y = s(x, y), (3) jossa x ja y ovat kuvapisteen vanhat koordinaatit, x ja y kuvapisteen uudet koordinaatit ja funktiot r(x, y) ja s(x, y) ovat geometrisia kuvauksia alkuperäisen ja uuden kuvan välillä. Tästä tehdään tummuusinterpolaatio helpoiten vierekkäisten pisteiden välisenä nollannen kertaluvun interpolaationa. Tämä tosin usein tuottaa ylimääräisiä viivoja kuvaan. Parempi tulos saadaan bilineaarisella interpolaatiolla kaavan (4) mukaan (Saarelma, 1997). Näin kuvasta, jolle on tehty spatiaalimuunnos, saadaan pehmeämpi. Esimerkiksi suurennetuista pisteistä tulee helposti laatikkomaisia. Interpoloimalla kuvasta saadaan laatikkomaisuus pois. v(x, y ) = ax + by + cx y + d, (4) jossa x ja y ovat kaavasta (3) saadut uudet koordinaatit, ja a, b, c ja d ovat kertoimia, v(x, y) on pisteen uusi tummuus. 4
3.4 Globaalit operaatiot Globaalissa operaatiossa yhteen tuloskuvan pisteeseen vaikuttaa alkuperäisen kuvan kaikki pisteet. Tyypillinen globaali operaatio on diskreetti Fourier-muunnos. Sitä voidaan käyttää moniin eri tarkoituksiin, kuten kuvan korjaukseen, korostukseen, koodaukseen ja kuvatiedon tiivistykseen. Fourier-muunnoksessa kuvan komponentit on esitetty taajuuden mukaan järjestettyinä. Aivan kuten äänestä voidaan tehdä taajuusanalyysi, voidaan se tehdä kuvallekin. Fourier-muunnos voidaan esittää kaavalla 1 F( h, i) = n n 1 n 1 k = 0 l= 0 f ( k, l) e j2π ( kh+ li) / n missä f(k, l) on alkuperäinen kuva, F(h, i) saatu Fourier-muunnos, n on näytteiden määrä eli kuvan koko, 0 < h < n ja 0 < i < n., (5) 4 SEGMENTOINTI JA HAHMONTUNNISTUS Segmentoinnin päätavoite on jakaa kuva paloihin, jotka vastaavat kuvassa oikeasti olevia kohteita (Sonka et al., 1995). Segmentointi voidaan suorittaa täydellisesti, jolloin kuvassa olevat kohteet on jaoteltu täydellisesti oikein. Tämä kuitenkin usein vaatii myös ylemmän tason prosessointia. Kuva voidaan myös segmentoida osittain, jolloin palat eivät välttämättä vastaa täysin kuvassa oikeasti olevia kohteita. Tämä osittaissegmentointi jakaa kuvan paloihin kuva-alueiden ominaisuuksien perusteella, kuten kirkkauden, värin tai heijastuskyvyn mukaan. Usein segmentoinnin tulos on kaavio, joka kuvaa palaset ja niiden suhteet. Näin saatua segmentoitua kuvaa käytetään usein syötteenä ylemmän tason prosessoinnille. Segmentointitavat voidaan jakaa kolmeen ryhmään, globaaleihin metodeihin, reunapohjaisiin metodeihin ja aluepohjaisiin metodeihin. 4.1 Globaalit metodit Yksinkertaisin segmentointi saadaan porrastamalla kuva. Tällöin kuva jaetaan paloihin suoraan kirkkauden, värin tai jonkin muun ominaisuuden mukaan. Kuvassa 6 on kuva jaettu osiin kirkkauden mukaan. Tällöin kuvassa olevat kappaleet tulevat selvästi esille, ja ylemmän tason prosessien on helpompi tunnistaa ne. (a) (b) Kuva 6: Kuvan segmentointi kirkkauden porrastuksella: (a) Alkuperäinen kuva, (b) porrastettu kuva. 5
4.2 Reunapohjaiset metodit Reunapohjaiset metodit käsittelevät reunantunnistuksella esikäsiteltyä kuvaa. Niiden tarkoituksena on löytää palojen väliset reunat. Jälleen yksinkertaisin metodi on porrastus. Siinä kuva, josta on reunat tuotu esiin, porrastetaan esimerkiksi kirkkauden mukaan. Kuvassa 7 on esimerkki tästä. On myös kehitetty monia muitakin reunapohjaisia metodeja, joissa esimerkiksi yhdistetään katkenneita reunoja tai haetaan piilossa olevia reunoja. (a) (b) (c) Kuva 7: Kuvan reunojen segmentointi: (a) Alkuperäinen kuva, (b) reunat suodatettu kuva, (c) porrastettu kuva. 4.3 Aluepohjaiset metodit Edellinen metodi jakoi kuvan paloihin etsimällä reunoja. Aluepohjaisissa metodeissa kuva jaetaan suoraan paloihin. Tässä metodissa kuva-alueet jaetaan paloihin niiden ominaisuuksien mukaan, kuten kirkkauden tai värin perusteella. Erona globaaliin porrastukseen on se, ettei kuvasta aina luokitella samaa kirkkautta samaksi palaseksi. Sen sijaan kuvasta valitaan piste, jota ei ole vielä luokiteltu, ja sitä lähdetään kasvattamaan isommaksi alueeksi. Aluetta kasvatetaan niihin pisteisiin, joilla saman kaltaiset ominaisuudet. Näin kaksi erillistä yhtä kirkasta aluetta ei luokitella yhdeksi ja samaksi palaksi, vaan kahdeksi eri palaksi. Kuva 8 osoittaa eron kuvaan 6. Tässä kolme erillistä kohdetta on luokiteltu eri paloiksi, kuten kuuluukin. (a) (b) Kuva 8: Kuvan segmentointi alueenkasvatuksella: (a) Alkuperäinen kuva, (b) kolmeen palaan segmentoitu kuva. 4.4 Hahmontunnistus Kun esikäsitellystä kuvasta lähdetään tunnistamaan erilaisia esineitä, voidaan käyttää useita menetelmiä. Näitä ovat statistiset tunnistusmenetelmät, neuroverkkomenetelmät ja 6
esineen syntaktiset tunnistusmenetelmät. Statistisissa tunnistusmenetelmissä kappaleen ulkonäkö luokitellaan erilaisin ominaisuuksin ja kappale tunnistetaan vertailemalla näitä ominaisuuksia tallennettuihin vertailutietoihin. Neuroverkot ovat statistisien menetelmien tapaisia menetelmiä, laajennettuna muun muassa itseoppimisella. Syntaktisessa tunnistuksessa kappale on jaettu primitiiveihin ja näiden välisiin suhteisiin, esimerkiksi pallo neliön sisällä. Tämän jälkeen tätä syntaksista kuvausta verrataan muistissa oleviin kuvauksiin ja kappale tunnistetaan kun vastaava löytyy. 5 KOLMIULOTTEISUUS JA LIIKE Tähän asti on käsitelty ainoastaan kaksiulotteisia kuvia, mutta jos halutaan päästä lähemmäksi ihmisen tapaa käsitellä kuvia, on käsiteltävä kolmiulotteisia kuvia ja analysoitava liikettä. Näin koneen on myös helpompi analysoida kuvassa olevien kohteiden muotoja ja ominaisuuksia. Varsinkin robotit, joiden täytyy liikkua jossain tilassa tai nostaa jokin kappale, tarvitsevat kolmiulotteista näköä. 5.1 Kolmiulotteinen näkö Kolmiulotteisen kuvan ottoon tarvitaan kaksi kameraa, kuvan 9 osoittamalla tavalla. Ne on suunnattu johonkin tiettyyn kohteeseen, mutta eri pisteistä. Näin kamerat näkevät hieman eri kuvat. Kuvassa 10 on esimerkki kahden vierekkäin olevan kameran näkemistä kuvista. Kuva 9: Kaksi kameraa ja niiden suuntaus samaan kohteeseen. (a) (b) Kuva 10: Kahden kameran näkemät hieman erilaiset kuvat: (a) vasen kamera, (b) oikea kamera. 7
Kahdesta hieman erilaisesta kuvasta pystyy päättelemään kohteen kolmiulotteisen muodon helpommin kuin yhdestä kuvasta. Myös kohteen etäisyyden, koon ja nopeuden arviointi on huomattavasti helpompaa. Tietokoneella näitä kahta kuvaa käsiteltäessä tulee ongelmaksi, miten kone ymmärtää näissä erilaisissa kuvissa olevat kohteet yhdeksi ja samaksi kohteeksi. Toisessa kuvassa saattaa jopa näkyä sellaisia asioita, joita toisessa kuvassa ei näy ollenkaan. Tähän on kehitetty erilaisia algoritmeja. Yksi näistä on PMF-algoritmi. Siinä käytetään kolmea sääntöä. 1. Koska kamerat (kuten ihmisen silmät) ovat samalla korkeudella, on eri kuvissa olevat kappaleet myös samalla korkeudella. Ainoastaan kuvien vaakakoordinaatit ovat muuttuneet. Tämä muuttaa ongelman kaksiulotteisesta yksiulotteiseksi. 2. Yhtä vasemman kuvan pistettä ei voi vastata kuin enintään yksi oikean kuvan piste. Vain harvoissa tapauksissa yhtä pistettä voi vastata monta pistettä, tämä tapahtuu jos kuution seinämä näkyy viivana toiselle kameralle ja kapeasti toiselle. 3. Kolmiulotteisessa maailmassa kahden lähekkäin olevan pisteen tulee olla lähekkäin myös vasemmassa ja oikeassa kuvassa. Tämän lisäksi voidaan erilaisia visuaalisia vinkkejä käyttää hyväksi kohteen tunnistamisessa. Näitä ovat muodon tunnistus varjoista ja heijastuksista, liikkeestä ja pinnan kuvioista. Ihminen on erittäin harjaantunut tunnistamaan kohteita näkemästään kuvasta. Tässä auttaa ihmisen tieto ympärillä olevista kappaleista. Tiellä voidaan olettaa olevan autoja, ilmassa lintuja ja hyllyssä kirjoja. Sen sijaan lentävän auton tunnistaminen olisi varmasti vaikeampaa ihmiselle, joka ei osaa odottaa sitä. 5.2 Liikkeen tunnistus Liikkeentunnistusmenetelmät voidaan jakaa kolmeen ryhmään. Yksinkertaisin on minkä tahansa liikkeen havaitseminen. Tätä käytetään esimerkiksi murtohälyttimissä. Tähän tarkoitukseen riittää yksi paikallaan oleva kamera. Toisessa ryhmässä havaitaan liike sekä sen paikka. Tässä voi kamera olla paikallaan tai liikkeessä. Usein myös halutaan tunnistaa liikkuva kohde, havaita sen kulkusuunta sekä ennustaa sen suunta tulevaisuudessa. Yksi tapa tunnistaa liikkuva kappale on vähentää peräkkäiset kuvat toisistaan. Tällöin paikallaan olevat kohdat antavat tulokseksi nolla ja liikkuva kohde nollasta poikkeavan arvon. Tästä voidaan johtaa muun muassa liikkeen suunnan tunnistus, loittonemisen, lähenemisen ja kappaleen pyörimisen tunnistus. Kolmannessa ryhmässä selvitetään kohteen kolmiulotteista muotoa sen tai kameran liikkeen perusteella. Tämä liittyy läheisesti luvun 5.1. hahmontunnistukseen. 6 NÄKEVÄ IHMISROBOTTI COG Massachusetts Institute of Technologyn (MIT) Artificial Intelligence Laboratory on kehittänyt ihmisen ja eläimien kaltaisia robotteja, joilla on näkökyky. Seuraavassa 8
käydään läpi yhden robotin näkötekniikka, joka on esitetty Scassellatin (1998) artikkelissa. MIT:n laboratoriossa on kehitetty ihmismäinen robotti nimeltä Cog. Tämän projektin tarkoituksena on ollut rakentaa ihmisen ylävartaloa muistuttava robotti. Kyseinen robotti on rakennettu, jotta voitaisiin tutkia tarvitseeko ihmismäinen älykkyys ihmismäistä vuorovaikutusta ympäristön kanssa. Cog onkin ihmismäinen, sillä on kaksi kättä sekä pää. Cogissa on mallinnettu ihmisen näköaistia sekä motoriikkaa nykytekniikalla. Tämä tarkoittaa myös stereonäköä. Cogilla on aktiivinen näköjärjestelmä, joten se pystyy liikuttamaan päätään ja silmiään. Ihmissilmä näkee laajan alueen epätarkasti ja suppean alueen erittäin tarkasti. Tämä johtuu silmän retinassa olevien reseptorien, tappien ja sauvojen, erilaisista jakaumista. Laaja näkökenttä on tarpeen, jotta voisi saada hyvän käsityksen ympäristöstä ja suppea tarkka alue (fovea) tarvitaan kohteiden tarkkaan tutkiskeluun. Cogissa on yritetty saavuttaa sama. Tähän tarkoitukseen olisi tarvittu kamera, jossa on laaja kuvakulma, mutta tarkka keskikohta. Tällaisia kameroita on kehitetty koeasteelle, joko muuttuvalla reseptoritiheydellä tai keskikohtaa suurentavan linssin avulla. Nämä kamerat ovat vielä kalliita ja epäluotettavia, joten Cogiin on valittu kaksi tavallista kameraa yhtä silmää kohti. Toinen ottaa laajakulmakuvaa ja toinen tarkkaa kohdistettua kuvaa. Tämän lisäksi Cogissa on kopioitu ihmissilmän motoriikkaa. Cogin silmät pystyvät samoihin liikkeisiin kuin ihmissilmät. Kumpikin silmä voi liikkua ylös tai alas yhtäaikaa tai vaakatasossa toisistaan riippumattomasti. Kameroista kuva on syötetty tietokoneeseen, joka koostuu useasta signaaliprosessorista. Nämä prosessorit on yhdistetty toisiinsa 40 megabitin rinnakkaisverkolla. Tämä mahdollistaa reaaliaikaisen kuvan siirron prosessorien välillä. Pentium Pro -prosessori ohjaa näitä signaaliprosessoreja. Tällä kokoonpanolla on toteutettu erilaisia testejä. Signaaliprosessorien helppo ohjelmointi auttaa toteuttamaan erilaisia sovelluksia. Yksi näistä oli liikkuvan kohteen seuraaminen. Tällöin saatu kamerakuva on tallennettu kolmen kuvapuskurin rinkiin. Yksi pitää tämänhetkistä kuvaa, seuraava puskuri edellistä kuvaa ja kolmas sitä edellistä kuvaa. Kaksi viimeisintä kuvaa on vähennetty toisistaan, jolloin saadaan selville kohdat, jotka ovat muuttuneet, eli tunnistetaan liike. Tämä erotuskuva on sitten segmentoitu, jotta saataisiin selville suurin alue, jossa on tapahtunut liikettä. Tätä aluetta seurataan kameralla suuntaamalla se liikkuneeseen kohteeseen. 7 ONGELMAT JA TULEVAISUUS Schalkoff (1989) on esittänyt kuvankäsittelyyn liittyviä ongelmia. Suurimmat puutteet nykyisissä järjestelmissä lienevät muistin ja prosessointinopeuden vähyys. Prosessointinopeutta pystytään nostamaan rinnakkaisprosessoinnilla tai prosessoreilla, jotka käsittelevät yhden käskyn aikana montaa muistia (SIMD) tai monta käskyä sekä muistipaikkaa yhtäaikaa (MIMD). Myös täysin rinnakkaisesti prosessoivilla neuroverkoilla voisi nostaa prosessointitehoa. Tällainen prosessointi muistuttaa ihmisen aivojen toimintaa. 9
Tulevaisuudessa tietokoneiden muistikapasiteetti sekä suorituskyky nousee. Mooren lain (1965) mukaan elementtien lukumäärä mikropiirissä tuplaantuu joka 18 kuukausi. Tämän perusteella voidaan ennustaa että tietokoneiden tiedonkäsittelykapasiteetti tulee kasvamaan niin, että ihmisen näköä vastaava tietokonenäkö on mahdollista rakentaa tulevaisuudessa. Tavoitteena on kuitenkin aluksi reaaliaikainen stereonäkö sekä liikkeen seuranta. Nykyiset järjestelmät ovat usein tiettyyn tarkoitukseen rakennettuja järjestelmiä, joiden tuloksia on hankala yleistää. Tämän takia on hankalaa ennustaa, milloin ihmismäinen yleisnäkö pystytään rakentamaan. Tosin jos katsotaan mitä viimeisen 20 vuoden aikana alalla on tapahtunut, on muutos valtava. Sama kehitys tulee varmasti jatkumaan seuraavien vuosien aikana. Kuvankäsittely vaatii paljon prosessointitehoa, varsinkin suurien tarkkojen kuvien käsittely. Tällä hetkellä pystytään käsittelemään reaaliajassa televisiokuvan laatuista kuvaa. Jos tämän kuvan tarkkuus kaksinkertaistetaan, kasvaa prosessoinnin tarve helposti nelinkertaiseksi tai suuremmaksi riippuen käsittelytekniikasta. Voidaan siis ajatella, ettei tietokoneessa ole koskaan tarpeeksi prosessointitehoa, koska käsiteltävää kuvaa voidaan aina tarkentaa tai suurentaa. Tosin käytännön peruskuvankäsittelyongelmien ratkaisu on jo nyt mahdollista. Myöskään kuvankäsittelyssä käytettävien algoritmien optimointi ei ole mahdollista, sillä kuvan pisteet on aina käytävä piste pisteeltä läpi ja algoritmit ovat jo yksinkertaisia. 8 JOHTOPÄÄTÖKSET Tietokonenäkö ei ole vielä ihmissilmän tasolla. Yksinkertainen hahmontunnistus sekä raakakuvan käsittely on nyt jo mahdollista reaaliajassa rinnakkaisprosessorijärjestelmillä. Aiemmin tietokonenäöllä oli todellista käyttöä vain tehtaassa tuotannon valvojana. Nykyään kehitetään jo aktiivisia näköjärjestelmiä, jotka kopioivat silmän liikkeitä ja kuvankäsittelyä. Se, onko nykyään jo päästy HAL 9000-koneen tasolle, on hankala sanoa. HAL omisti vain yksittäisiä silmiä ripoteltuna eri paikkoihin avaruusaluksessa. Näytti siltä että kyseessä oli vain yksittäisiä kameroita, ei ollenkaan stereonäköä. Tosin on hankala sanoa mitä yksittäisen punahehkuisen linssin takana on kyseessähän voi olla vaikka kärpäsen silmää matkiva monikennorakenne. Jos oletetaan, ettei HALilla tosiaankaan ollut stereonäköä, ollaan nykyään paljon pidemmällä tässä suhteessa. Varsinkin kolmiulotteisten kappaleiden hahmottaminen olisi yhdellä silmällä erittäin hankalaa. Tosin jos HALilla on ihmismäinen näkö- ja ajattelukyky, ei yksisilmäisyydestä sinänsä välttämättä ole haittaa. Pystyväthän yksisilmäiset ihmisetkin näkemään tarpeeksi hyvin ymmärtääkseen maailmaa. Tietokonenäkö on erittäin laaja käsite ja se ei rajoitu pelkästään ihmisen näkemän valon näkemiseen. Myös käyttötarkoitukset ovat moninaisia. Standardiksi tietokonenäkö on muotoutumassa teollisuudessa, jossa tarvitsee tarkastaa tuotteen laatu. Sen sijaan "älyllisestä" näkemisestä ollaan vielä kaukana. 10
LÄHDELUETTELO Jaenicke A., Siddharth K., Smith J. 1999. Computer Vision and Photogrammetry. [viitattu 28.04.2001 ] <URL:http://www-ics.ee.ic.ac.uk/surp99/report/ahj198/historyBody.html>. Moore, G. E. 1965. Cramming more components onto integrated circuits. Electronics, Vol. 38, Nro 8. 4 s. Saarelma H. 1997. Kuvan- ja tekstinkäsittelytekniikka. Helsinki, Yleisjäljennös Oy. 172 s. Scassellati, B. 1998. A Binocular, Foveated Active Vision System. Technical Report 1628, MIT Artificial Intelligence Lab Memo. 10 s. Schalkoff, R. J. 1989. Digital Image Processing and Computer Vision. New York: Wiley. 489 s. Sonka, M. Hlavac, V. ja Boyle R. 1995. Image Processing, Analysis and Machine Vision. 2nd ed. Pacific Grove (CA) PWS Publishing, 770 s. 11