Palkittavat Matlab harjoitukset
ps. jos Matlab ei hyväksy kaikkia kuvia, muuta ne esimerkiksi jpg muotoon.
- Tutustu luku- ja piirtofunktioihin imwrite ja imread. Tee funktio, joka lukee kuvan tiedostosta ja näyttää sen ikkunassa, 2p, b. tulosta kuva toiseen ikkunaan? 2p
- Tutustu Matlab ohjelmiston help -> Toolboxes -> Image Processing. Mitä tarkoittaa kuvan rekisteröinti (Image Registration)? 3p jos saat hyvän selityksen wikiin. Esim.
- Mitä tarkoittaa morphologia ja tässä yhtydessä strukturoiva elementti? 3p jos saat hyvän selityksen wikiin.morho
- Mitä tarkoittaa Segmentation. 3p jos saat hyvän selityksen wikiin.
- Mitä tarkoittaa termi Image Deblurring? 3p jos saat hyvän selityksen wikiin.
- Mitä tarkoittaa ROI based Processing? 3p jos saat hyvän selityksen wikiin.
- Mitä tarkoittaa Spatial Image Transformation? 3p jos saat hyvän selityksen wikiin.
- Mitä muita kuvatyyppejä on olemassa kuin RGB? 1...n p
- Mitkä ovat Matlabin kuvatyypit ja toisaalta kuvaformaatit? Tutustu info = imfinfo('xxxx.tif') funktioon ja kerro termien tarkoitus. 2.p
- Tee alipäästö- , ylipäästö-, kaistanpäästö- sekä kaistanestosuodattimet < ja > operaatioiden avulla. Käytä kuvana viisiviivaa.JPG
- Hae kuvasta prikkoja ja levyjä, a. levyt b. prikat. 2p.
- Poista tiedostosta KolikotNoise.tif "roskat". Testaa filter funktioita. Yritä etsiä tapa, joka ei huonontaisi kuvaa. 2p.
- Selvitä imclearborder funktion toiminta sekä funktion parametrien tarkoitus. Kokeile funktoita kuvaan palikkoja rajoilla kuvaan. 2p.
- Tee ekvalisaattorifunktio, joka "levittää" minkä tahansa uint8 kuvan koko alueelle 0...255. Huom! imread funktio lukee kuvan siinä muodossa, jossa se on alkuperäisessä kuvassa eli muuta kuva ensin uint8- muotoon. Saat matriisin pienimmän alkion arvon funktiolla min(min(kuva)) ja suurimman arvon max(max(kuva)), kun kuva on uint8 matriisi. ps. yksi max tai min antaa matriisin rivien maksimi tai vastaavasti minimi arvon. Vertaa saamaasi tulosta imadjust(I) funktion tuottamaan tulokseen. 2p
- Näytä kuvan viisiviivaa.JPG profiili pystysuunnassa funktiolla plot(kuve(x,:)) kokeile myös plot(kuve(:,y)). Valitse x ja y siten, että näet jotain hyödyllistä. 2p
- Double tyypin kuvan matriisin alkioiden arvot ovat välillä 0...1. Kuva2= double(kuva) muuntaa matriisin alkiot double tyypeiksi, muttei skaalaa niitä oikealle arvovälille. Tee esimerkki jossa on myös skaalaus. Käytä viisiviivaa.JPG kuvaa testaukseen. 2p
- Tee maski, joka poistaa kuvasta viisiviivaa.JPG keskimmäisen viivan. Halutun osan kuvasta saa "värjättyä" haluamakseen kuva(Xalku:Xloppu,Yalku:Yloppu) = HaluttuArvo. Tarkista vaikka tehtävällä 9 taustan kirkkauden arvo, jotta saat oikean peittokirkkauden. 2p
- Toteuta tehtävän 4 eri kuvien tulostus subplot(1,2,1), imshow(viivat5), subplot(1,2,2), imshow(viivat4) jne. käskyillä siten, että kaikki kuvat tulostuvat yhteen ikkunaan. 2p
- Yhdistä kuvan AvoinSuorakaide.bmp avoin suorakaide päät. Tee yhdistäminen siten, ettei viivat vahvene. 2p.
- Hae kuvasta palikka reunat edge funktiolla. 2p.
- Hae edellisestä kuvasta pystyreunat strel ja imerode funktioita hyväksi käyttäen. 1p
- Hae edellisestä kuvasta vaakareunat strel ja imerode funktioita hyväksi käyttäen. 1p
- Testaa kuvien yhdistämistä kahdella tavalla a I3=(I2+I1)2 ja sitten imlincomb funktiolla I3 = imlincomb(.5,I1,.5,I2); Onko tuloksilla eroa? 1p
- Vertaike imview ja imshow funktioita, mikä on niiden välinen ero? 1p
- Lue jokin 1-bittinen kuva ja muuta sen "valkoiset" bitit punaisiksi ja "mustat" bitit sinisiksi. 1p
- Tutustu funktioihin islogical, isgray, isind. Etsi kuvat, joissa funktiot palauttavat arvon 1. 1p
- Tee matriisi A=zeros(i,j) laita matriisin alkioiden arvot siten, että ne alkavat ylhäällä nollasta ja päätyvät alhaalla arvoon 255 malli. Kirjoita kuva imwrite funktiolla 8-bittisenä harmaasävykuvana tiedostoon ja lue se sieltä takaisin, jotta voit todeta tehtävän onnistuneen. 3p
- Hae palikoita kuvasta pienimmän palikan keskipiste. 3p
- Hae kuvasta neliö tähti ja ympyrä ainoastaan yksi kuvio kuvaan kerrallaan ja hae sen keskipiste. 3p
- Muuta kuva kolme ruuvia mustavalkokuvaksi. 3p
- Zoomaa edellinen kuva siten, että ruuvit täyttävät koko kuva-alan. Tämän täytyy tapahtua automaattisesti vaikka ruuvit olisivat myös muissa asennoissa. Kokeile myös muilla kuvilla. 5p
- Hae edellisen kuvan ruuveista sen ruuvin keskipiste, joka on pystyssä. 3p
- Hae kuvasta neliö tähti ja ympyrä (testaa palikoita kuvalla) se kappale, joka on lähimpänä kuva-alueen keskipistettä. Hae kuva-alueen keskipisteen paikka ja sitten osien kp:t ja mittaa etäisyys. 6p