资源简介

首先读入图像,转化成hsi彩色空间,然后只对亮度I分量作直方图均衡化,最后合成三个分量返回到RGB图,但是这种方法容易使颜色失真,失去了部分图像细节。

资源截图

代码片段和文件信息

clear 
close all
clc
%读入彩色图像,分三个通道显示,然后在三个通道分别做直方图的均衡化
h=imread(‘test1.bmp‘);
imshow(h);
title(‘原图像‘);
h=rgb2hsv(h);%转到色调,饱和度,亮度空间
fr=h(::1);
fg=h(::2);
fb=h(::3);
figure
subplot(221)imshow(h);
title(‘转到HSV空间后‘);
subplot(222)imshow(fr);
subplot(223)imshow(fg);
subplot(224)imshow(fb);

figure
subplot(222)imhist(fr);
subplot(223)imhist(fg);
subplot(224)imhist(fb);
title(‘HSV三个分量的直方图‘);

fb1=histeq(fb);%只对亮度做均衡处理
figureimhist(fb1);
title(‘处理后的亮度直方图‘);

h1=cat(3frfgfb1);%再次合成后,发现图像变化
title(‘处理后的HSV图像‘);
figure
subplot(221)imshow(h1);
subplot(222)imshow(fr);
subplot(223)imshow(fg);
subplot(224)imshow(fb1);
h2=hsv2rgb(h1);
figureimshow(h2);
title(‘再转回rgb空间‘);

imwrite(h2‘h2.bmp‘); % 自动写入图像,不失真,保证和源图像大小一样

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      29516  2010-03-18 08:15  lena.jpg

     文件        919  2011-12-02 10:25  sanse2.m

----------- ---------  ---------- -----  ----

                30435                    2


评论

共有 条评论