图像直方图均衡化

图像直方图均衡化_第1张图片

上图是图像直方图均衡化的伪代码,下面根据伪代码解释均衡化的运算过程。一幅图像中每一个像素级所占的比例各不相同,因此导致视觉上不是很均衡。因此需要有一种方法将不同的像素级调整为所占比例大致一致,最好是每一个像素级占比例是一样的。而所占比例是一个概率问题,也就是说希望变化之后得到的每一个新的像素级别概率是一样的,或者说概率密度函数一样。按照数字图像处理中的老套路,先从连续变化进行推导,对于连续变化的像素级别而言。就是S=T(r)之后,每一个Sk的概率密度函数都是一样的,其中S是变换之后的像素值,而r是原来的像素值,T是一个变换函数。其中T转换函数必须满足下面两个条件:

1 T(r)在r的定义域空间内是一个单值单调递增函数;

2 r的取值范围和S的取值范围是一样的,都在[0,1]中

第一个条件保证,r和S具备一一映射关系,否则可能出现某一范围内的像素值颠倒顺序;第二个条件保证S和r都可以作为一个概率。假设存在r的概率密度函数Pr以及S的概率密度函数Ps,则Ps和Pr之间存在下列关系:Ps=Pr*|ds/dr|。

假设函数T为对Pr求概率,则ds/dr=Pr,因此有Ps=1;也就是得到上面要求各个密度级别存在的概率一致的条件。

根据连续的概率密度级别来求离散的概率可以知道,Pr=Nr/N;而Sk则为前k个Pr的累积,这样得到的才是区域内的概率。其中N为伪代码中的number,而sum则是累加过程,rang则是新的像素级别的映射范围。

你可能感兴趣的:(图像处理)