matlab里面的uint8函数,未定义与 'uint8' 类型的输入参数相对应的函数 'fitnessty'
该楼层疑似违规已被系统折叠隐藏此楼查看此楼程序如下:clear allclcticpopsize=15;lanti=10;maxgen=50;cross_rate=0.4;mutation_rate=0.1;a0=0.7;zpopsize=5;bestf=0;nf=0;number=0;I=imread('C:\Users\Yu\Pictures\feiji.jpg');if numel(I)&.
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
程序如下:
clear all
clc
tic
popsize=15;
lanti=10;
maxgen=50;
cross_rate=0.4;
mutation_rate=0.1;
a0=0.7;
zpopsize=5;
bestf=0;
nf=0;
number=0;
I=imread('C:\Users\Yu\Pictures\feiji.jpg');
if numel(I)>2
I=rgb2gray(I);
end
[m,n]=size(I);
p=imhist(I);
p=p';
p=p/(m*n);
figure(1);
subplot(1,2,1);
imshow(I);
title('yuantu');
hold on
pop=2*rand(popsize,lanti)-1;
pop=hardlim(pop);
for gen=1:maxgen
[fitness,yuzhi,number]=fitnessty(pop,lanti,I,popsize,m,n,number);
if max(fitness)>bestf
bestf=max(fitness);
nf=0;
for i=1:popsize
if fitness(1,i)==bestf
v=i;
end
end
yu=yuzhi(1,v);
elseif max(fitness)==bestf
nf=nf+1;
end
if nf>=20
break;
end
A=shontt(pop);
f=fit(A,fitness);
pop=select(pop,f);
pop=coss(pop,corss_rate,popsize,lanti);
pop=mutation_compute(pop,mutation_rate,lanti,popsize);
a=shonqt(pop);
if a>a0
zpop=2*rand(zpopsize,lanti)-1;
zpop=hardlim(zpop);
pop(popsize+1,popsize+zpopsize)=zpop(:,:);
[fitness,yuzhi,number]=fitnessty(pop,lanti,I,popsize,m,n,number);
A=shontt(pop);
f=fit(A,fitness);
pop=select(pop,f);
end
if gen==maxgen
[fitness,yuzhi,number]=fitnessty(pop,lanti,I,popsize,m,n,number);
end
end
imshow(I);
subplot(1,2,2);
fresult(I,yu);
title('fazhifengehou');
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)