...
Code Block |
---|
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'); |