关于图像去雾中存在的一些待改进的地方

关于图像去雾中存在的一些待改进的地方

 

这一周在学习python的同时继续翻看了之前读过的论文,发现有些东西第一遍看的不太清楚马马虎虎,到第二遍重新读的时候才恍然大悟。比如之前一直不太清楚halo效应是如何产生的、为什么说是用暗通道先验条件的时候会对天空部分或明亮区域产生透射率估计不足的情况?之前只是知道这些结论但没有从根本上去理解这些现象的产生。通过二次翻阅论文,才算是理解了这些不足产生的原因,也算是一种收获吧!

Halo效应:

之前做过好多的仿真,我发现在仿真过程中或多或少总会产生halo效应,可见halo效应对复原出来的结果图像会造成很大的影响。Halo效应产生的过程如下所述:

在进行暗通道的求取时,第一步就是求彩色图像的三通道的最小值,然后在一个小窗口Ω内进行最小值滤波操作。在求取的三通道最小值图像中,物体(除了天空或较亮区域)的暗通道值普遍较低(接近于0),而天空等较亮区域不符合暗通道先验或者说其暗通道的值比较大。所以在物体的边缘处(比如物体和天空区域的交界处),用一个Ω窗口进行最小值滤波时,因为物体边缘的灰度像素信息会发生跳变(灰度不连续处),就有可能使边缘后面较亮的像素值在进行最小值滤波时会把边缘前面较低的值给调用过来,从而导致后面较亮部分的像素值变低,从而导致透射率的所求值偏大,复原出的无雾图像光强增大,直观表示为在边缘处产生白色光圈。

这就是halo效应易发生在景深变化剧烈处的原因。

关于对天空等较亮区域的透射率估计不足:

大气模型为:I(x)=J(x)t(x)+A(1-t(x))..............(1)

除却天空等明亮区域,大部分物体的暗通道值接近于0,也就是min(min(J(x)))趋近于0,所以我们通常得到

注意,上式只是透射率图的一个简单近似,实际上的推导如下:

对(1)式求暗通道操作得到

min(min(I))=t min(min(J))+A-At......................................(3)

t (min(min(J))-A)=min(min(I))-A......................................(4)

得到:

因为大部分物体的暗通道为0,所以(5)式的分母为1。但是明亮区域的亮度较高,可以说是它不符合DCP或者说它的暗通道值很高,接近于A,根据(5)式可知明亮区域的t应该是较大的(因为分母不为1,比1小),但实际上我们所采用的却是分母为一也就是(2)式来计算的,比实际值要小,所以说是对天空等明亮区域的透射率估计不足!

还有一种关于透射率估计不足的情况是:

如果一幅图像有着在R、G、B三通道上直方图均匀分布的情况,则 DCP可以恢复出一幅差不多的透射率图。但是如果在三通道上的分布差异较大的话,如一幅沙尘暴图片(blue分量在光谱上被大气粒子吸收从而导致b分量很小),在经过最小值操作后(最小值滤波),暗通道的直方图分布近似于b通道,因为b分量被吸收的原因所以很小,则在暗通道图中会粗估雾霾的厚度(b很小,粗估为较薄的雾霾,而实际情况是沙尘暴天气的雾霾很厚),改进方法就是对所得到的透射率图进行亮度变换,例如γ变换。

总结:

首先把学习过程中存在的问题和疑惑解决了,在整个的过程中毫无疑问的又加深了自己的理解。其次也是最重要的是只有当清楚地认识和了解到现有方法的不足之处在哪里,才会知道自己应该在哪里下功夫,才能慢慢的摸索和找点子,才能针对某一处不足做出自己相应的调整。

猜你喜欢

转载自blog.csdn.net/weixin_41907390/article/details/83892648
今日推荐