Visibility in Bad Weather from a Single Image (CVPR2008)
核心思想:用MRF建模,最大化局部对比度。
摘要:算法有三个假设:1、有雾图像的对比度比无雾图像的对比度低;2、透射率(与原文中的量略有不同,但本质是一样的)的变化只与物体(或场景)的深度有关,因此局部区域内的透射率是接近恒定的,而且除了少数不连续的像素点意外,相邻区域透射率的变化是平滑的;3、复原之后图像的统计特性应该与实际的无雾照片特性一致(由于该算法只是一种增强对比度的算法,理论上并不是为了直接还原无雾照片,所以引入该假设来说明该算法可以达到近似去雾的效果)。
先验信息:图像的对比度(contrast)。
模型:MRF(Markov random fields)。
适用图片类型:彩色,灰色图。
优点:解决了去雾需要同场景多张图片的痛点。解决单张图像去雾这个ill-posed的问题。
待改进的:1.halo效应。可能是通道选择2.不能知道A的具体值。
马尔科夫模型算法的去雾过程主要有三步:第一步是依据天空区域的三个影著特性计算大气光值。第二步是采用MRF模型和双边滤波求取传播图。该步骤的目标在于通过基于图切的a-扩展技术来分配准确的像素标签,并使用双边滤波消除冗余的细节信息。最后,依据大气散射模型,将估计得到的人气光值和传播图带入散射模型,以计算得到去雾后图像的场景辐照度。
具体实现:1.利用大气模型,最终得到大气光值和景深的关系。
2.(先验信息)将利用边的对比度求出最大A值对应的最大对比度值。A=167。
将图像的对比度量化为图像的梯度和(可以理解为图像边缘越多对比度越强),那么图像对比度可以表示为:
Cedges(I)=∑t∥∇I(x)∥Cedges(I)=∑t‖∇I(x)‖
从上文的大气散射模型可以得到假设1的论点(因为 t≤1t≤1):
∑t∥∇I(x)∥=t∑t∥∇J(x)∥≤∑t∥∇I(x)∥∑t‖∇I(x)‖=t∑t‖∇J(x)‖≤∑t‖∇I(x)‖
3.空气光平滑约束。MRFs的模型。
该文章用马尔可夫随机场(Markov Random Field, MRF)对透射图进行建模。其中MRF的势能函数包含两项:1、“数据项”,表示的是局部区域在各个透射率下的对比度(用上文提到的梯度和表示);2、“平滑项”,表示相邻区域的透射率应该比较相近,是一个正则化项。建模完成后,通过 graph cuts 或者 belief propagation 算法可以求解最大化势能函数时的最优透射率,从而得到估计的透射图 t(x)。
补充:
DehazeNet: An End-to-End System for Single Image Haze Removal