更多内容关注公众号:数学的旋律
tb店铺搜:FUN STORE玩物社,专业买手挑选送礼好物
一、灰度空间的直方图均衡
1.直方图
灰度级范围为[0,L-1]的数字图像的直方图是离散函数 h ( r k ) = n k h(r_k)=n_k h(rk)=nk,其中 r k r_k rk是第 k k k级灰度值, n k n_k nk是图像中灰度为 r k r_k rk的像素个数。在实践中,经常用乘积 M N MN MN表示的图像总像素除每个分量来归一化直方图,通常 M M M和 N N N是图像的行数和列数。因此,归一化后的直方图由
p ( r k ) = n k M N p(r_k)={n_k\over{MN}} p(rk)=MNnk给出,其中 k = 0 , 1 , . . . , L − 1 k=0,1,...,L-1 k=0,1,...,L−1。归一化直方图的所有分量之和应等于1。
直观上,可以得出这样的结论:若一幅图像的像素倾向于占据整个可能的灰度级并且分布均匀,则该图像会有高对比度的外观并展示灰色调的较大变换。最终效果将是一幅灰度细节丰富且动态范围较大的图像。为实现该效果,我们需要一个变换函数,将输入图像直方图信息进行变换,得到均匀分布的图像。
2.变换函数应满足条件
考虑连续灰度值,并用变量 r r r表示待处理图像的灰度。通常,我们假设 r r r的取值区间为[0,L-1],且 r = 0 r = 0 r=0表示黑色, r = L − 1 r = L-1 r=L−1表示白色。在 r r r满足这些条件的情况下,我们将注意力集中到变换函数
s = T ( r ) 0 ≤ r ≤ L − 1 s = T(r)\ \ \ \ \ \ \ \ \ \ 0≤r≤L-1 s=T(r) 0≤r≤L−1上,对于输入图像中每个具有 r r r值的像素产生一个输出灰度值 s s s。为了实现变换后的灰度值均匀分布的效果,变换函数需满足以下条件:
(a) T ( r ) T(r) T(r)在区间[0,L-1]上为单调递增函数
(b) 当 0 ≤ r ≤ L − 1 0≤r≤L-1 0≤r≤L−1时, 0 ≤ T ( r ) ≤ L − 1 0≤T(r)≤L-1 0≤T(r)≤L−1,且 T ( r ) T(r) T(r)均匀分布
为了能用反函数
r = T − 1 ( s ) 0 ≤ s ≤ L − 1 r = T^{-1}(s)\ \ \ \ \ \ \ \ \ \ 0≤s≤L-