ksw_qiongju.asv

来自「程序代码的 啊卡点击开飞机啊的;房间 啊健康垃圾房啊的vj 啊卡就」· ASV 代码 · 共 80 行

ASV
80
字号



%%%利用最佳直方图熵法(KSW熵法)及穷举法实现灰度图像阈值分割
%%%主程序


%%初始部分,读取图像及计算相关信息

clear;
close all;
clc;

I=imread('r');


hist=imhist(I);

total=0;
for i=0:255
    total=total+hist(i+1);
end
hist1=hist/total;

HT=0;
for i=0:255
    if hist1(i+1)==0
        temp=0;
    else
        temp=-hist1(i+1)*log(hist1(i+1));
    end
    HT=HT+temp;
end


%%程序主干部分

    for i=0:255
        adapt_value(i+1)=ksw(i,0,255,hist1,HT);
    end
    
    max_value=max(adapt_value);
    number=find(adapt_value==max_value);
    t_opt=number-1;

    
%%阈值分割及显示部分

threshold_opt=t_opt/256;

I1=im2bw(I,threshold_opt);

disp('灰度图像阈值分割的效果如图所示:');
disp('源图为:Fifure No.1');
disp('最佳直方图熵法及穷举法阈值分割后的图像为:Fifure No.2');

figure(1);
imshow(I);
title('源图');

figure(2);
imshow(I1);
title('最佳直方图熵法及穷举法阈值分割后的图像');


disp('最佳直方图熵法及穷举法阈值为:');
disp(t_opt);


%%程序结束








    
        

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?