%从上到下逐行进行扫描,遇到白色像素置零,再次遇到黑色像素停止
for i=1:y
for j=1:x
lable=1;
if(d1(i,j,1)==1)
d1(i,j,1)=0;
lable=0;
firstblack=1;
end
if(d1(i,j,1)==0&&lable==1&&firstblack==1)
break; %第二次进入黑色区域,就跳出循环
end
end
firstblack=0;
end
firstblack=0;
lable=0;
for i=1:y
for j=x:-1:1
lable=1;
if(d1(i,j,1)==1)
d1(i,j,1)=0;
lable=0;
firstblack=1;
end
if(d1(i,j,1)==0&&lable==1&&firstblack==1)
break;
end
end
firstblack=0;
end
figure;
subplot(121);imshow(d2);
<p>subplot(122);imshow(d1);</p><p>
</p>