图像去雾方法的微小改进

1、引言

本文是基于暗通道先验的图像去雾方法,做了微小的改进。

2、正文

已知暗通道先验图像去雾方法步骤如下:

1)已知,图像退化模型为:

其中I(x)为物理设备获得图像,J(x)为真实的图像,A为天空光(airlight),t(x)为透射率,图像去雾的主要工作是计算透视率t(x),估计天空光A。为什么说是估计天空光,因为天空光,就是天空的光线,从太阳那里直射过来的(^_^)。

2)根据暗通道先验理论经过一系列的换算得到:

根据上面的公式计算得到透射率的估计值,然后用抠图方法,得到最后的透射率。

由于抠图需要进行迭代计算,一般不好估计开销,也就是时间开销可能很大,因此不适合作为工业技术。为此很多人尝试对估计的透射率进行滤波,如双边滤波,引导滤波,联合引导滤波等,这些都是锐化边缘、平滑细节的滤波。

经过一些实验,我发现,其实按照下面的公式,得到的透射率已经具有很好的效果:

我的方法得到的结果,见下图:

Figure:暗通道窗口大小3x3,天空光为暗通道图像最大的像素值

如果在估计透射率的时候,对输入图像(或对透射率)进行锐化边缘、平滑细节的滤波,去雾后图像更清晰,我实现了一种简单的滤波,得到如下效果:


请稍微用点心仔细观察,(^_^)!

3、总结

至于为什么会得到这样的效果,我研究的不是很透彻,未来有空会去弄明白。有人分析,当暗通道窗口达到14以上,不用抠图方法,原方法去雾的效果就已经很好了,不过相应的时间开销会很大,我这里只用了3x3的暗通道计算窗口,当然速度很快了。

总之,如果质疑我的方法的话,请查阅我的代码,在:https://github.com/huneng/Image-dehazing,附有测试图片。欢迎批评指正。



Figure 2:左:原图,中:图像为滤波,右:图像滤波


猜你喜欢

转载自blog.csdn.net/huneng1991/article/details/45049009