clear all;
close all;
clc;
img=imread('lena.jpg');
[m n]=size(img);
w=3; %模板半径
imgn=zeros(m,n);
for i=1+w:m-w
for j=1+w:n-w
Hist=zeros(1,256);
for p=i-w:i+w
for q=j-w:j+w
Hist(img(p,q)+1)=Hist(img(p,q)+1)+1; %统计局部直方图
end
end
Hist=Hist/sum(Hist);
for k=1:256
if Hist(k)~=0
imgn(i,j)=imgn(i,j)+Hist(k)*log(1/Hist(k)); %局部熵
end
end
%{
p=sum(sum(img(i-w:i+2,j-w:j+w))); %这里是按第一个公式写的
s=img(i-w:i+w,j-w:j+w)/p;
imgn(i,j)=-sum(sum(s.*log(s)));
%}
end
end
imshow(imgn,[])
imgn=entropyfilt(img); %系统的局部熵函数
figure;
imshow(imgn,[])
图像的局部熵
最新推荐文章于 2024-07-18 10:00:00 发布