谭升
非主流人工智能科学家 我和外面那些妖艳的货不一样

【数字图像处理】5.11:灰度图像-图像增强 直方图匹配(规定化)Histogram Specification”

开篇废话

开篇废话,本文应该是图像增强部分的最后一篇,直方图匹配(规定化)通俗一点说,就是人为规定输出图像的直方图,根据上文的说的均衡化的推倒过程,其中我们设定输出直方图为 $\frac{1}{L-1}$ 其实这就是规定化的,只是规定为一个常数,如果想要实现输出图像要根据输入的直方图产生,我们就需要使用直方图规定化,或直方图均衡,但如果直方图使用恒定,比如我们不想用常数,而是想用高斯,可以直接根据上文改一个高斯出来,这就省去了每次调用时都要人工产生直方图,更官方一点的话就是直方图匹配是直方图均衡的一般化,直方图均衡是直方图规定化的特例(当规定直方图为常数,例如都是1)。

数学原理

看一下原理,直方图匹配使用了直方图均衡做中间环节,将原图直方图和目标直方图进行均衡,然后互射,从原始图像直接映射到目标直方图均衡的结果,然后根据目标直方图均衡的逆映射,得到目标灰度值,示意图如下:
Center
上面的示意图完整的表示了整个算法过程:

  1. 计算原图的直方图Hr,输入目标直方图Hs
  2. 均衡Hr,Hs得到映射 $G(r)$ 和 $Z(s)$
  3. 得到最终映射为 $Z^{-1}(G(r))$
    对于原图灰度r计算T为最终要得到的映射关系:

Center 1
我们输入(规定)一个随机变量,具有如下性质:
Center 2
根据上面两个式子,我们有:
Center 3
那么就必须有:
Center 4
这就是上面的算法过程的数学过程。
需要说明的是,实际操作因为离散的原因G(z)有可能不是满射的,也就是说G^-1可能会出现对应空值的情况,比如原始灰度a->均衡后灰度b->逆映射到目标是为空。为了防止这种情况产生大量0灰度结果,我们可以使用填充技术,如果逆映射为空,就用附近的灰度结果来填充。

代码

结果对比

原图:
Center 5
原图直方图:
Center 6
直方图匹配1:
Center 7
目标直方图:
Center 8
实际操作结果直方图:
Center 9
直方图匹配2:
Center 10
目标直方图:
Center 11
实际操作结果直方图:
Center 12
直方图匹配3:
Center 13
目标直方图:
Center 14
实际操作结果直方图:
Center 15
直方图匹配4:
Center 16
目标直方图:
Center 17
实际操作结果直方图:
Center 18

总结

直翻图匹配交直方图均衡使用更灵活,更能控制输出的灰度特性,主要优点就是更加自由可以自己设计目标,所以应用范围交直方图均衡更加广泛,当目标直方图设计为常数是,直方图匹配就是直方图均衡。
待续。。。

Share

You may also like...

说点什么

avatar
  Subscribe  
提醒

试录了几节线性代数视频课程,欢迎大家支持,
点击试看
点击购买更多内容

由于博客移至wordpress,部分公式和代码显示不正常,博主正在努力修改,如发现公式显示错误,请及时在文章下留言,感谢您的帮助,尽请原谅!