clear, close, clc
a=imread('tekst1.jpg');                                   %Ucitamo sliku
a=medfilt2(a, [3 3]);                                   %Filtriramo medijan filtrom
subplot(131),imshow(a),title('Originalna slika')

b=size(a);                                              % Velicina matrice slike
k=10;                                                   %Broj regiona
dimX=floor(b(1)/k);                                     %Broj vrsta u regionu
dimY=floor(b(2)/k);                                      %Broj kolona u regionu
BW(1:b(1), 1:b(2))=0;
BW=imnoise(BW, 'gaussian', 0.5, 0.5);
prosjecan_prag=0;
i=0;
for m=1:k   %Ispitivanje region po region i pronalazenje praga u svakom 
    for n=1:k                          %regionu posebno i njegovo segmentiranje
              
        temp=a(((m-1)*dimX+1):(m*dimX), ((n-1)*dimY+1):(n*dimY+1)); 
        subplot(132),imshow(temp),title('Regioni');
        
        prag=graythresh(temp);
        prosjecan_prag=prosjecan_prag+prag;
        i=i+1;
        BW(((m-1)*dimX+1):(m*dimX),((n-1)*dimY+1):(n*dimY+1)) = im2bw(a(((m-1)*dimX+1):(m*dimX),((n-1)*dimY+1):(n*dimY+1)), prag);
       subplot(133), imshow(BW), title('Slika u procesu segmentacije mic po mic');
       pause(0.01)
    end                 
end

D=medfilt2(BW, [3 3]);                                      %Filtriranje segmentirane slike
figure, imshow(D),title('Evo je!Gotova slika,segmentirana!Juhuuu!'),xlabel('Lijepa slika! Boli glava');
prosjecan_prag=prosjecan_prag/i;
BW1=im2bw(a, prosjecan_prag);
figure, imshow(BW1), title('Segmentacija sa prosjecnim pragom');