function vecdesc =  verificafoca(irgb, am_vis)

ct1 = 1;

visualizacao = am_vis;

if visualizacao == true
    figure(1)

    set(1,'Position',[24 51 1232 650])
    set(1,'NumberTitle','off')
    set(1,'Name','Análise Spectral')

    figure(2)

    set(2,'Position',[24 51 1232 650])
    set(2,'NumberTitle','off')
    set(2,'Name','1-7 Padrão Antigo, 8-14 Padrão Novo, 15-23 Def. Falta Grao')

    figure(3)

    set(3,'Position',[24 51 1232 650])
    set(3,'NumberTitle','off')
    set(3,'Name','Granulometria')
end



icinz = rgb2gray(irgb);

icinz = icinz(1050:1200,1:250);

th = graythresh(icinz);

step=1;
ireduzida=icinz(1:step:size(icinz,1), 1:step:size(icinz,2));
se = strel('square',10);

ivalmax = imtophat(ireduzida,se);
iajust = imadjust(ivalmax,[0 0.5],[]);

h = imhist(iajust);
ibin = im2bw(iajust,th);

     
[v,unv] = statmoments(h, 2);
    
padrao(ct1).media = v(1);
padrao(ct1).desvio = v(2);
padrao(ct1).mediaun = unv(1);
padrao(ct1).desvioun = unv(2);
mediaplot(ct1) = v(1);
desvplot(ct1)= v(2);
    
rst(ct1,:)= statxture(iajust);
    
[labeled,numGant] = bwlabel(ibin,4);
%   figure(5)
%   imshow(ibin)
    
    
for  sizeSl= 1:8
    
    restantes = imopen(ibin, strel('disk', sizeSl));
%   intensity_area(counter + 1) = sum(remain(:));
%   figure(5)
%   imshow(restantes)
         
    [labeled,numGdep] = bwlabel(restantes,4);
    numGr( ct1, sizeSl ) = numGant - numGdep;
    numGant = numGdep;
end
    

tam_numGr = size (numGr);
mediaGrao = (sum(numGr(1:tam_numGr(1),:)))/tam_numGr(1);

if visualizacao == true
    figure(1),
    
    subplot(2,3,1)
    imshow(icinz),
    title('rgb2gray')
    
    figure(1),
    subplot(2,3,2)
    imshow(iajust),
    title('imadjust')
    
    figure(1),
    subplot(2,3,3)
    imshow(ibin),
    title('im2bw')
    
    [srad, sang, S]=specxture(iajust);
    figure(1),
    subplot(2,3,4)
    plot(srad), 
    title('srad')
    
    figure(1),
    subplot(2,3,5)
    plot(sang), 
    title('sang')
    
    figure(1),
    subplot(2,3,6)
    imshow(S),
    title('Spectrum Image')
    
    soma = sum(numGr(ct1,:))
     
    if (50 < soma &  soma < 350)
        sprintf('%s', 'Contagem: P100')
        title('P100')
        resultado(ct1,:) = 'P100'
    end
    
    if (610 < soma &  soma < 910)
        sprintf('%s', 'Contagem: P320')
        title('P320')
        resultado(ct1,:) = 'P320'
    end

    if (2830 < soma &  soma < 3130)
        sprintf('%s', 'Contagem: P600')
        title('P600')
        resultado(ct1,:) = 'P600'
    end
    
    if (3310 < soma &  soma < 3610)
        sprintf('%s', 'Contagem: P800')
        title('P800')
        resultado(ct1,:) = 'P800'
    end
    
    if (7530 < soma &  soma < 7830)
        sprintf('%s', 'Contagem: P1500')
        title('P1500')
        resultado(ct1,:) = 'P1500'
    end
end
pause(0.1)


if visualizacao == true
    figure(2),
    subplot(4,2,1)
    bar(rst(:,1)), grid on;
    title('Intesidade Media')
    figure(2),
    subplot(4,2,2)
    bar(rst(:,2)), grid on;
    title('Contraste Medio')
    figure(2),
    subplot(4,2,3)
    bar(rst(:,3)), grid on;
    title('R')
    figure(2),
    subplot(4,2,4)
    bar(rst(:,4)), grid on;
    title('3º Momento')
    figure(2),
    subplot(4,2,5)
    bar(rst(:,5)), grid on;
    title('Uniformidade')
    figure(2),
    subplot(4,2,6)
    bar(rst(:,6)), grid on;
    title('Entropia')
end

somamedias = sum(mediaGrao);


numtam = 0;

if visualizacao == true
    figure(3),plot(mediaGrao, 'm - *'), grid on;
    title(mean(rst(:,3)));
    xlabel('raio elemento estruturante (pixels)');
    ylabel('número Grãos');
end
% figure(1),
% subplot(2,3,1)
% bar(mediaplot), grid on;
% title('Media: 1-7 Padrão Antigo, 8-14 Padrão Novo, 15-23 Def. Falta Grao')
% figure(1),
% subplot(2,3,2)
% bar(desvplot), grid on;
% title('Desvio: 1-7 Padrão Antigo, 8-14 Padrão Novo, 15-23 Def. Falta Grao')

%fdsurfft(icinz)


rst(:,:);
mediaGrao(1,:)= mediaGrao(:);
perc_numGr = (numGr(1,:)/sum(numGr(1,:)));
vecdesc = [rst(:,:) perc_numGr]; 
%vecdesc(size(vecdesc):(size(vecdesc)+size(mediaGrao))) = mediaGrao(:) 
