⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 entroy_noisy1.m

📁 用于实现加了噪声的灰度图像阈值分割的一维最大熵方法
💻 M
字号:
%最大熵(加高斯噪声)
clc
clear all
tic
I=imread('d:\image\eight.tif','tif'); 
imshow(I);
b=imnoise(I,'Gaussian',0,0.01); %加高斯噪声
figure;
imshow(b);
ng=zeros(1,256);
gray=255;
[m,l]=size(b);
for i=1:1:m
    for j=1:1:l
        temp=double(b(i,j));
        if temp<=gray
            gray=temp;
        end
        ng(temp+1)=ng(temp+1)+1;
    end
end
for i=1:1:256
    hg(i)=ng(i)/(m*l);
end
for t=gray:1:255  % t是灰度
    E0=0;
    E1=0;
    P0=0;
    for i=0:1:t
        P0=P0+hg(i+1);
    end
    P1=1-P0;
        if P0~=0
           for i=0:1:t 
               R0=hg(i+1)/P0;
                 if R0~=0 
                    E0=E0-R0*log(R0);
                 end
           end
       end
        if P1~=0
           for i=t+1:1:255
               R1=hg(i+1)/P1;
                if R1~=0  
                   E1=E1-R1*log(R1);
                end
           end
       end
    n(t+1)=E0+E1;
    if t==gray
        Nm=n(t+1);
    end
    if n(t+1)>=Nm
        Nm=n(t+1);
        Topt=t;
    end
end
Topt
image1=ones(m,l);
for i=1:m
    for j=1:l
        if b(i,j)<=Topt
            image1(i,j)=0;
        end
    end
end
figure,imshow(image1);
toc        
    

⌨️ 快捷键说明

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