更新处理了下代码,可以用于处理存在数值缺失的遥感数据(数据有inf,-inf,NAN的遥感数据)初始值赋予整个影像均值,尽量避免最终阈值计算结果偏差过大。
%迭代阈值
function [re,T]=iterative_threshold(Image)
Image=double(Image);
image=Image;
image(find(isinf(image)==1))=[];
image(find(isnan(image)==1))=[];
T=mean(mean(image));
flag=1;
while(flag~=0)
T1=0;
A=mean(image(find(image<=T)));
B=mean(image(find(image>=T)));
T1=ceil((A+B)/2);
flag=abs(T-T1);
T=T1;
end
re=ceil((Image-T)/255);
end