该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
以下是代码
function J =segmentation(I);
I=imread('F:\毕设\timg.jpg');
if isinteger(I)
I=im2double(I);
end
figure,imshow(I),title('原始图像')
[a,b]=size(I);
[c,d]=getpts;
d1=round(d);
c1=round(c);
seed=I(d1,c1);
J=zeros(a,b);
J(d1,c1)=1;
sum=seed;
suit=1;
count=1;
threshold=0.13;
while count>0
s=0;
count=0;
for i=1:a
for j=1:b
if J(i,j)==1
if (i-1)>0 & (i+1)0 & (j+1)
for u= -1:1
for v= -1:1
if J(i+u,j+v)==0 & abs(I(i+u,j+v)-seed)<=threshold&1/(1+1/15*abs(I(i+u,j+v)-seed))>0.8
J(i+u,j+v)=1;
count=count+1;
s=s+I(i+u,j+v);
end
end
end
end
end
end
end
suit=suit+count;
sum=sum+s;
seed=sum/suit;
end
figure,imshow(J),title('分割后的图像')
网上一搜就有的 很常见的一个代码