3. 3.1. Tausta Spatiaalinen alue viittaa itse kuvaan, ja kuvanprosessointi kohdistuu tällöin suoraan pikseleihin. Tämä on eri asia kuin muunnosavaruuden yhteydessä edellä. Tässä luvussa tarkastellaan intensiteettimuunnoksia ja spatiaalista suodatusta, jotka operoivat suoraan kuvan yksittäisillä pikseleillä. Spatiaalisen alueen prosessit voidaan kiteyttää muotoon g( x, y) T[ f ( x, y)], jossa f(x,y) on jälleen syötekuva, g(x,y) on tuloskuva ja T on f:n operaattori pisteen (x,y) naapuruston yli. Piste (x,y) oli tässä kuvasta mielivaltaisesti valittu. Operaattori suoritetaan pikseleittäin kuvalle. Kuva 3.1. esittää tavanomaisen käytön, jossa naapurusto on huomattavasti pienempi, pisteeseen (x,y) keskitetty suorakulmio (neliö). 128
Kuva 3.1. Pisteen (x,y) 3 3-naapurusto kuvassa. Naapurustoa siirretään pikseli pikseliltä tuloskuvan laskemiseksi. 129
Kuvan 3.1. prosessissa naapurustoa siirretään origosta lähtien oikealle pikseleittäin ja riveittäin alaspäin. Lasketaan esim. keskiarvoa. Käytettäessä 8-naapurustoa lasketaan naapuruston yhdeksän arvon keskiarvo. Keskiarvo on pikselin uusi arvo. Kuvan reunalla pitää joko jättää laskematta mukaan reunan yli menevät tai korvata nämä paikat jollakin oletus- tai estimaattiarvolla, kuten 0 (yleensä huono valinta) tai lähimmän pikselin arvo. Naapurustosta käytetään useita muitakin nimiä: ikkuna, maski, kerneli tai pohja (template). Tällaista proseduuria kutsutaan yleisesti spatiaaliseksi suodatukseksi. Pienin mahdollinen naapurusto on kokoa 1 1, jolloin kyseessä on seuraava intensiteetti- (myös harmaasävy- tai kuvaus-) muunnosfunktio. 130
s T (r) Tässä s ja r ovat muuttujia, jotka viittaavat g:n ja f:n intensiteettiin missä tahansa kuvan pisteessä. Jos esim. T(r):llä on kuvan 3.2.(a) muoto, muunnoksen soveltaminen f:n jokaiselle pikselille tuottaa tuloskuvalle g suuremman kontrastin kuin alkuperäinen tummentamalla intensiteettitasoja k:n alapuolella ja kirkastamalla tämän yläpuolella. Selvyyden vuoksi yhden arvon r 0 käsittely on erikseen kuvattu. Menetelmää kutsutaan kontrastin venyttämiseksi. Kuvassa 3.2.(b) on ääritapaus, binäärikuvasta. Tämän muodon kuvausta kutsutaan kynnystämisfunktioksi. 131
Kuva 3.2. Intensiteettimuunnosfunktioita. (a) Kontrastinvenyttäminen ja (b) kynnystäminen. 132
Tässä luvussa tarkasteltavat kuvankorostamisen menetelmät riippuvat datasta ja sovelluksesta. Näin ollen niiden pohjana ei ole yleistä teoriaa. Prosessoitaessa kuvaa visuaalista tulkintaa varten katsoja eli käyttäjä on arvioijana määrittämässä tuloksen kelpoisuutta. Konenäön tilanteessa on sitä vastoin helpompaa kvantifioida tekniikoiden tuloksia. Esim. automaattisten merkintunnistusjärjestelmien vertailussa on paras se, joka tuottaa parhaimman tunnistustuloksen. 133
3.2. Intensiteettimuunnosfunktioiden perusmenetelmiä Edellä mainittiin tässä käytettävän yksinkertaisia muunnoksia s=t(r), jotka kuvaavat syötteen eli pikseliarvon r pikseliarvoksi s. Digitaalisia (diskreettejä) arvoja käytettäessä muunnosfunktion T arvot talletetaan tavallisesti valmiiksi laskettuina hakutauluun. Esim. 8- bittisisessä tapauksessa hakutaulussa on 256 alkiota. Kuva 3.3. kuvaa kolme funktioiden perustyyppiä: lineaarinen (negatiivi ja identiteetti), logaritminen (log ja käänteisfunktio) ja potenssi (n:s potenssi ja juuri). Identiteettifunktio on vain täydellisyyden vuoksi mukana. Kuvan negatiivi saadaan intensiteettitasojen [0,L-1] ollessa kyseessä seuraavasti. s=l-1-r 134
Kuva 3.3. Intensiteettimuunnosten perustyypit, kun käyrät on skaalattu sopivasti. 135
Logaritmisen muunnoksen yleinen muoto on s=c log(1+r), jossa c on vakio ja luonnollisesti oletetaan, että r0. Muunnos kuvaa syötteen matalan intensiteetin kapean alueen arvot laajemmaksi tuloksessa ja päinvastoin suurilla syöteintensiteeteillä. Logaritmifunktiolla on tärkeä ominaisuus, että se tiivistää dynaamista aluetta, kun kuvassa esiintyy pikseliarvojen suuria vaihtelevuuksia. Vaikka tämä ei sinänsä ole ongelma laskennalle, näyttölaitteet eivät välttämättä pysty tuottamaan hyvin suuria intensiteettiarvojen vaihteluvälejä. 136
Potenssisääntö eli gamma-muunnokset noudattavat muotoa s cr, jossa c ja ovat positiivisia vakioita. Kuva 3.4. kuvaa käyriä eri :n arvoilla. Pienillä :n arvoilla muunnos kuvaa tummien syötearvojen kapean osan tätä laajemmaksi tulosarvojen väliksi, kun taas vastakohta toimii suurille syötearvoille. Tilannetta voidaan säätää yksinkertaisesti parametrin arvolla. Tekniikkaa käytetään monessa laitteessa. Esim. kuvaputkella (katodisädeputki, CRT) käytettiin tätä nimellä gamma-korjaus intensiteetti-jännite-vasteessa ( noin 1.8-2.5). Arvolla 2.5. kuvaputkinäyttö olisi tarkoitettua tummempi. Kuva 3.5. esittää esimerkin. Tällöin esiprosessoidaan kuva muunnoksella s=r 1/2.5 =r 0.4 ennen, kuin se esitetään näytöllä. Tämä korjaa näyttämään kuvan halutunlaisena (kuva 3.5.(d)). Gamma-muunnoksia käytetään myös kontrastin säätöön. Esimerkkinä kuva 3.6., jossa haalea, pesty alkuperäinen kuva (a) on korjattu. 137
Kuva 3.4. Gamma-muunnos eri :n arvoilla (c=1 kaikissa ja käyrät skaalattu annettuun lukuväliin). 138
a b c d Kuva 3.5. (a) Intensiteettiramppi kuvassa, (b) kuva nähty simuloidulla näytöllä, (c) kun =2.5, gamma-korjattu kuva ja (d) korjattu kuva nähtynä samalla näytöllä. Vertaa osia (a) ja (d). 139
a b c d Kuva 3.6. (a) Ilmakuva, (b)-(d) gamma-muunnetut arvoilla =3, 4 ja 5 (c=1). (NASA) 140
Paloittain lineaariset muunnosfunktiot ovat edeltäviä menetelmiä täydentäviä. Paloittain lineaaristen etu on, että ne ovat muodostettavissa mielivaltaisesti valitun monimutkaisiksi. Heikkoutena on vastaavasti, että niiden määrittely vaatii enemmän käyttäjän panosta. Huono valaistus tai muut syyt saattavat aiheuttaa matalan kontrastin kuvia. Kontrastinvenytys on menettely, jolla laajennetaan intensiteettitasojen aluetta kuvassa. Tätä esittää kuva 3.7.(a). Pisteiden (r 1,s 1 ) ja (r 2,s 2 ) paikat säätävät muunnoksen muotoa. Jos r 1 =s 1 ja r 2 =s 2, muunnos on lineaarinen, joka ei muuta mitenkään intensiteettejä. Jos r 1 =r 2, s 1 =0 ja s 2 =L-1, muunnoksesta tulee kynnysfunktio, joka saa aikaan binäärikuvan. Kuva 3.7.(b) käsittää 8-bittisen matalan kontrastin kuvan, ja kuva 3.7.(c) on tilanne kontrastinvenytyksen jälkeen. 141
a b c d Kuva 3.7. (a) Muunnoksen muoto, (b) matalan kontrastin kuva, (c) kontrastinvenyttämisen jälkeen ja (d) kynnystämisen tulos. 142
Kuvan määrättyjen intensiteettien korostaminen on joskus tarpeen. Prosessia kutsutaan intensiteettitason viipaloinniksi. Tämä voidaan toteuttaa monin tavoin, mutta kaksi päätapaa ovat vallitsevia. Toisessa niistä kaikki kiinnostavan alueen arvot esitetään yhdellä arvolla, kuten valkoinen, ja kaikki muut yhdellä, esim. musta. Saadaan näin binäärikuvia. Toisessa tavassa halutun intensiteetinalueen arvot kirkastetaan tai tummennetaan ja muut jätetään ennalleen. Näitä tapoja esittävät kuva 3.8.(a) ja (b). Kuva 3.9. on lääketieteellinen munuaisalueesta, jossa haluttiin korostaa verisuonia muusta kudoksesta erilleen. 143
Kuva 3.8. (a) Muunnos korostaa intensiteettialuetta [A,B] ja vähentää kaikkia muita alemmalle tasolle. (b) Muunnos korostaa aluetta [A,B] ja jättää muut muuttumattomiksi. 144
Kuva 3.9. (a) Aorttakuva, (b) viipalointimuunnoksen tulos kuvan 3.8.(a) mukaan, kun kiinnostusalueen ylärajana oli harmaasävyjen maksimi, (c) tulos kuvan 3.8.(b) mukaan, kun valittu alue oli asetettu mustaksi, jolloin harmaat vastasivat verisuonia ja munuaisia. 145
Bittitason viipalointi muistuttaa edellistä, mutta siinä korostetaan eri bittien merkitystä koko kuvassa intensiteettiarvojen sijasta. Tarkastellaan 8-bittistä harmaasävykuvaa kuvassa 3.10., jossa pikselien eri (yhden tavun) bitit on esitetty päällekkäisinä tasoina. Kuva 3.11. esittää sovelluksen, jossa bittitasot on erotettu. Havaitaan informaation jakautuvan melko epätasaisesti eri bittitasojen suhteen. Pääasiassa eniten merkitsevät bittitasot sisältävät (visuaalista) informaatiota. Näin voidaan tutkia kuvan rakenteellista sisältöä, mikä on hyödyllistä myös kuvantiivistyksen yhteydessä. Voidaan rekonstruoida alkuperäistä kuvaa kertomalla n:nnen tason pikselit vakiolla 2 n-1, mikä tarkoittaa n:nneksi merkittävimmän bitin muuntamista desimaaliseksi. Kuva 3.12. esittää edellisen kuvan 3.11. rekonstruktioita. 146
Kuva 3.10. 8-bittisen kuvan bittitasoesitys. 147
Kuva 3.11. (a) 8-bittinen harmaasävykuva kokoa 500 1192 pikseliä, (b)-(i) bittitasot 1:stä 8:aan, joissa 1 on vähiten merkitsevä ja 8 eniten merkitsevä. Jokainen bittitaso on binäärikuva. 148
Kuva 3.12. Edellisestä kuvasta rekonstruoidut: mukana vain (a) bittitasot 8 ja 7, (b) bittitasot 8,7 ja 6, (c) bittitasot 8, 7, 6 ja 5. Vertaa kuvaan 3.11.(a). 149
3.3. Histogrammiprosessointi Digitaalisen kuvan histogrammi, jonka intensiteettitasot ovat lukuväliltä [0,L-1], on diskreetti funktio h(r k )=n k, jossa r k on k:s intensiteettiarvo ja n k on intensiteetin r k sisältävien pikselien määrä kuvassa. Normalisoidaan histogrammi jakamalla sen komponentit pikselien määrällä MN kuvassa. Normalisoitu histogrammi on täten p(r k )=n k /MN, kun k=0,1,,l-1. Tätä voidaan pitää intensiteettitason r k esiintymisen todennäköisyyden estimaattina. Kaikkien komponenttien summa on luonnollisesti yhtä kuin 1. Histogrammeja käytetään mm. kuvien korostamiseen, kuten tässä luvussa, mutta muussakin yhteydessä. Histogrammeja voidaan laskea yksinkertaisesti, so. nopeasti, mikä on niiden etu. Kuva 3.13. esittää esimerkin kuvan 3.7. pohjalta. Kuvassa 3.13. esitetään neljä variaatiota, tumma, vaalea, vähäinen kontrasti ja suuri kontrasti. 150
Kuva 3.13. Vasemmassa sarakkeessa neljä siitepölyhiukkasten peruskuvan tyyppiä: tumma, vaalea, vähäinen kontrasti ja suuri kontrasti. Vaaka-akseli kuvaa intensiteettiarvot r k. Pystyakseli vastaa arvoa n k tai samaa normalisoituna n k /MN. Oikean sarakkeen histogrammit vastaavat vasemman sarakkeen kuvia. 151
Nähtiin kuvan 3.13. alimmasta osasta, että suuren kontrastin (hyvä) kuva käsittää histogrammijakauman, joka on leveä ja jokseenkin tasainen. On mahdollista kehittää muunnos, joka saa aikaan automaattisesti tällaisen jakauman syötekuvan histogrammiinformaation pohjalta. Tarkastellaan seuraavaksi menetelmää nimeltä histogrammintasaus. Pohditaan aluksi hivenen jatkuvia intensiteettiarvoja (ennen diskreettejä, joita sovelletaan) kokonaislukuvälillä [0,L-1]. 0 edustaa mustaa ja L-1 valkoista. Hyödynnetään muunnoksia (intensiteettikuvauksia) s=t(r), rl-1, jotka antavat tulosintensiteettitason syötekuvan jokaiselle pikselille arvoltaan r. 152
Oletetaan, että (kuva 3.14.) (1) T(r) on monotonisesti kasvava funktio välillä 0rL-1 ja (2) 0T(rL-1, kun 0rL-1. Käytettäessä käänteiskuvausta sovelletaan ehtoa r=t -1 (s), 0sL-1 (1 ) T(r) on aidosti monotonisesti kasvava funktio välillä 0rL-1. Aidosti monotoninen funktio tarvitaan, jotta käänteiskuvaus on yksikäsitteisesti mahdollinen, ts. voidaan toteuttaa kuvaus, jossa nuolien suunnat kuvassa 3.14.(b) voidaan kääntää vastakkaisiksi. 153
(a) (b) Kuva 3.14. (a) Monotonisesti kasvava funktio, jolloin useita arvoja tasanteelta kuvautuu yhdeksi arvoksi. (b) Aidosti monotoninen funktio, joka on yksikäsitteinen käänteiskuvauksen suunnassa (injektio). 154
Kuvan 3.14.(b) eli aidosti monotoninen funktio on vaatimus, jotta voidaan johtaa ja soveltaa erinäisiä histogrammitekniikoita. Sovellettaessa laskennassa luonnollisesti diskreettejä lukuja pyöristetään kaikki arvot lähimpään kokonaislukuun. Sivuutetaan satunnaismuuttujia ja jatkuvia todennäköisyystiheysfunktioita käyttävä esitys, joka on diskreetin tuloksen pohjana. Diskreetti muunnos on seuraava. s k k k L 1 T ( r ) ( L 1) p ( r ) k r j n MN j0 j0 j, k 0,1,..., L 1 (1) 155
Prosessoitu tuloskuva saadaan kuvaamalla jokainen pikseli yhtälöllä (1) uudeksi pikseliksi, jonka arvo on s k. Muunnosta kutsutaan histogrammintasauksesi tai -linearisoinniksi. Se toteuttaa ehdot (1) ja (2). Tarkastellaan esimerkkiä, jossa on 3-bittinen (L=8) kuva kokoa 64 64 (MN=4096). Tällä on Taulukon 3.1. intensiteetit kokonaislukuväliltä [0,7]. Kuvitteellisen kuvan histogrammiarvot ovat kuvassa 3.15. Tasatut arvot ovat s 0 =1.33, s 1 =3.08, s 2 =4.55, s 3 =5.67, s 4 =6.23, s 5 =6.65, s 6 =6.86 ja s 7 =7.00 (kuva 3.15. (b)). Saadut arvot pyöristetään luvuiksi 1, 3, 5, 6, 6, 7, 7 ja 7. Nämä ovat tasatun histogrammin arvot. Kun on vain kahdeksan eri intensiteettitasoa, monet pikselit saavat samoja arvoja. Määrät lasketaan normalisointia varten (kuva 3.15.(c)). Eri arvoja ollessa vain viisi r 0 kuvautuu arvoksi s 0 =1 jne. Tällä on 790 pikseliä, s 1 :llä 1023, s 2 :llä 850, sitten 656+329=985 ja 245+122+81=448. Kukin näistä viidestä jaetaan pikselien määrällä MN=4096 saaden kuvan 13.5(c) todennäköisyydet. 156
Taulukko 3.1. 3-bittisen kuvan intensiteettiarvot. r k n k p(r k )=n k /MN r 0 =0 790 0.19 r 1 =1 1023 0.25 r 2 =2 850 0.21 r 3 =3 656 0.16 r 4 =4 329 0.08 r 5 =5 245 0.06 r 6 =6 122 0.03 r 7 =7 81 0.02 157
Kuva 3.15. (a) Alkuperäinen histogrammi, (b) muunnosfunktio ja (c) tasattu histogrammi. 158
Käänteismuunnos on r k =T -1 (s k ), k=0,1,,l-1, joka toteuttaa ehdot (1 ) ja (2) vain, jos mikään intensiteettitasoista r k, k=0,1,,l-1, ei puutu syötekuvasta, ts. mikään histogrammin komponenteista ei ole 0. Käänteismmuunnosta ei käytetä histogrammintasauksessa, mutta kyllä täsmäämisessä jatkossa. Kuvassa 3.16. on tehty histogrammintasaus kuvan 3.13. tapauksille. Kolmessa ylimmässä (keskisarake) tulos on selvästi parempi kuin vasemman sarakkeen lähtökuva. Alimmassa muutos on varsin vähäinen, koska alun perin (kuva 3.13) jakauma oli lähes tasainen. Kuva 3.17. esittää käytetyt muunnosfunktiot. 159
Kuva 3.16. Vasen sarake sisältää osat kuvasta 3.13., keskisarake vastaavat histogrammitasauksen jälkeen ja oikea tasauksen jälkeiset histogrammijakaumat. 160
Kuva 3.17. Histogrammitasauksen muunnosfunktiot (1)-(4) vastaten kuvan 3.16. vasemman sarakkeen osia ylhäältä alas. 161
Tasan jakautuneen histogrammin käyttö ei aina ole paras lähestymistapa. Voidaan määritellä jakauman muoto tapauksen mukaan, jolloin kyseessä on histogrammintäsmääminen tai - määritys. Tässäkin käytetään hyväksi kaavaa (1) s. 155. Sivuutetaan menetelmän kuvaus, ja esitetään vain kuva 3.18 havainnollistuksena histogrammintäsmäämisestä sekä histogrammintasauksen ja -täsmäämisen soveltamisesta (kuvat 3.19.-21.). 162
a b c d Kuva 3.18. 3-bittisen kuvan histogrammi, (b) täsmätty histogrammi, (c) edellisestä saatu muunnosfunktio ja (d) histogrammintäsmäämisen tulos. 163
(a) (b) Kuva 3.19. (a) Marsin kuun Foboksen kuva ja (b) tämän histogrammi (NASA). 164
a b c Kuva 3.20. (a) Histogrammintasauksen muunnosfunktio, (b) histogrammitasauksen tulos ja (c) edellisen histogrammi. 165
a c Kuva 3.21. (a) Täsmätty histogrammi, (b) muunnokset, joissa (1) on (a):n muunnos ja (2) tämän käänteismuunnos, (c) käyrän (2) kuvauksen tuottama korostettu kuva ja (d) edellisen histogrammi. b d 166
Edeltävät histogrammiprosessointimenetelmät ovat globaaleja. Niissä kuvan kaikki pikselit prosessoitiin. Toisinaan on tarpeen korostaa suppeiden alueiden yksityiskohtia, joiden pikselien määrä voi olla vähäinen verrattuna koko kuvaan. Globaalien muunnosten muoto ei välttämättä tuo esille lokaalisia ilmiöitä. Muokataan edellisiä menetelmiä lokaalisiksi määrittelemällä naapurusto, jonka keskipistettä siirretään pikseli pikseliltä. Kussakin pisteessä naapuruston pisteiden histogrammi lasketaan ja joko histogrammintasauksen tai -täsmäämisen muunnosfunktio muodostetaan. Muunnosta käytetään kuvaamaan naapuruston keskipisteen pikselin intensiteetti. Sitten proseduuri toistetaan vierekkäisessä pikselissä ja jatketaan eteenpäin. 167
Naapuruston eli ikkunan liikkuessa kuvassa ei kannata päivittää joka askeleella koko naapuruston sisältöä, vaan ainoastaan vaihtaa vanhimpien pikselien sijaan uudet, sillä kerrallaan vaihtuu vain sarakkeellinen tai rivillinen naapuruston alkioista. Asettamalla naapuruston sisältö puskuriin, jonka sisältöä päivitetään kuvatulla tavalla, myös laskentaa voidaan nopeuttaa. Toinen menettely voisi olla käyttää ikkunallisia alueita, jotka eivät mene osittain päällekkäin kuten edeltävässä. Tämä aiheuttaa kuitenkin usein epätasaista jälkeä, joten lienee harvoin sovelias. 168
Kuvassa 3.22. on esimerkki 512 512-kuvasta, joka ensi näkemältä näyttää sisältävän vain viisi mustaa ruutua harmaata taustaa vasten. Kuva on hieman kohinainen, vaikka kohinaa ei näe. Kuva 3.22.(b) esittää globaalin histogrammitasauksen tuloksen. Kuten usein tasaisten, kohinaisten alueiden tilanteessa, globaali tasaus korostaa selvästi kohinaa. Se ei kuitenkaan paljasta juuri mitään neliöistä, kuten lokaali 3 3-ikkunan lokaali tasaus kuvassa 3.22.(c). Syy oli se, että yksityiskohtien intensiteetti oli liian lähellä neliöiden intensiteettiä ja niiden koot olivat liian pieniä verrattuina neliöihin. Kuvasta suoraan laskettavia tilastoarvoja käytetään säädettäessä esim. kontrastia, missä hyödynnetään intensiteetin globaalia keskiarvoa m ja varianssia 2. Samoin näitä sovelletaan lokaalisti tehtäessä kuvassa muutoksia, jotka riippuvat tämän ominaisuuksista. m 1 M 1N 1 1 1 2 1 M N MN x0 y0 f ( x, y) ja MN f ( x, y) m x0 y0 2 169
Kuva 3.22. (a) Alkuperäinen kuva, (b) globaalin histogrammintasauksen tulos ja (c) kohdan (a) kuva lokaalin tasauksen jälkeen, kun käytettiin naapurustoa kooltaan 3 3. 170
3.4. Spatiaalisen suodatuksen perusteet Spatiaalinen suodatus on yksi keskeisimpiä kuvanprosessoinnin menetelmiä. Termi suod[at]in tai filtteri tulee taajuusalueen käytön yhteydestä, jota tarkastellaan myöhemmin ja jossa eri frekvenssikaistoja hylätään (suodatetaan pois) tai päästetään läpi. Käyttämällä spatiaalista suodatusta eli käsittelemällä suoraan kuvadataa eikä tämän taajuuksia saadaan samantapaisia tuloksia. Spatiaaliset suotimet ovat monipuolisempia siinä suhteessa, että niitä voidaan toteuttaa myös epälineaarisina, mikä ei ole taajuusalueella mahdollista. Tämän luvun alussa kuva 3.1. esitti spatiaalisen suodatuksen periaatteen, jonka mukaan siirretään naapurustoa (ikkunaa) yli kuvan pikseleittäin alkaen vasemmasta ylänurkasta. Suodatus laskee uuden pikseliarvon naapuruston keskipikselille jollakin määrätyllä operaatiolla, joka on lineaarinen tai epälineaarinen. 171
Kuva 3.23. esittää lineaarisen spatiaalisen suodatuksen idean 3 3- naapuruston tilanteessa. Pisteen (x,y) uusi arvo saadaan seuraavasti. g( x, y) w( 1, 1) w(0,0) f f ( x 1, y 1) w( 1,0) f ( x 1, y)... ( x, y)... w(1,1) f ( x 1, y 1) Suotimen keskimmäinen kerroin w(0,0) asetetaan pisteeseen (x,y). Maskin koolle m n oletetaan olevan m=2a+1 ja n=2b+1, missä a ja b ovat positiivisia kokonaislukuja. Tämä symmetria takaa suotimelle yleensä parhaat suodatustulokset. Yleisesti suodin on muotoa a g ( x, y) w( s, t) f( xs, yt) sa b tb jossa x ja y muutetaan niin, että jokainen maskin tai suotimen w pikseli käy läpi jokaisen kuvan f pikselin. (2) 172
Kuva 3.23. 3 3-ikkunan (maskin, suotimen tai naapuruston) suodatus. 173
Esitetään aluksi kaksi toisiaan lähellä olevaa käsitettä, korrelaatio ja konvoluutio. Korrelaatio tarkoittaa suotimen siirtämistä kuvan yli täsmälleen, kuten yhtälö (2) edellä esitti. Konvoluutio on muuten aivan sama paitsi, että kertoimien järjestys on käännetty käänteiseksi eli kierretty 180. Selvyyden vuoksi tarkastellaan aluksi yksiulotteista suodatinta. Kuva 3.24.(a) kuvaa 1D-funktion f ja suotimen w. Kuva 3.24.(b) esittää laskennan alkupaikan. Tätä ei voi kuitenkaan laskea ennen, kuin on lisätty alkuun 0:ia (zero padding) saaden kuva 3.24.(c). [Jotta alkuun tai loppuun ei tulisi epäjatkuvuuskohtaa, usein on parempi tapa kopioida alun tai lopun tai reunan kuvassa arvoa, joka tässä sattuu olemaan yhtä kuin 0, mutta yleensä jokin muu. Voidaan myös estimoida reunaa paremminkin estimoimalla reuna-aluetta laajemmin.] Lisänollien tarkoitus on säilyttää tulossignaali yhtä pitkänä kuin alkuperäinen (kuvassa kuvan koko). 174
Kuvasta 3.24.(c) saadaan ensimmäinen tulos, kun x=0, joka on w:n ja f:n tulojen summa. Sitten siirretään ikkunaa yhden luvun verran eteenpäin saaden tuloksen, kun x=1. Kummassakin tulos oli 0. Näin jatketaan viimeiseen tapaukseen (f) asti. Lopuksi jätetään lisättyjen 0:ien kohdalta tulosarvot pois (kohdat (g) ja (h)). Kuvan 3.24. kohdissa (i)-(p) vastaavat toimenpiteet on suoritettu konvoluution yhteydessä. Tämän tuloksena alkioiden järjestys on käänteinen korrelaatioon nähden. Havaittiin, että korrelaatio käänsi kertoimien järjestyksen tuloksessaan verrattuna alkuperäiseen. Konvoluution tärkeä ominaisuus on, että se tuottaa impulssisyötteestä (yksittäinen 1- tai vakioarvo 0-jonossa) suoran kopion tulokseen. Käännettäessä suotimen kertoimet käänteiseen järjestykseen etukäteen saadaan konvoluutio aikaan. 175
Kuva 3.24. 1Dkorrelaatio ja - konvoluutio diskreetti yksikköimpulssi syötteenään. Nämä ovat siirtymäfunktioita. 176
Kuvan eli 2D-tilanteessa konvoluutiota varten tehdään kaksi 180 rotaatiota, yksi kummankin akselin suhteen. Edellisen kuvan käsittelyä laajennetaan 2D-tilanteeseen eli kuvaan kokoa m n kuvassa 3.25. Aluksi lisätään reunan ympäri nollia m-1 riviä ylös ja alas sekä n-1 saraketta vasemmalle ja oikealle (kohta (b)). Tätä lähdetään suodattamaan kuvassa 3.35.(c), jossa on esitetty myös suodatusmaski. Kuvassa 3.25.(d) on korrelaation tulos ja (e) sama leikattuna alkuperäiseen kokoonsa. Tulos oli jälleen kiertynyt 180. Konvoluutiota varten ensin kierretään maski ennen suodatusta. Tulos on esitetty kohdissa (f)-(h). Funktion konvoluutio impulssin kanssa tuottaa funktion kopion impulssin kohdassa kuvaa. Jos maski olisi symmetrinen keskipisteen suhteen, tulos olisi identtinen korrelaation tuloksen kanssa. 177
Kuva 3.25. 2D-suodin diskreettiä yksikköimpulssia varten: keskirivillä on korrelaatio ja alimmalla konvoluutio. 178
179 Jos kuva 3.25 olisi sisältänyt yksittäisen 1:sen sijasta alueen, joka olisi ollut identtinen w:n kanssa, korrelaatiofunktion arvo olisi saanut maksimin ikkunan tullessa ko. alueen keskipisteeseen. Näin korrelaatiota voidaan soveltaa kuvien täsmäämiseen. Esitetään yleisesti vielä korrelaation ja konvoluution kaavat. Jälkimäisen indekseissä vähentäminen vastaa kiertoa. a a s b b t t y s x f t s w y x f y x w ), ( ), ( ), ( ), ( a a s b b t t y s x f t s w y x f y x w ), ( ), ( ), ( ), (
Toisinaan lineaarisen suodatuksen vektoriesitys kirjoitetaan vasteen R muodossa R w1 z1 w2 z2... w z w z w T z, jossa w:t ovat m n-suotimen kertoimia ja z:t ovat kuvan intensiteettiarvoja. Tästä saadaan suoraan korrelaatio ja konvoluutio kääntämällä kertoimien järjestys, kuten edellä. mn mn mn k 1 k k Maskien ei tarvitse aina olla lineaarisia, vaan voidaan hyödyntää epälineaarisiakin, esim. Gaussin funktiota h( x, y) e 2 2 x y 2 2, jossa on keskihajonta (Gaussin jakauman leveyttä määrittävä maskin parametri) ja maskin keskipisteen ja tämän naapuruston koordinaatit x ja y ovat kokonaislukuja. 180
3.5. Spatiaaliset tasoitussuotimet Tasoitussuotimia sovelletaan sekä kuvan sumentamiseen että kohinanpoistoon. Edellinen tarkoittaa pienten yksityiskohtien poistamista kuvasta ja pienten aukkojen yhdistämistä suorissa tai käyrissä ennen laajojen kohteiden irrottamista kuvasta. Jälkimmäinen tarkoittaa häiriöiden eliminointia. Kun kyseessä on yksinkertaista keskiarvon laskemista, näistä suotimista käytetään myös nimeä keskiarvoistussuotimet. Niin ikään käytetään nimeä alipäästösuotimet, koska korkeat taajuudet suodatetaan pois. Satunainen kohina sisältää nimittäin tavallisesti teräviä piikkejä, intensiteetin muutoksia, jotka sisältyvät enemmän tai vähemmän korkeisiin taajuuksiin. Toisaalta myös reunat, jotka ovat kuvien tärkeitä (todellisia kohinaan verrattuna) ominaisuuksia, ovat alttiita sumentumaan suodatuksen vuoksi. Täten suodattimen suunnittelu on tehtävä huolella. 181
1 1 1 1/9 1 1 1 1/16 1 1 1 1 2 1 2 4 2 1 2 1 (a) (b) Kuva 3.26. Kaksi tasoitus- tai keskiarvoistussuodatinta. Edessä oleva kerroin on kertoimien summan käänteisarvo. Kuvassa 3.26. on kaksi 3 3-tasoitussuodatinta. Ensimmäinen sisältää oheisen keskiarvoituksen 9 1 R z i 9 i1 ja toinen käsittää painotetun keskiarvoistuksen. Esitetään kuvan 3.26.(b) 182
suodatin yleisessä muodossa. g( x, y) a sa b tb w( s, t) sa tb yt) Nimittäjä on vakio eli ei riipu x:stä tai y:stä eli kuvasta, joten riittää laskea vain kerran. a b f( xs, w( s, t) Kuvassa 3.26.(b) keskipisteen kerroin oli suurin, ts. sitä painotettiin eniten ja sitten etäisyyteen kääntäen verrattuna liepeitä vähemmän. Tässä ortogonaaliset naapurit olivat lähempänä kuin diagonaaliset, joiden etäisyys keskipisteestä oli 2. Käytännöllisesti katsoen näiden (tai joidenkin muidenkin samankokoisten) maskien tuottamat tulokset eivät eroaisi paljon toisistaan, koska niiden koko eli kertoimien määrä tavanomaiseen kuvaan nähden on varsin pieni. 183
Esimerkkinä katsotaan kuvaa 3.27., jossa on lähtökuvaa (a) keskiarvoistettu neliönmuotoisella maskilla kooltaan m m, m=3, 5, 9, 15 ja 35 pikseliä. Kahden ensimmäisen suodatuksen (m=3 tai 5) ansiosta kuvissa näkyy vähäistä sumentumista, mutta suurin piirtein maskin kokoisiin yksityiskohtiin vaikutus on merkittävämpi, esim. pienin a vasemmalla ja hienorakeinen kohinainen suorakulmio. Toisaalta kohina on hieman vaimentunut ja kirjainten a reunan pykäläisyys on silottunut (ei tosin näkyne ilman suurennuslasia). Kun arvoa m kasvatetaan, kuva sumentuu edelleen. Voimakasta (m=15 tai 35) suodatusta käyttäen voidaan häivyttää pienet kohteet, kuten kuvan pienet mustat neliöt, kaksi ympyrää sekä jokseenkin täydellisesti kohinaiset suorakulmiot. 184
a b Kuva 3.27. (a) Alkuperäinen 500 500-kuva, jota on suodatettu keskiarvoistamalla neliönmuotoisella maskilla kokoa (b) 3 3, (c) 5 5, (d) 9 9, (e) 15 15 ja (f) 35 35 pikseliä. Alarivin kirjainten a koot vaihtelevat 10:stä 24:ään pisteeseen. Suuri a on 60 pistettä. Kohinaiset suorakulmiot ovat kokoa 50 120. c e d f 185
Spatiaalisen keskiarvoistussuodatuksen tärkeä sovellus on sumentaa epäolennaiset yksityiskohdat ja tuoda esiin kiinnostavat. Maskin koko on tällöin keskeinen. Samaa kokoa olevat kohteet saadaan sillä katoamaan taustaan. Esimerkkinä on kuva 3.28. Keskiarvoistuksen jälkeen monesti kuva kynnystetään, ts. säilytetään kuvan pikselien intensiteetit vain niillä, joilla intensiteetti on annettua kynnysarvoa suurempi. Muut häivytetään taustaan. Tässä kynnysarvona oli 25 % sumennetun kuvan 3.28.(b) maksimiintensiteetistä. Kynnystetty tulos on kuvassa 3.28.(c) 186
Kuva 3.28. (a) Alkuperäinen 528 485-kuva, joka on (b) keskiarvoistettu maskilla kokoa 15 15 ja tämä (c) kynnystetty. (NASA) 187
Epälineaaristen suotimien vaste perustuu suodatukseen tulevien pikselien lajitteluun eli järjestämiseen ja maskin keskipikselin korvaamiseen niistä sopivasti valitulla tai lasketulla arvolla. Tunnetuin menetelmä on mediaanisuodin, joka nimensä mukaisesti laskee ikkunallisesta pikseleitä mediaanin korvatakseen tällä ikkunan keskipikselin. Mediaanisuotimet ovat tehokkaita vaimentamaan impulssityyppisen eli suola-pippurisatunnaiskohinan, kun tämä ilmenee valkoisina ja mustina pisteinä kuvassa. Kuva 3.29. vertaa keskiarvoistus- ja mediaanisuodatuksen tuloksia. 188
Kuva 3.29. (a) Alkuperäinen röntgenkuva, joka on (b) keskiarvoistettu ja (c) mediaanisuodatettu ikkunakoon ollessa 3 3. Selvästi jälkimmäinen tuotti paremman tuloksen. 189
3.6. Spatiaaliset terävöityssuotimet Terävöityksen tarkoitus on korostaa kuvan intensiteettimuutoksia. Sovellukset ovat moninaiset lääketieteellisistä kuvista teollisuuteen. Kun keskiarvoistaminen on analogista (numeerisen) integroinnin (summauksen) kanssa, terävöitys vastaa differentiointia (derivointia diskreeteille arvoille). Toimitaan differensseillä (erotuksilla), jotka ovat tavallaan jatkuvan funktion derivaatan osoittajan vastineita. Nimittäjä voidaan mieltää vakioksi, joten sitä ei tarvitse laskennassa ottaa huomioon, ja riittää käyttää pelkkiä differenssejä. Yksiulotteisen funktion ensimmäisen kertaluvun differenssi on seuraava. 190
f f ( x 1) f ( x) Toisen kertaluvun differenssi on puolestaan oheinen. 2 f f ( x 1) 2 f ( x) f ( x 1) Nämä eivät ole suinkaan ainoat tavat approksimoida derivaattoja (derivaattakaavan osoittajaa tarkemmin), vaan on lukuisia muitakin, joissa käytetään näitä useampia termejä. Esitetyt ovat kuitenkin yksinkertaisin tapa. Tällainen differentioija voidaan ymmärtää myös eräänlaisena suotimena. Ensimmäinen differenssi on on yhtä kuin 0 vakiointensiteetin vallitessa, mutta on eri suuri kuin 0 intensiteettikynnyksen tai -rampin (suora eli kulmakerroin vakio) alussa ja -rampin aikana. Toinen differenssi on 0 vakioalueilla ja 0:sta eroava intensiteettikynnyksen ja -rampin alussa ja lopussa sekä on 0 rampin aikana. 191
192 Kuva 3.30. esittää yksiulotteista kuvausta, jossa selaussuora käsittää pisteiden intensiteettiarvot. Kuvanprosessoinnissa yleistetään käsittely luonnollisesti kaksiulotteiseen kuvaan. Tällöin yksiulotteisten derivaattojen sijasta pohjana on kaksiulotteisen funktion osittaisderivaatat x:n ja y:n suhteen. Seuraavassa on Laplacen muoto. Tätä approksimoidaan toisen kertaluvun differensseillä joista saadaan seuraava. (3) 2 2 2 2 2 y f x f f ),, ( 2 1), ( 1), ( ja ), ( 2 ) 1, ( ) 1, ( 2 2 2 2 y x f y x f y x f y f y x f y x f y x f x f ), ( 4 1), ( 1), ( ) 1, ( ) 1, ( ), ( 2 y x f y x f y x f y x f y x f y x f
a b c Kuva 3.30. Yksiulotteisen funktion (a) ensimmäisen ja (c) toisen kertaluvun differenssi sekä (b) intensiteettiarvot. 193
194 Laplace-muotoa käytetään terävöittämään intensiteettiepäjatkuvuuskohtia ja häivyttämään alueita, joissa on vain vähän intensiteetin vaihtelua. Kuvassa 3.31. on neljä erilaista Laplace-maskia. Kohtien (a) ja (b) maskeja on sovellettu kuvassa 3.32. Näiden tapaisia suotimia on useita. Esitetään lopuksi maskien osalta Sobel-operaattoreita kuvassa 3.33. Edelleen kuvassa 3.34. on suoritettu Sobel-suodatus. Nämä perustuvat gradientista muodostettuun itseisarvoon (pituuteen), jota approksimoidaan seuraavasti. y f x f g g f grad f y x ) ( y x y x g g g g y x M 2 2 ), (
a 0 1 0 1 1 1 b 1-4 1 1-8 1 0 1 0 1 1 1 c 0-1 0-1 -1-1 d -1 4-1 -1 8-1 0-1 0-1 -1-1 Kuva 3.31. (a) Kaavan (3) Laplace-suodin, (b) tämän laajennus ja (c) sekä (d) kaksi usein käytettyä Laplace-suodinta. Kerrointen summa on yhtä kuin 0, koska kyseessä on derivaattaoperaattori. 195
a Kuva 3.32. (a) Sumennettu kuva, (b) Laplace-suodatettu ilman skaalausta, (c) skaalauksen kanssa, (d) kuvan 3.31.(a) maskin avulla terävöitetty ja (e) kuvan 3.31.(b) maskin avulla terävöitetty. (NASA) b d c e 196
-1-2 -1 0 0 0-1 0 1-2 0 2 1 2 1-1 0 1 Kuva 3.33. 3 3-Sobel-operaattoreita, joissa ensimmäinen ja kolmas rivi tai sarake approksimoivat osittaisderivaattaa x- tai y-akselin suunnassa. Keskellä olevat 2-painoarvot tasoittavat kuvaa antaessaan enemmän painoa ikkunasivujen keskelle. 197
a b Kuva 3.34. (a) Piilolinssin kuva (huom. reunan epätarkkuudet alhaalla oikealla) ja (b) edellinen Sobel-suodatettuna. 198