MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB基础] 求助各位大虾:怎么精简for循环 (https://www.labfans.com/bbs/showthread.php?t=8928)

wangleiwlwlwwll 2009-06-11 17:33

求助各位大虾:怎么精简for循环
 
源程序如下:

datafiles=dir('*.bmp');


for m=1:1743
a1=imread(datafiles(m).name);
a2=im2bw(a1);
b2=double(a2);

l=1;
for i=1:1200
for j=1:1600
if b2(i,j)==1&&i>1&&j>1&&i<1200&&j<1600
if b2(i-1,j)==0&&b2(i+1,j)==0&&b2(i,j-1)==0&&b2(i,j+1)==0&&b2(i+1,j+1)==0&&b2(i-1,j-1)==0
d(l)=b2(i,j);
l=l+1;
end
end
end
end

c(m)=d(l)-d(l-1);
f(m)=c(m)/d(l-1);
end


由于for循环次数太多,导致计算机算得过慢。请问各位大虾能不能指点下,怎么精简下,让它运行快点啊!~~~谢谢了····


所有时间均为北京时间。现在的时间是 11:20

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.