序、直方图及其匹配

1. 直方图

是一种统计信息。

2. 直方图匹配

新直方图的长宽是确定的。无非就是从原直方图左边开始一直取,填充到右边的直方图里面。换句话说,也就是 $s = T(r) = (L-1)\int _o^r P_r(r) {\rm d }r$。

一、灰度直方图匹配算法

Untitled

Untitled

1. 获取灰度值的频数分布、概率分布、累积分布

i. 获取频数分布 ndf

通过如下算法,获取给定 16 位深度灰度图像 img_bw 的频数分布 ndf

# ndf[i] 表示灰度为 i 的像素的数目
ndf = np.zeros(shape=(256), dtype=int)
for r in range(R):
    for c in range(C):
        ndf[img_bw[r, c]] += 1

如对于上述灰度图像,可得频数分布如下:

Untitled

这一结果也匹配了 Photoshop 显示中的直方图:

Untitled

ii. 获取概率分布 pdf

概率分布即是频数分布除以图片中的像素总数:

# pdf[i] 表示灰度为 i 的像素的出现概率
pdf = ndf / (R * C)

ii. 获取累积分布 cdf