• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-06
  • 语言: Matlab
  • 标签: DSIH  matlab  

资源简介

DSIHE的matlab实现,输出转换后的彩色图和灰度图,对原始图像的RGB分量分别进行了处理。

资源截图

代码片段和文件信息

clc 
clear all 
%读入图片 
gf=imread(‘5.jpg‘);
figureimshow(gf);
title(‘原始图像‘);
a=rgb2gray(gf);
figureimhist(a) 
title(‘原始直方图‘); 
gfMin=min(a(:)); 
gfMax=max(a(:)); 
R=gf(::1);
G=gf(::2);
B=gf(::3);
 
%测量图像尺寸参数 
[st]=size(a); 
 
%计算每个灰度级出现的概率 
h=imhist(a)/(s*t); 
 
%计算灰度Xe,概率p 
for k=0:255 
    if sum(h(1:k+1))<(1/2) 
       continue; 
    elseif sum(h(1:k+1))==(1/2) 
        Xe=k; 
        break; 
    else 
        Xe=k-1; 
        break; 
    end 
end 
         
p=sum(h(gfMin+1:Xe)); 
% 计算DSIHE直方图均衡化后的输出Y(ij) 
for i=1:s 
    for j=1:t 
        x=gf(ij); 
        if  x            cl=sum(h(gfMin+1:x+1))/p; 
            y(ij)=gfMin+(Xe-1-gfMin)*cl; 
        else 
            cu=sum(h(Xe+1:x+1))/(1-p); 
            y(ij)=Xe+(gfMax-Xe)

评论

共有 条评论