?? getmax_htothrod.m
字號:
function y=GetMax_HtoThrod(M)
w1=imread(M); % M是輸入的圖像名稱,讀取名稱是M的圖像文件
im=imfinfo(M);%獲得圖像文件信息
w=im2double(w1);
Height=im.Height;
Width=im.Width;
p=zeros(1,256);
num=zeros(1,256);
for h=1:256%統計各個灰度級出現的次數;
n=0;
for i=1:Height
for j=1:Width
d=round(255*w(i,j));
if h==d+1
n=n+1;
end
end
end
p(1,h)=n;
end
for r=1:256%統計各個灰度級出現的概率;
p(1,r)=p(1,r)/(Width*Height);
end
for i=1:256%對每一個灰度級進行比較;
a1=0;
a2=0;
pt=0;
for j=1:i
pt=pt+p(1,j);
end
for j=1:i
if pt~=0 &&p(1,j)~=0
a1=a1-p(1,j)/pt*log(p(1,j)/pt);
end
end
for j=(i+1):256
if pt~=1 &&p(1,j)~=0
a2=a2-p(1,j)/(1-pt)*log(p(1,j)/(1-pt));
end
end
num(1,i)=a1+a2;
end
max=0;
for i=1:256%找到使類的熵最大的灰度級;
if(max<num(1,i))
max=num(1,i);
y=i;
end
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -