数字图像处理 Ch3 直方图处理
直方图处理
令 r k , k = 0 , 1 , 2 , . . . , L − 1 r_k, k = 0,1,2,...,L-1 rk,k=0,1,2,...,L−1表示一幅 L L L级灰度数字图像 f ( x , y ) f(x,y) f(x,y)的灰度。 f f f的归一化直方图定义为
h ( r k ) = n k , k = 0 , 1 , 2 , . . . , L − 1 h(r_k)=n_k, k=0,1,2,...,L-1 h(rk)=nk,k=0,1,2,...,L−1
上式中 n k n_k nk是 f f f中灰度 r k r_k rk的像素的数量,并且细分的灰度级称为直方图容器。
f f f的归一化直方图定义为 p ( r k ) = h ( r k ) / M N , k = 0 , 1 , 2 , . . . , L − 1 p(r_k)=h(r_k) / MN, k=0,1,2,...,L-1 p(rk)=h(rk)/MN,k=0,1,2,...,L−1
多数情况下我们处理的是归一化直方图。
1. 直方图均衡化
已经有文章完善地解释了关于直方图均衡化的问题描述、均衡化推导以及书中提到的例子 -> 直方图均衡化,可以参考这篇文章。
引用其所言,直方图均衡化要达到的目的即为:
仅仅依靠输入图像的直方图信息,就可以得到一个变换函数,利用该变换函数可以将输入图像达到上述效果,该过程就是直方图均衡化。
概率论的一个基本结论是,若已知 p r ( r ) p_r(r) pr(r)和 T ( r ) T(r) T(r),且 T ( r ) T(r) T(r)是连续的并且在感兴趣的值域上是可微的,则变换(映射)后的变量 s s s的PDF是 p s ( s ) = p r ( r ) ∣ d r d s ∣ p_s(s)=p_r(r) |\frac {dr} {ds}| ps(s)=pr(r)∣dsdr∣
图像处理中一个特别重要的变换函数是: s = T ( r ) = ( L − 1 ) ∫ 0 r p r ( w ) d w s=T(r)=(L-1)\int_0^r p_r(w)dw s=T(r)=(L−1)∫0rpr(w)dw
其中, w w w是假积分变量,右侧的积分是随机变量 r r r的累积分布函数(CDF)。以上式能够满足两个条件:
(a) T ( r ) T(r) T(r)在区间 0 ≤ r ≤ L − 1 0 \leq r \leq L - 1 0≤r≤L−1上是一个单调递增函数
(b) 对于 0 ≤ r ≤ L − 1 0 \leq r \leq L - 1 0≤r≤L−1,有 0 ≤ T ( r ) ≤ L − 1 0 \leq T(r) \leq L - 1 0≤T(r)≤L−1
可以得到 d s d r = d T ( r ) d r = ( L − 1 ) p r ( r ) \frac {ds} {dr} = \frac {dT(r)} {dr} = (L - 1)p_r(r) drds=drdT(r)=(L−1)pr(r),
并可以得到 p s ( s ) = p r ( r ) ∣ d r d s ∣ = 1 L − 1 , 0 ≤ s ≤ L − 1 p_s(s) = p_r(r) |\frac {dr} {ds}| = \frac {1} {L-1}, 0 \leq s \leq L-1 ps(s)