一种改进的MSCNN水下图像去雾方法

专利检索2022-05-11  17


一种改进的mscnn水下图像去雾方法
技术领域
1.本发明属于图像处理技术领域,具体涉及一种改进的mscnn水下图像去雾方法。


背景技术:

2.水下图像是水下信息的重要载体和呈现方式,对海洋资源的探索、开发、利用具有至关 重要的作用。然而,由于客观成像环境和设备的限制,水下图像质量总是差强人意,具有对 比度低、细节模糊、颜色偏差等退化现象,严重制约相关领域的发展。因此,如何通过后期 算法对退化的水下图像进行增强和复原越来越受到学者们的关注。近些年,随着深度学习技 术的快速发展,基于深度学习的水下图像增强与复原技术取得了巨大进展。
3.近些年,在机器学习的热潮中,涌现了很多使用机器学习技术进行图像去雾的算法。tang 等人系统地研究了在一个学习框架中不同的与雾霆相关的特征,以确定最佳的图像去雾的特 征组合,使用随机森林从多种先验特征中回归得到有雾图像的大气透射率,进而恢复出清晰 的图像。levin等人提出的使用合成方法来生成训练数据也对后面的很多基于机器学习的方 法成为可能。zhu等人提出使用颜色衰减先验从输入的有雾图像中进行去雾,通过建立一种 线性模型来对这种新先验下的模糊图像的场景深度进行建模,并采用监督学习的方法来学习 模型的参数,可以很好地恢复深度信息。基于机器学习的图像算法在传统算法的基础上提升 了很大的效果,但是相比于图像超分辨率等图像重建任务,单幅图像去雾在主观评价和客观 评价上均有很大的进步空间,仍存在很多问题未进行优化解决。
4.从大气散射模型可以看出,主动光照明情况下图像去雾的关键在于正确的求解大气光和 透射率值,而利用深度学习的方法进行图像去雾能够达到较为理想的效果,但是由于该类方 法的带雾的训练数据集是由人工合成的,因此网络拟合出的模型与真实场景存在一定的差距, 同时损失函数采用的是均方误差的形式,也就意味着网络仅仅能减少图像整体的像素值差异, 并不能保证去雾后的图像和有雾图像的整体区域的相似性,因此基于深度学习的方法存在难 以训练,去雾效果严重依赖训练数据集的质量的缺点,同时传统方法如retinex方法无法获 得对存在大面积的天空区域的图像有效的处理效果,对透射率的估计值偏低等缺点。


技术实现要素:

5.有鉴于此,本发明的目的是提供一种改进的mscnn水下图像去雾方法,可以有效提升去 雾效果。
6.一种图像去雾算法,包括如下步骤:
7.步骤1、提取图像的r,g,b三通道,进行归一化处理,分别再用clahe算法进行处理, 然后再把处理后的三通道图像合成一幅图像;
8.步骤2、提取图像的r,g,b三通道,分别用retinex算法中的msrcr算法处理三通道图 像,然后再把处理之后的三通道图像合成一幅图像;
9.步骤3、把步骤1和步骤2处理后的图像,进行加权融合,得到融合后图像,设为图像
d;
10.步骤4、将图像d进行预处理;
11.步骤5、训练mscnn网络,然后将处理后的图像d导入训练好的mscnn模型中估算出其 透射率t(x);
12.步骤6、使用暗通道先验的方法对图像d进行最大光照值的估算,得到背景光值c;
13.步骤7、代入公式i(x)=j(x)t(x) c[1-t(x)],恢复出无雾图像i(x)。
[0014]
较佳的,其中,mscnn网络训练时,首先使用可以估计图像景深d(x)的cnn网络,使用 公式t(x)=e-βd(x)(其中β为大气吸收系数)估算出输入的清晰图像e的透射率,随后 模型随机产生背景光值a,使用公式i(x)=j(x)t(x) a[1-t(x)]合成有雾图像,再将合成的有雾图 像送入mscnn网络进行训练。
[0015]
较佳的,所述步骤1中,采用8
×
8的矩形块将图像分为多个不同的子区域,
[0016]
较佳的,所述步骤1中,clip-limit为0.01。
[0017]
较佳的,所述步骤2中,融合时r,g,b三通道图像对应采用的尺度分别为σ=20,σ=100, σ=200的高斯函数。
[0018]
较佳的,所述步骤3中,通过调节加权融合系数,其公式如下:
[0019]
d=ta (1-t)b
[0020]
其中d代表最后融合的图像,a代表clahe处理之后的图像,b代表msrcr处理之后的图 像,t是融合加权系数,为0.95。
[0021]
较佳的,所述步骤4中,预处理包括白平衡。
[0022]
较佳的,所述步骤4中,预处理包括对比度增强。
[0023]
较佳的,所述步骤4中,预处理包括伽马增强。
[0024]
较佳的,所述步骤4中,其中伽马增强中采用的gamma值为0.9。
[0025]
本发明具有如下有益效果:
[0026]
本发明提出了一种改进的mscnn水下图像去雾方法,是先对有雾图像进行基于retinex 和clahe的处理均匀图片的光照,再将处理后的图像进行白平衡校正、对比度增强等预处理, 之后将图像输入训练好的mscnn模型中估算出图像的透射率,同时使用暗通道先验的方法得 到背景光强,最终得到去雾后图像;本发明结合了retinex和clahe对水下图像进行亮度均 衡及对比度提升,使该方法针对水下环境低照度、光照不均匀且瑞利散射现象明显等复杂情 况更具优势,解决了现有技术中对非均匀光照水下图像复原过程中容易产生光晕及过曝的情 况;相比较现有方法,该方法在水下图像去雾效果上有了很大的提升,各项客观评价指标均 有提高。
附图说明
[0027]
图1为本发明的总体运行流程图。
[0028]
图2为本发明使用的mscnn去雾算法的流程图。
[0029]
图3(a)为原始水下有雾图像;图3(b)为使用本发明去雾处理方法得到的去雾图像。
具体实施方式
[0030]
下面结合附图并举实施例,对本发明进行详细描述。
[0031]
1、水下成像原理
[0032]
在水下环境中,成像系统获得的图像主要由两部分组成,一是经由水体粒子吸收和散射 作用而衰减后的目标反射光,二是由于水体粒子散射形成的背景光,其数学表达式为:
[0033]itotal
(x,y)=d(x,y) b(x,y)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0034][0035]
b(x,y)=∫
θ
b(θ)
approx
dθ=b

[1-t(x,y)]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0036]
其中i
total
为成像系统获得的原始图像,即为水下模糊图像;d(x,y)为景物表面反射的光经 过水体衰减和经过前向散射作用后到达成像系统的光强;b(x,y)为由水下粒子后向散射产生 的水下背景光强。
[0037]
d(x,y)的表达式为:
[0038][0039]
其中为水下目标的有效辐射信息,t(x,y)=e-β(x,y)ρ(x,y)
为光在水下的传输率, ρ(x,y)为光源和成像系统间的相对距离,β(x,y)为水体对传输光吸收和散射效应的总衰减系数。
[0040]
b(x,y)的表达式为:
[0041]
b(x,y)=∫
θ
b(θ)
approx
dθ=b

[1-t(x,y)]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0042]
其中b(θ)
approx
为后向散射体积元函数,θ表示对一确定的水体体积元所有可能发生的散 射角度集,b

为水下无穷远处的背景光强。
[0043]
2、基于retinex和clahe的非均匀光照图片增强技术
[0044]
1)带颜色恢复的多尺度retinex算法
[0045]
retinex理论最早由美国物理学家edwin land提出,该理论是基于色彩恒常性理论的。 所谓色彩恒常性,是指人类对物体颜色的判断,不会因为光照情况的变化而改变,表现出恒 常性。retinex理论认为人类感知到的物体颜色不受外界光照情况的影响,只与物体本身的 反射性质有关。因此我们可以使用retinex理论来去除水下模糊图像的颜色偏移,实现颜色 保真效果。retinex理论将图像s(x,y)视为环境因素所决定的照射分量l(x,y)和物体本质属性 所决定的反射分量r(x,y)的乘积,如下式:
[0046]
s(x,y)=l(x,y)
·
r(x,y)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0047]
照射分量l(x,y)决定了图像s(x,y)的动态范围,反射分量l(x,y)反映了物体本身的反射性 质。retinex算法的本质就是把图像视作照射分量和反射分量之和,再把照射分量去除,消 除外界条件对图像的影响,得到反射分量,即物体本来的属性。
[0048]
颜色恢复的多尺度retinex算法原理为:
[0049]
[0050][0051]
其中,ak(x,y)表示非线性调节系数,n表示波段数,ik(x,y)表示第k个波段的图像,β表 示增益调节系数。可以看出,与一般的多尺度retinex算法相比,颜色恢复的多尺度retinex 算法在它的基础上加入了调整因子ak(x,y)。调整因子ak(x,y)的作用就是根据原图像r,g,b分量 的比值,相应调整多尺度retinex算法增强后的图像的r,g,b分量,避免颜色失真。
[0052]
2)clahe直方图的均衡化
[0053]
低照度水下图像的直方图分布较窄,且值一般较低,而clahe可以重新改变直方图的分 布,使像素级分布在0到255内,使其变得均匀,一定程度上去除了色偏,同时提高了对比 度,展现更多的细节。clahe方法的具体实现步骤如下:
[0054]
将输人的图像分成m
×
n个不重复的子区域.
[0055]
b)对分割的每个子区域的灰度级直方图进行平均分配后计算结果相同的像素.即平均像 素为
[0056][0057]
其中,n
gray
表示子区域中灰度级的总像素,n
x
表示每个小区域x轴上的像素数,ny表 示每个小区域y轴上的像素数。
[0058]
c)将每个小区域直方图中大于的像素数截取,k表示截取系数,并求出截取部分的 总像素为∑nv,然后求出截取到的总像数分配到每个灰度级的像素数为:
[0059][0060]
d)分别对每个子区域重复步骤(a)(b)(c)以后对得到的每块子区域裁剪后的新直方图 进行直方图均衡化,并使用变换函数得到新的灰度值.
[0061]
3)基于clare和多尺度retinex融合的新思想
[0062]
为了解决受光照不均影响的水下图像,本发明考虑到retinex算法的不足之处,即对于 光照变化较大的图像会出现光晕现象导致彩色图片颜色泛白、失真。而恰好clahe算法可以 通过直方图限幅来增强图像的局部对比度减少光照变化.因此采用两种算法融合后用做图像 增强的新算法.
[0063]
通常融合后的图像在保留原始图像的优点的同时,需要尽可能的增加细节信息量.图像融 合层次可分为三个:决策级融合、特征级融合、数据级融合.数据级融合是高层次图像融合的 基础,它直接处理传感器在多个场景下采集的数据,尽可能的保留原始场景.提供其他层系所 不能提供的纹理信息,也是当前融合图像研究的重点之一常用的方法有加权平均法、小波变 换法等.其中加权平均法(weighted averaging,wa)可以将几幅质量不同的图像信息直接融合, 它具有简单、直观、运算速度快的优点,同时可以提高图像的信噪比,因此本发明选取采用 像素加权平均法将clare和多尺度retinex算法分别处理后
的图像进行融合。
[0064]
3、基于多尺度卷积网络mscnn的图像去雾算法
[0065]
现有的图像去雾方法的性能受到手工提取的特征的限制,如暗通道,颜色差异和最大对 比度以及复杂的融合方案。ren等人通过学习有雾图像与其对应的透射率图像之间的映射合 成数据训练mscnn网络,训练完成的网络可以直接由雾图估计出其对应的透射率,而在去雾 阶段,直接使用己经训练好的透射率估计模型来获取雾图透射率,再去利用公式 i(x)=j(x)t(x) a[1-t(x)]去求解待恢复的图像。对于估计透射率的网络,ren等人设计的网络分 为两个部分:一是透射率粗估计网络,二是透射率细化网络,其中细化网络的第二个卷积层的 输入联合了粗估计网络的输出结果,且两个子网络都是单独完成训练。实验表明,在质量和 速度方面,mscnn对于合成图像和真实世界图像均比最先进的方法表现更好。
[0066]
1)粗尺度卷积神经网络
[0067]
粗尺度网络的任务就是估计场景的整体透射率图。粗尺度网络包含四个操作:卷积,最大 池化,上采样,线性组合。
[0068]
卷积层:该网络采用rgb图像作为输入。每个卷积层的响应由下式给出。
[0069][0070]
其中和分别是l层和l 1层的特征图。另外,k是卷积核,索引(m,n)表示从当 前m层到第n层的映射,*表示卷积运算符。函数σ(
·
)表示滤波器响应的修正线性单元(relu), b是偏置。
[0071]
最大池化层:在每个卷积层之后跟上采样系数为2的最大pooling层。
[0072]
上采样:在整体框架中,地面真实传输率图的尺寸与输入相同。而特征图的大小在最大池 化之后减小一半。因此,添加一个上采样层,以确保输出传输率图和输入有雾图像的大小相 等。虽然可以选择删除最大池化层和上采样层来实现相同的目标,但这种方法将会减少网络 的非线性,这是不太有效的。上采样层跟在池化层后,能恢复子采样特征图的大小,同时保 持网络的非线性。每一个上采样层的响应可以被定义为
[0073][0074]
其中l表示层的序号,(x,y)表示图像的二维空间坐标,该式子的本质也就是将(x,y)处 的像素值复制到其对应2
×
2区域内。而线性组合层实质上是对倒数第二层的所有特征图使用 空间尺寸为1
×
1卷积核计算的结果。
[0075]
从结构上看,该网络是端到端的用于估计雾图透射率的回归网络,并且使用了粗估计网 络的输出作为重要的特征图合并到细估计网络中,充分体现了该网络多尺度(multi scale) 的特性。但是由于上采样层的连接方式,使得网络中各层的局部感受野小,从而在学习雾图 的全局特征上具有一定的局限性,此外基于室内图像的合成数据作为训练数据,也在一定程 度上影响了网络对雾图透射率的估计效果。
[0076]
2)细尺度卷积神经网络:
[0077]
细尺度卷积神经网络的任务是细化上述粗尺度卷积神经网络输出的粗略透射率图,通过 将有雾图像和粗略透射率图输入细尺度卷积神经网络,可以得到更加准确的透射
率图。细尺 度卷积神经网络模型包括3个不同尺度的卷积层,卷积核大小分别为7
×
7,5
×
5和3
×
3,池化 层中的池化核大小和粗尺度卷积网络中的一致,均为2
×
2。最后,经过细尺度卷积神经网络 的细化,模型的输出为细化后的透射率图。
[0078]
mscnn算法中对大气光照的估计是基于暗通道先验理论的。在得到细化后的透射率图后, 选取透射率图中较暗的像素点,求出其对应的原有雾图像中像素点处的强度,强度最大的值 即为大气光照值。再将mscnn模型的输出透射率图和求解到的大气光照值代入大气散射模型 公式中,可以得到去雾后的图像。
[0079]
为了综合基于多尺度retinex和clahe算法与mscnn算法的优点,本发明提出了一种改 进的mscnn图像去雾算法。
[0080]
如图1所示,其具体流程如下:
[0081]
步骤1、提取图像的r,g,b三通道,进行归一化处理,分别再用clahe算法进行处理, 然后再把处理后的三通道图像合成一幅图像,增强图像的对比度和细节。期中,采用8
×
8的 矩形块将图像分为多个不同的子区域,clip-limit为0.01。
[0082]
步骤2、提取图像的r,g,b三通道,分别用retinex算法中的msrcr算法处理三通道图 像,然后再把处理之后的三通道图像合成一幅图像。其中,融合时r,g,b三通道图像对应采 用的尺度分别为σ=20,σ=100,σ=200的高斯函数。
[0083]
步骤3、把步骤1)和步骤2)处理后的图像,进行加权融合。通过调节加权融合系数,获 得较好的视觉效果。其公式如下:
[0084]
d=ta (1-t)b
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)
[0085]
其中d代表最后融合的图像,a代表clahe处理之后的图像,b代表msrcr处理之后的图 像,t是融合加权系数,经大量实验得出最佳的融合系数t为0.95。
[0086]
步骤4、将处理后的图像d进行白平衡、对比度增强和伽马增强等预处理,其中gamma 值经反复多次实验确定为0.9。
[0087]
步骤5、如图2所示,训练mscnn网络,然后将处理后的图像d导入训练好的mscnn模 型中估算出其透射率t(x)。
[0088]
其中,mscnn网络训练时,首先使用可以估计图像景深d(x)的cnn网络,使用公式 t(x)=e-βd(x)(其中β为大气吸收系数)估算出输入的清晰图像e的透射率,随后模型 随机产生背景光值a,使用公式i(x)=j(x)t(x) a[1-t(x)]合成有雾图像,再将合成的有雾图像送 入mscnn网络进行训练。
[0089]
步骤6、同时使用暗通道先验的方法对图像d进行最大光照值的估算,得到背景光值c。
[0090]
步骤7、代入公式i(x)=j(x)t(x) c[1-t(x)],恢复出无雾图像i(x)。
[0091]
采用本发明的去雾方法的效果图如图3所示,评价结果见表1:
[0092]
表1水下图像质量评价结果
[0093] 信息熵平均梯度uciqe可见边梯度比原图7.03391.11580.23121本方法7.08705.59310.32645.0402
[0094]
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的
保护 范围之内。
转载请注明原文地址:https://win.8miu.com/read-1056284.html

最新回复(0)