IEEE 2014
以色列 希伯来大学
Matan Sulami Itamar Glatzer Raanan Fattal Mike Werman
作者主页:http://www.cs.huji.ac.il/~raananf/
(1-t(x))A表现为环境光,A~表示矢量方向=A/||A||。
不精准的A会让t也不准确,由于t是用A求得的。不正确的A的模会导致术后出图像在亮度上的错误表现。并且这个多通道的偏差取决于t。当A偏大时,t小的地方(近景)会过曝,t大的地方(远景)会偏暗。而当A偏小时则相反。亮度的偏差依赖于t和图像的内容。
TAN认为最亮的像素充满了雾,是一个有雾区域的像素。
TAREL是基于灰度世界的假设,先对图像做白平衡,然后用A(1,1,1)进行去雾。
在这个算法中,将去雾分成了两个部分 1)求取A矢量的方向 2)求取A矢量的模长
求取方向A~
在去雾公式中,其中的J又可以表示成这样,其中l表示图像的明暗系数,反映亮度是一个标量;R表示图像表面反射系数,是一个矢量,反映了光的色度,并且||R||=1。
那么去雾公式可以写成,其中l(x)表示ti*l’(x),ti表示第i块内的透射率,Ri是第i块内的反射率。
由于块具有局部平滑的特性。假设块内R和t保持不变。公式(3)可以理解为一个线性方程。那么一个块内的像素RGB会分布在一条直线上。且根据公式可知,这条线的方向为R矢量方向,偏移矢量为A~。
因此,每一个块的直线与原点形成一个平面,两个平面的交线就是候选向量。可以使用最少两个块或更多块的交点去恢复A~。
计算第i个块对应的直线和其对应的第j个候选向量计算最小欧式距离dij。对所有的dij进行排序,选取中值对应的那个块i。再从块i中选取其对应的距离dij最小的那个j个候选向量。这就是要求得的A~。用公式表示为。
上图可以看出,块内像素分布并不是完全的分布在直线上。块内下像素直线由所有像素的重心和PCA(主成分分析)过后的最大特征值对应的特征向量。
为了防止异常值,首先对块内所有像素进行一次PCA