直方图均衡及分段灰度变换

上传人:鲁** 文档编号:560298806 上传时间:2022-10-26 格式:DOC 页数:7 大小:429KB
返回 下载 相关 举报
直方图均衡及分段灰度变换_第1页
第1页 / 共7页
直方图均衡及分段灰度变换_第2页
第2页 / 共7页
直方图均衡及分段灰度变换_第3页
第3页 / 共7页
直方图均衡及分段灰度变换_第4页
第4页 / 共7页
直方图均衡及分段灰度变换_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《直方图均衡及分段灰度变换》由会员分享,可在线阅读,更多相关《直方图均衡及分段灰度变换(7页珍藏版)》请在金锄头文库上搜索。

1、图像的直方图均衡与分段灰度变换F1003025 5100309018 董威、基本原理与主要用途;1.直方图均衡与分段灰度变换的基本原理; 直方图均衡化的目的是将原始图像的直方图变为均衡分布的形式, 即将一已知灰度 概率密度分布的图像, 经过某种变换变成一幅具有均匀灰度概率密度分布的新图像, 从 而改善图像的灰度层次。它的基本思想是把原始图像的直方图变换成均匀分布的形式, 这样就增加了像素灰度值的动态范围,从而达到了增强图像整体对比度的效果。MATLAB 图像处理工具箱中提供的histeq 函数,可以实现直方图的均衡化。线性变换是指在图像灰度范围内分段对逐个像元进行处理,是将原图像亮度值动态范围

2、按线性关系 (线性函数 )变换到指定范围或整个动态范围。在实际运算中给定的是 2 个亮度区间,即要把输入图像的某个亮度值区间a,b映射为输出图像的亮度值区间c,d。即按线性比例对图像每一个象素灰度作灰度线性变换 ,改善图像视觉效果。 在实际图像处 理中 ,为了突出感兴趣的目标或灰度区域,相对抑制不感兴趣的灰度区域,常常采用分段线性变换来进行图像灰度的处理。MATLAB图像处理工具箱中提供的imadjust函数,可以实现上述的线性变换。2. 主要用途; 在获取图像的过程中,由于噪声,光照等外界环境或设备本身的原因,原始数字图 像质量会退化。例如一般成像系统只具有一定的响应亮度,常出现对比度不足的

3、弊病, 影响视觉效果,在这些情况下需要对图像做增强处理。图像增强可以提高清晰度,改善 图像的视觉效果,突出图像中的有用信息,削弱或消除不需要的信息。、实现方案与源码;1. 直方图均衡化;MATLAB图像处理工具箱的 histep函数可以很方便的实现直方图均衡化。由于原图片是彩色,因而在转换前需要用 rgb2gray 函数将图片转化为灰度图。源程序如 下:a=imread(e:b.bmp);% 读取图像b=rgb2gray(a); %转化为灰度图像subplot(121),imshow(a);subplot(122),imhist (b);实现结果如下:原图转化为的灰度图像subplot(121

4、),imshow(b);subplot(122),imhist(b); %显示灰度图像与其直方图 实现结果如下:c=histeq(b); %直方图均衡化 subplot(121),imshow(b); subplot(122),imhist (b); %显示处理后的图像与其直方图 实现结果如下:不调用histeq函数,利用 matlab语言也可直接编程实现图像的直方图均衡化处理。图像的 灰度直方图均衡化公式:=珥環)二士砒N二士耳(耳)公式中,T(rk)来表示原图像的第 k个灰度级的转换函数。龙表示总和。Enj/N表示0j个灰度级的像素数量总和与像素总数的比值,也就是前面讲过的百分位(当前色阶

5、与前面色阶的所有像素数量 主、像素数量)。EPk)表示第0k的灰度级出现概率累积相加。因为s是归一化的数值(s 0,1),要转换为0255的颜色值,需要再乘上 255,即S=EPk)*255。流程如下:读取图像转换为灰度图像计算各灰度出现的概率计算新的各灰度出现的概率一一 填充各像素点新的灰度值一一显示图像相应的源程序如下:a=imread(e:b.bmp);%读取图像m, n,o =size(a);grayPic=rgb2gray(a);figure,imshow(a);figure,imshow(grayPic);gp=zeros(1,256); % 计算各灰度出现的概率fori=1:25

6、6gp(i)=le ngth(fi nd(grayPic=(i_1)/(m* n);endfigure,bar(0:255,gp);title(原图像直方图);xlabel(灰度值);ylabel( 出现概率);newGp=zeros(1,256); %计算新的各灰度出现的概率S仁 zeros(1,256);S2=zeros(1,256);tmp=0;fori=1:256tmp=tmp+gp(i);S1(i)=tmp;S2(i)=rou nd(S1(i)*256);endfori=1:256n ewGp(i)=sum(gp(fi nd(S2=i);endfigure,bar(0:255 ,n

7、ewGp);title(均衡化后的直方图);xlabel(灰度值);ylabel( 出现概率);n ewGrayPic=grayPic; %填充各像素点新的灰度值 fori=1:256n ewGrayPic(fi nd(grayPic=(i-1)=S2(i);endfigure,imshow( newGrayPic);实现结果与调用函数一致。2.分段线性灰度变换;通过分段线性变换,原图f(x,y)中灰度值在0到a和b到Mf间的动态范围映射到 g(x,y)后被压缩,而a到b区间的动态范围增加,从而增强了这个范围内的对比度。为了实现灰度线性变换在图像处理中的应用,本文以彩色图像b.bmp为例,采用

8、MATLAB语言编制了分段线性变换的实现程序,并获得了变换效果。编程思路如下: 设原图像f (x, y )灰度范围为0,M,变换后的图像 g (x, y )灰度范围为0,Mg,M a dM f b胃(尸k/() b aafy)bOf(x.y)=a&di=c& di=d &dib);di2=di;di2( n1)=(di( n1)-a)*(c1-a1)/(c-a)+a1;di2( n2)=(di( n2)-c)*(d1-c1)/(d-c)+c1;di2( n3)=(di( n3)-d)*(b1-d1)/(b-d)+d1;i2=ui nt8(di2);subplot(221),imshow(i);

9、subplot(222),imshow(i2);subplot(223),imhist(i); subplot(224),imhist(i2);实现结果如下:原图转化为的灰度图像分段灰度变换后图像1500100050000WO200三、对实验结果的总结和分析; 直方图均衡化前后对比如下: 原图的灰度图像变换后图像通过对比可以看出原图动态范围较小,像素集中在图像中间调区域,亮调和暗调几乎没有像素,所以图像平淡,对比度低。均衡化后直方图扩展到整个图象灰度允许的范围,对比度明显增强。用直方图均衡化后, 图像的直方图的灰度间隔被拉大了,均衡化的图像的一些细节显示了出来,这有利于图像的分析和识别。分段灰度变换前后对比如下:变换后图像原灰度图通过对比可以看出原图经过分段变换前后的对比图可知原图中间得到拉伸,对比度得 到增强。在显示设备的亮度动态范围不足以满足要求时,可以用这种变换再显示,以利于 在较大的灰度范围内显示出灰度值的差异。图像的像素灰度变化是随机的,直方图的图形高低不齐,直方图均衡化就是用一定的算法使直方图大致平和。灰度变换主要通过对原图像素值进行重新分配,提高图像的对比度;直方图处理是把原始图的直方图变换为均匀分布的形式,增加像素灰度值的动态范围以达到增图像整体对比度的效果;图像增强处理并不能使原始图像信息增加,而只能增强对某种信息的辨别能力,提高了图像的视觉特性。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号