clc
clear all
close all

modo = 2
% modo = 1 -> leitura vectores padrão
% modo = 2 -> identificação de uma amostra
fi_amostra = 'P800\220109 L AGUA RL P800 j.jpg'
% nome de ficheiro cuja amostra é para identificar
vis = false    
% visualizacao gráficos on/off
nimg = 10;              
% número imagens padrão
grao = {'P100', 'P120', 'P150', 'P180', 'P220','P240', 'P280', 'P320', 'P360', 'P400','P500', 'P600', 'P800', 'P1000', 'P1200','P1500', 'P2000', 'P2500'} ;
% padrões a carregar
pds = [' a';' b';' c';' d';' e';' f';' g';' h';' i';' j';' l';' m';' n';' o';' p'];
% padrões alternativos ou amostras
spc = [' aa';' bb';' cc';' dd';' ee';' ff';' gg';' hh';' ii';' jj';' ll';' mm';' nn';' oo';' pp'];
%spc = ['ar';'br';'cr';'dr';'er';'fr';'gr';'hr';'jr';'lr';'mr';'nr';'or';'pr'];
%fgs = ['FG1';'FG2';'FG3';'FG4';'FG5';'FG6';'FG7';'FG8';'FG9'];

caminho = 'C:\Programas\MATLAB71\work\Ensaios Mestrado - 05.05.08\Imagens 2ºparte Trabalho\10.02.09 - Comparação_PadrãoActual_PadrãoAntigo_Recolha\';
dttlx = '\100209 L AGUA RL ';

switch modo
    case 1,        
        for j = 1:size(grao,2)
            vecpd(j,:) =  leituraPadroes(char(grao(j)), nimg, pds, spc, caminho, dttlx, vis)
            save '100209 VectoresPadrao' vecpd
        end
    case 2,
        vpd = open ('100209 VectoresPadrao.mat');
        dh = fix(clock);
        
        for t = 1:30
            t = t +1;
            iadq = aquisicaoim;    
            vecam =  leituraAmostra2(iadq, vis);
        
            for j = 1:size(grao,2)
                soma = 0;
                for i = 1:14
                    soma = soma + (vpd.vecpd(j,i) - vecam(i))^2;
                end
            
                mtrcs(j) = sqrt(soma);
            end
        
            grao
            mtrcs
            resultado = 'nulo';
            vmin = min(mtrcs);
            for j = 1:size(grao,2)
                if mtrcs(j)==vmin
                    resultado = strcat('Grão com maior semelhança: _', grao(j))
                end
            end
            figure(1)
            imshow(iadq)
            text(100,72,'1 segundos','Color','g',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
            pause(1);
            figure(1)
            imshow(iadq)
            text(100,72,'2 segundos','Color','g',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
            pause(1);
            figure(1)
            imshow(iadq)
            text(100,72,'3 segundos','Color','g',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
            pause(1);
            figure(1)
            imshow(iadq)
            text(100,72,'4 segundos','Color','g',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
            pause(1);
            figure(1)
            imshow(iadq)
            text(100,72,'5 segundos','Color','g',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
            pause(1);
            figure(1)
            imshow(iadq)
            text(150,72,'AQUISIÇÃO','Color','b',...
            'FontWeight', 'bold');
            text(100,950,resultado,'Color','g',...
            'FontWeight', 'bold');
            text(100,1000,'P100  P120  P150  P180  P220  P240  P280  P320  P360  P400  P500  P600  P800  P1000 P1500 P2000 P2500','Color','g',...
            'FontWeight', 'bold');
            for j=1:18
                text(((100+((j-1)*75))),1050,int2str(mtrcs(j)),'Color','g',...
                'FontWeight', 'bold');
            end
        end
end
        
        
        
