Halcom 发表于 2019-10-20 21:30:27

一维最大熵法进行2分割和3分割(MATLAB)

一维最大熵法进行2分割和3分割(MATLAB)
链接:https://pan.baidu.com/s/1M15vV4l8R96hahprmhXDEA&shfl=sharepset   提取码:hobi
具体链接在halcom.cn论坛,联系人QQ:3283892722
该论坛是一个学习交流平台,我会逐一的和大家分享学习。
欢迎大家录制视频,你可在论坛进行打赏分享。
视频专用播放器:http://halcom.cn/forum.php?mod=viewthread&tid=258&extra=page%3D1\

clc,clear,close all
warning off
% 2个阈值,实现3分类分割
I = imread('car.bmp');
% I = imread('screen.jpg');
figure('color',), imshow(I,[])
t1 = 128;% 初始化最佳阈值
t2 = 180;% 初始化最佳阈值
Lmax = 256;% 最大灰阶, uin8
k=1;
for t1=0:Lmax-1
    for t2 = t1+1:Lmax
      pop(k,:) = ;
      H1(k) = H1_segFun2(I, pop(k,:) );
      k=k+1;
    end
end
=max(H1);

% 显示
Iout = imageGray(I, pop(bestT,:) );
figure('color',)
imshow(Iout,[])
colormap jet;
axis equal适应度函数H1_segFun2如下:**** Hidden Message *****显示函数imageGray如下:
function imgOut = imageGray(img, thre)
% 图像按照不同的灰阶值显示
limits = ;
imageSize = size(img);
imgOut(:,:,:)=img*0;

k=1;
for i=1:imageSize(1,1)
    for j=1:imageSize(1,2)
      while(k<size(limits, 2))
            if(img(i,j)>=limits(1,k) && img(i,j)<=limits(1,k+1))
                imgOut(i,j,1) = limits(1, k);
            end
            k=k+1;
      end
      k=1;
    end
end






我成功失败了 发表于 2019-12-24 18:58:51

感谢管理员分享的资源!

yuyibintony 发表于 2020-8-8 17:13:20

好东西,谢谢分享!

842013760 发表于 2021-6-24 21:11:41

非常好得代码
页: [1]
查看完整版本: 一维最大熵法进行2分割和3分割(MATLAB)