何教授去雾算法C++实现(调试)

前几日有幸拜读了何教授的一篇文章《Single Image Haze Removal Using Dark Channel Prior》的文章,结合最近接收的工作就像将去雾算法增强DCM图像。

算法的基本思想并不复杂,详细的原理和推导大家可以参考大牛们的博客和何教授的论文原文。这里用几个公式概述算法的主题部分。

首先对于暗通道的求取:


Ω以x为中心的运算核,c是RGB三个通道。这个公式就是说求取运算核中所有通道的最小值,也就是对图像进行最小值滤波

估计折射率t:

w取值0.95,A是全局光值,我在程序中设定的是220(8bit)

得到折射率图像之后便是,由公式反推出原始的图像了:


t0典型的取值0.1


以上便是算法的大体流程,下面贴出我在运行时的结果。用作例子的图像是上篇博客里面读取出来的DCM图像数据

原始图像:

暗通道图像:


得到的预估折射率图像:

由预估的折射率得到的“原始图像”:



最后我贴出我调试用的工程和找到的一些资料希望对对各位看官有所帮助。

http://download.csdn.net/detail/m_buddy/9586934

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值