-
Notifications
You must be signed in to change notification settings - Fork 1
/
log_in_file.m
47 lines (39 loc) · 1.67 KB
/
log_in_file.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
function [state, options,optchanged] = log_in_file(options,state,flag,fid,fbest,tini,I,dimension,out,ite)
%LOG_IN_FILE Summary of this function goes here
% Detailed explanation goes her
persistent h1 history r;
optchanged=false;
switch flag
case 'init'
fprintf(fid,'Generacion; best; promedio; cuartil3; max; min; quartil1\n');
case {'iter','interrupt'}
if rem(state.Generation,10) == 0
% ss = size(history,3);
% history(:,:,ss+1) = state.Population;
% assignin('base','gapopulationhistory',history);
end
score=1-state.Score;
q=quantile(score,3);
fprintf(fid,'%f; %f; %f; %f; %f; %f; %f\n',state.Generation,state.Best(state.Generation),q(2),q(3),max(score),min(score),q(1));
case 'done'
%ss = size(history,3);
%history(:,:,ss+1) = state.Population;
%assignin('base','gapopulationhistory',history);
ibest = state.Best(end);
ibest = find(state.Score == ibest,1,'last');
bestx = state.Population(ibest,:);
SR=convertir_individuo2se(bestx,dimension);
R=metodologia_morfologica(I, strel('arbitrary',SR));
imwrite(SR,strcat(strcat(out, ite), '_se.png'));
imwrite(gather(R),strcat(strcat(out, ite), '_t.png'));
[c2]=CONTRASTE(R)/127.5;
[similaridad]=nssim(I,R);
if isa(R,'gpuArray')
clear R;
end
score=1-state.Score;
q=quantile(score,3);
t=toc(tini);
fprintf(fbest,'%f; %f; %f; %f; %f; %f; %f; %f; %f\n',t,state.Best(state.Generation),q(2),q(3),max(score),min(score),q(1),c2,similaridad);
end
end