function JajittelePrikat() %kommentoi käskyt Matlab helpin avulla. kokeile erilaisia diskin halkaisija %muuta subplot käsky siten, että tulostetaan 2 riviä ja kolme saraketta % I = imread('PrikkojaJaNappeja.bmp'); %imfinfo('PrikkojaJaNappeja.bmp') %Täytetään kuvasta pienet reiät %kokeile myös suurentaa "diskin" kokoa esim. 10, mikä on tulos ? se = strel('disk',3); I=imdilate(I,se);%suljetaan roskia eli pieniä reikiä kuvasta myös imclose toimii \! %Haetaan osat kuvasta L = bwlabel(I); RGB1 = label2rgb(L,'lines');%värikartan määrittely RGB2 = label2rgb(L,'gray');%värikartan määrittely RGB3 = label2rgb(L,'cool');%värikartan määrittely %Haetaan osien ominaisuudet EulerNumber=kohde-reiät ominaisuus = regionprops(L,'EulerNumber'); reikia_1 = find([ominaisuus.EulerNumber]==0); reikia_2 = find([ominaisuus.EulerNumber]==-1); reikia_3 = find([ominaisuus.EulerNumber]==-2); %sijoitetaan osat reikien määrän mukaan uusiin kuviin I1 = ismember(L,reikia_1); I2 = ismember(L,reikia_2); I3 = ismember(L,reikia_3); %Tehdään 24-bittinen RGB-kuva, jossa eri osat omilla väreillään %cat(värien määrä,punainen, vihreä ,sininen) %kerrotaan 255:llä, jotta saadaan oikea alue 0.0->1.0 to 0->255 RGB4=uint8(cat(3,I1,I2,I3))*255; subplot(6,2,1),imshow(I), title('alkuperainen');%tulostetaan kaikki samaan ikkunaan (rivi,sarake,järj.num.) subplot(6,2,2),imshow(I1), title('1-reikaiset'); subplot(6,2,3),imshow(I2), title('2-reikaiset'); subplot(6,2,4),imshow(I3), title('3-reikaiset'); subplot(6,2,5),imshow(RGB1), title('lines'); %Eri varikarttojen tulostus subplot(6,2,6),imshow(RGB2), title('gray'); %Eri varikarttojen tulostus subplot(6,2,7),imshow(RGB3), title('cool'); %Eri varikarttojen tulostus subplot(6,2,8),imshow(RGB4), title('eri varit');