資源簡介
OSTU閾值化處理, 圖像分割 ,matlab
代碼片段和文件信息
%ostu?image?segment
function?threshold=ostu(filename);
ff=‘11.jpg‘;
x=imread(ff);
%figure;
%imshow(x);
[mn]=size(x);
N=m*n;
num=zeros(1256);
p=zeros(1256);
for?i=1:m
for?j=1:n
num(x(ij)+1)=num(x(ij)+1)+1;
end
end
for?i=0:255;
p(i+1)=num(i+1)/N;
end
totalmean=0;
for?i=0:255;
totalmean=totalmean+i*p(i+1);
end
maxvar=0;
for?k=0:255
kk=k+1;
zerosth=sum(p(1:kk));
firsth=0;
for?h=0:k
firsth=firsth+h*p(h+1);
end
var=totalmean*zerosth-firsth;
var=var*var;
var=var/(zerosth*(1-zerosth)+0.001);
var=sqrt(var);
if(var>maxvar)
maxvar=var;
point=k;
end
end
threshold=point;?
for?i=1:108
????????for?j=1:228
??????????????if?x(ij3) >?160
??????????????????ans1(ij1)=255;
??????????????????ans1(ij2)=255;
??????????????????ans1(ij3)=255;
??????????????else
?????????????????ans1(ij1)=0;
?????????????????ans1(ij2)=0;
?????????????????ans1(ij3)=0;
??????????????end
????????end
end
???????figureimshow(ans1);?????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3719??2010-12-09?21:17??OSTU?matlab\11.JPG
?????文件???????1007??2012-12-11?21:37??OSTU?matlab\ostu.m
?????目錄??????????0??2012-12-11?21:38??OSTU?matlab
-----------?---------??----------?-----??----
?????????????????4726????????????????????3
評論
共有 條評論