📄 evaluate_image_opt.m
字号:
function [best_index,best_fitness,best_alpha,best_beta]=evaluate_image_opt(r,g_cameraman,row,colume,num_pixel,num_of_singles,num_of_chrom,num_of_genes)
dec=zeros(1,num_of_singles*num_of_chrom);
flt=zeros(1,num_of_singles*num_of_chrom);
for i=1:num_of_singles
for j=1:num_of_chrom
curr_chrom=r((2*i-3+j)*num_of_genes+1:(2*i-2+j)*num_of_genes);
for k=1:num_of_genes
dec(i*2+j-2)=dec(i*2+j-2)+curr_chrom(k)*2^(num_of_genes-k);
end
end
end
flt=round(10*(dec/1024));
fitness=zeros(1,num_of_singles);
for k=1:num_of_singles
alpha=flt(k*2-1);
beta=flt(k*2);
if alpha==0
alpha=1;
end
if beta==0
beta=1;
end
gc_cameraman=zeros(row,colume);
syms t;
for i=1:row
for j=1:colume
gc_cameraman(i,j)=double(int(t^(alpha-1)*(1-t)^(beta-1),t,0,g_cameraman(i,j))/int(t^(alpha-1)*(1-t)^(beta-1),t,0,1));
end
end
fitness(k)=sum(sum(gc_cameraman.*gc_cameraman))/num_pixel-(sum(sum(gc_cameraman))/num_pixel)^2;
end
[best_fitness best_index]=max(fitness);
best_alpha=flt(best_index*2-1);
best_beta=flt(best_index*2);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -