以数形结合的方式,灰度图像为例,直观简单的介绍了常规直方图均衡化算法的下列问题: 1. 灰度级是如何扩展的
2. 为何映射函数选择累积概率分布(CDF),选取CDF有何好处
3. 原始图像某一灰度级x,对应CDF为F(k),均衡化后对应的灰度级y,为何y=255*F(k) 4. 为何均衡化后Py(y)=1/255
第一个问题:
图(1)
图(1)中(a)为均衡化前直方图(b)为对应的累积概率分布函数(c)为均衡化后直方图 1.将图(a)(b)的定义域补充完整,既灰度范围为0~255。注意(b)中F(x)函数(同CDF函数)定义域为0~255,x<=x1时F(x)=0,x>=x2时F(x)=1,对于定义域0~255,F(x)都是存在的。
2.为了和CDF函数比较,做y=x,如(b)图中红线所示,值域为0~255。y表示新灰度级,x表示旧灰度级,按此函数映射,则映射后灰度级不发生改变,如图中绿线所示。
3.观察使用累积概率分布函数映射,如图中黑线所示,不难看到映射后灰度级为0~255,灰度级得到了扩展。CDF函数可以将灰度值重新分配,分配过程见问题2。
第二个问题:
图2
1. 映射函数应该满足:(1)单调递增,一一映射,这样灰度级0~255映射后大小顺序不会
发生改变,既灰度较小的映射后还是小灰度,灰度较大的映射后还是大灰度。(2)灰度0~255映射后灰度还应该在0~255这个范围内。CDF函数满足这两个先决条件。 2. 选择CDF的优势在哪?
(1)可以将一个区间的灰度x1~x2映射至全灰度范围0~255上。
(2)CDF函数是根据原始图像的直方图自适应的,观察图(2)左侧实心黄球(y=x映射,灰度级不变映射)与左侧空心矩形(CDF映射),(a)中高概率密度区间会使(b)中CDF函数(F(x))快速增加,这样CDF函数在此段的斜率会很大,那么(a)中高概率密度区间对应的灰度区间会被映射到一个宽的灰度范围内(将集中的灰度分配给其他灰度,以达到均衡)。再观察右侧实心黄球(y=x映射)与右侧空心矩形(CDF映射),(a)中低概率密度区间会使(b)中CDF函数(F(x))缓慢增加,这样CDF函数在此段的斜率会很小,那么(a)中低概率密度区间对应的灰度区间会被映射到一个窄的灰度范围内(将低概率的灰度级合并,以达到均衡)。旧灰度值对应的新灰度值见问题3。 (左侧实心黄球的高度小于左侧空心矩形的高度;右侧实心黄球的高度大于右侧实心黄球的高度)。
第三个问题:
图(3)
如图(3)黄线所示(a)中灰度值为k在(b)中经行CDF映射,值为F(k)。F(x)的值域为0~1,Py(y)函数的定义域为0~255,所以新灰度值y=255*F(k)。(观察黄线穿过的两个纵轴,类似单位“1”的转换问题)。新灰度值的概率见问题4。
第四个问题:
图(4)
均衡化后的概率密度Py(y)应为常数,这样信息熵最大,也是直方图均衡化的目的。任意选取灰度区间[x3,x4]。x3对应的CDF值为F(x3),新灰度级y3;x4对应的CDF值为F(x4),新灰度级y4。
?x4x3P(x)dx??Py(y)dy
y3y4F(x4)-F(x3)=(y4-y3)*Py(y)
F(x4)-F(x3)= 255*[F(x4)-F(x3)] *Py(y) Py(y)=1/255
附言:
1.以上把灰度值做为连续值来说明均衡化的原理,来帮助初学者了解此种方法中一些不好理解的问题。
2.实际中灰度为离散量,此时y=取整(255*F(k)),会出现量化误差,故均衡化后的直方图只是近似平均,而不是绝对平均。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库直方图均衡化原理、选取累积概率分布(CDF)在线全文阅读。
相关推荐: