作业帮 > 数学 > 作业

在运行matlab为什么会出现?In an assignment A(I) = B,the number of elem

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:数学作业 时间:2024/04/20 20:25:06
在运行matlab为什么会出现?In an assignment A(I) = B,the number of elements in B and I must be
程序如下:
clear all
I = imread('circles.png');
I2 = imcrop(I,[75 75 26 24]);
imshow(I),figure,imshow(I2);
[txr,txc]=size(I)
[mbr,mbc]=size(I2)
NIND=25; %个体数目
MAXGEN=40; %最大遗传代数
PRECI1=9; %变量的二进制位数,PRICE1表示行坐标,PRICE2表示列坐标,PRICE3表示角度
PRECI2=9;
PRECI3=9;
GGAP=0.9; %代沟
NVNR=3; %变量个数
FieldD=[rep([PRECI1 PRECI2 PRECI3],[1 1]);rep([0 0 -180;txr-mbr txc-mbc 180],[1 1]);rep([1;0;1;1],[1,NVNR])];%区域描述
Chrom=crtbp(NIND,(PRECI1+PRECI2+PRECI3)); %群体初始化,生成5×NIND个个体
[x,y]=size(Chrom)
Pc=0.8; %交叉率
Pm=0.05; %变异率
gen=0; %初始代数为0
for i=1:NIND
ObjV(i)=normxcorr2(Chrom(i,:),I2(i,:));
end
在运行matlab为什么会出现?In an assignment A(I) = B,the number of elem
粘贴了你的代码运行了一下,未出现你所说的情况.
但对于你所出现的问题:向量运算时如果等式两边向量结构不同就会出现.比如下面的语句:
a(3:6)=1:5
本句表示要对a矩阵中3~6号元素进行赋值,共需四个数,但等式右边是个1行5列的矩阵,有五个输入元素,两边不匹配,出错.如改正如下形式可避免此错误:
a(3:7)=1:5 或 a(3:6)=1:4
再问: 这个我知道,可是我的匹配没问题