本发明涉及一种图像去雾方法,具体的说,涉及了一种基于暗原色先验的图像去雾方法。
背景技术:
雾霾是一种常见的自然现象,它是由悬浮在大气中的大量微小水滴、气溶胶等颗粒对光线的散射和吸收作用产生的。它会导致图像中目标的对比度降低、饱和度下降和色调偏移,直接影响户外视觉系统效用的发挥因此,雾天降质图像的清晰化处理具有十分重要的意义。
为了解决以上存在的问题,人们一直在寻求一种理想的技术解决方案。
技术实现要素:
本发明的目的是针对现有技术的不足,从而提供了一种基于暗原色先验的图像去雾方法,具有设计科学,去雾效果好的优点。
为了实现上述目的,本发明所采用的技术方案是:一种基于暗原色先验的图像去雾方法,包括以下步骤:
步骤1,读入原始有雾图像;
其中,x为空间坐标,i(x)为有雾图像,j(x)为场景辐射照度或清晰无雾的图像,a为大气光值,ρ(x)为场景反照率,t(x)为介质透射率;
步骤2,对原始有雾图像i(x)两边取最小值操作,并利用暗通道先验知识,通过灰度开运算初步估计大气光值a(x),并对大气光照进行白平衡处理,从而获得原始有雾图像的简化图像i'(x);
步骤3,引入阈值t,当简化图像i'(x)的暗通道值小于t时,将其判定为简化图像i'(x)的近景区域,并对简化图像i'(x)近景区域计算最小值通道iminc;当简化图像i'(x)的暗通道值大于或等于t时,将其判定为简化图像i'(x)的远景区域,并计算远景区域的暗通道idarkd,从而得到简化图像i'(x)的混合暗通道
步骤4,利用分段式映射方程对混合暗通道
步骤5,通过导向滤波法对粗估计值t″(x)进行处理,获得介质透射率t(x)的精确估计值t″′(x);
步骤6,利用自适应参数调整的方法对天空区域的介质透射率t(x)的精确估计值t″′(x)进行修订,并得到介质透射率t(x)的最终估计值;
步骤7,根据介质透射率t(x)的最终估计值计算去雾图像。
2、根据权利要求1所述的一种图像去雾霾方法,其特征在于,步骤2的具体步骤为:
步骤2.1,对原始有雾图像i(x)两边取最小值操作,得到暗通道图像;
其中,ic(x)和ρc(x)为i(x)和ρ(x)的一个彩色通道,
步骤2.2,利用暗通道先验知识,对式(2)两边进行灰度开运算处理,可得:
其中,
步骤2.3,根据暗通道先验法则可知,当灰度开运算中结构元素的尺寸大于idark中白色物体的尺寸时,
步骤2.4,对式(4)进行变化可得:
其中,t′(x)定义为介质透射率t(x)的初始估计,且
步骤2.5,由于t'(x)中像素的取值不大于t(x)中像素的取值,故
根据式(6)推导出a的区间估计为
其中,α称为调节参数,其表达式为:
步骤2.6,利用式(7)估计的大气光值对大气光照进行白平衡处理后,将大气光照的颜色校正到灰度轴方向上,得到:
步骤2.7,令白平衡校正的图像i(x)/a限制在[0,1]范围内,用i′(x)进行表示:
进而,原始有雾图像的简化图像i'(x)为
i′(x)=ρ(x)t(x)+1-t(x)(10)
在i′(x)中,大气光值a校正为白色(1,1,1)t。
3、根据权利要求1或2所述的一种基于暗原色先验的图像去雾方法,其特征在于,步骤4的具体步骤为:
令简化图像i'(x)混合暗通道亮度值的最大值小于l,将(l~255)区间段三等分,每个区间段长度为c,将混合暗通道处在不同区间段的值作不同程度的衰减,建立如下式所示的分段式映射方程,以减小天空或白色物体区域相应混合暗通道的误差,同时得到介质透射率t(x)的粗估计值t″(x);
其中,c=(255-l)/3。
4、根据权利要求3所述的一种基于暗原色先验的图像去雾方法,其特征在于,步骤5的具体步骤为:
根据导向滤波局部线性模型假设,介质透射率表示为:
其中,ωk为引导图d中像素点k为中心的邻域,其窗口半径为r,(ak,bk)在邻域ωk中为常数;
在邻域ωk中,将式(13)所描述的代价函数最小化,即可得到介质透射率t(x)的精确估计值t″′(x):
其中,ε为正则化参数。
5、根据权利要求4所述的一种基于暗原色先验的图像去雾方法,其特征在于,步骤6的具体步骤为:
采用自适应参数调整的方法对天空区域的介质透射率进行修正,其表达式为:
其中,t0为天空区域介质透射率的修正值,即天空区域介质透射率t(x)的取值小于t0时统一修正为t0;n为t″′(x)中像素总数,n为t″′(x)中像素值小于0.15的像素点的个数,固定值0.15和0.3用来限定t0的上下限;
由暗原色先验原理可知,介质透射率t(x)满足t(x)=e-βd(x),0≤t(x)≤1可知,天空区域的介质透射率t(x)具有最小值,且已修正为不小于t0,因此介质透射率的下限值修改为t0,故介质透射率的最终估计值t(x)表示为
t(x)=min(max(t″′(x),t0),1)(15)。
本发明相对现有技术具有突出的实质性特点和显著的进步,具体的说,本发明利用值域范围实现大气光值估计,并通过白平衡处理实现大原始有雾图像简化;通过求解介质透射率的粗估计,利用导向滤波对其优化;该方法既能实现良好的普通雾霾图像去雾,又能改善不满足暗通道先验的包含大面积天空或白色物体的雾霾图像的去雾性能,从而扩大了应用暗通道先验知识实现图像去雾的范围。
附图说明
图1是本发明的流程示意图。
具体实施方式
下面通过具体实施方式,对本发明的技术方案做进一步的详细描述。
如图1所示,一种基于暗原色先验的图像去雾方法,包括以下步骤:
步骤1,读入原始有雾图像;
其中,x为空间坐标,i(x)为有雾图像,j(x)为场景辐射照度或清晰无雾的图像,a为大气光值,ρ(x)为场景反照率,t(x)为介质透射率;a(1-t(x))为大气耗散函数;
步骤2,对原始有雾图像i(x)两边取最小值操作,并利用暗通道先验知识,通过灰度开运算初步估计大气光值a(x),并对大气光照进行白平衡处理,从而获得原始有雾图像的简化图像i'(x);
步骤3,引入阈值t,当简化图像i'(x)的暗通道值小于t时,将其判定为简化图像i'(x)的近景区域,并对简化图像i'(x)近景区域计算最小值通道iminc;当简化图像i'(x)的暗通道值大于或等于t时,将其判定为简化图像i'(x)的远景区域,并计算远景区域的暗通道idarkd,从而得到简化图像i'(x)的混合暗通道
其中,阈值t越小,越有利于景深平缓变化的简化图像i'(x)的混合暗通道更合理地分布;阈值t越大,越有利于景深存在突变的简化图像i'(x)的混合暗通道更合理地分布;本实施例中阈值t默认取为25;
步骤4,利用分段式映射方程对混合暗通道
即,令普通浓雾霾图像混合暗通道亮度值的最大值小于l,将(l~255)区间段三等分,每个区间段长度为c,将混合暗通道处在不同区间段的值作不同程度的衰减,建立如下式所示的分段式映射方程,以减小天空或白色物体区域相应混合暗通道的误差,同时得到介质透射率t(x)的粗估计值t″;
其中,c=(255-l)/3。
为了尽可能保证浓雾霾图像的混合暗通道不受影响,本实施例中l值默认取为200;
步骤5,通过导向滤波法对粗估计值t″(x)进行处理,获得介质透射率t(x)的精确估计值t″′(x);
步骤6,利用自适应参数调整的方法对天空区域的介质透射率t(x)的精确估计值t″′(x)进行修订,并得到介质透射率t(x)的最终估计值;
步骤7,根据介质透射率t(x)的最终估计值计算去雾图像。
具体的,步骤2的步骤为:
步骤2.1,对原始有雾图像i(x)两边取最小值操作,得到暗通道图像;
其中,ic(x)和ρc(x)为i(x)和ρ(x)的一个彩色通道,
步骤2.2,利用暗通道先验知识,对式(2)两边进行灰度开运算处理,可得:
其中,
步骤2.3,根据暗通道先验法则,当灰度开运算中结构元素的尺寸大于idark中白色物体的尺寸时,
步骤2.4,对式(4)进行变化可得:
式中,t′(x)定义为介质透射率t(x)的初始估计,且
步骤2.5,a的取值不大于原图像中像素的最大值,因此,a的取值范围可表示为:
根据式(6)推导出a的区间估计为
其中,α称为调节参数,其表达式为:
步骤2.6,利用式(7)估计的大气光值a对大气光照进行白平衡处理后,将大气光照的颜色校正到灰度轴方向上,得到:
步骤2.7,令白平衡校正的图像i(x)/a限制在[0,1]范围内,用i′(x)进行表示:
进而,原始有雾图像的简化图像i'(x)为
i′(x)=ρ(x)t(x)+1-t(x)(10)
在i′(x)中,大气光值a校正为白色(1,1,1)t;
具体的,步骤4的步骤为:
令简化图像i'(x)混合暗通道亮度值的最大值小于l,将(l~255)区间段三等分,每个区间段长度为c,将混合暗通道处在不同区间段的值作不同程度的衰减,建立如下式所示的分段式映射方程,以减小天空或白色物体区域相应混合暗通道的误差,同时得到介质透射率t(x)的粗估计值t″;
其中,c=(255-l)/3。
尽可能保证简化图像i'(x)的混合暗通道不受影响,本实施例中l值默认取为200。
需要注意的是,l值越小,越有利于包含天空、亮度值比较小的薄雾霾图像的混合暗通道更合理地分布;l值越大,越有利于不包含天空或大面积白色物体、亮度值很大的普通浓雾霾图像的混合暗通道更合理地分布。
综上所述,当t和l取默认值时,对于去雾图像景深突变处出现的去雾不彻底现象,可以通过增大t值,减弱甚至消除该现象;对于去雾图像景深平缓变化的近景区域出现的颜色过饱和或暗沉现象,可以通过减小t值,减弱甚至消除该现象;对于去雾图像天空区域出现的失真现象,可以通过减小l值,减弱甚至消除该现象;对于去雾图像景深无穷远处出现的去雾不彻底现象,可以通过增大l值,减弱甚至消除该现象。
具体的,步骤5的步骤为:
根据导向滤波局部线性模型假设,介质透射率表示为:
其中,ωk为引导图d中像素点k为中心的邻域,其窗口半径为r,(ak,bk)在邻域ωk中为常数;根据式(12),在局部区域,输出图像t″′可以捕获与引导图相似的细节信息,其捕获细节信息的能力与r的大小密切相关,本实施例中取为r=25。
导向滤波法通过最小化输出图像t″′和输入图像t″之间的差异来寻求最优的系数(ak,bk),即在邻域ωk中,将式(13)所描述的代价函数最小化,即可得到介质透射率t(x)的精确估计值t″′(x):
其中,ε为正则化参数,其对优化结果不敏感,本实施例取为ε=10-3。
具体的,步骤6的步骤为:
采用自适应参数调整的方法对天空区域的介质透射率进行修正,其表达式为:
其中,t0为天空区域介质透射率的修正值,即天空区域介质透射率t(x)的取值小于t0时统一修正为t0;n为t″′(x)中像素总数,n为t″′(x)中像素值小于0.15的像素点的个数,固定值0.15和0.3用来限定t0的上下限;
由暗原色先验原理可知,介质透射率t(x)满足t(x)=e-βd(x),0≤t(x)≤1可知,天空区域的介质透射率t(x)具有最小值,且已修正为不小于t0,因此介质透射率t(x)的下限值修改为t0,故介质透射率t(x)的最终估计值表示为
t(x)=min(max(t″′(x),t0),1)(15),
从而,大气耗散函数v(x)可表示为
v(x)=1-t(x)=min(max(t″′(x),t0),1)(16)。
为了提高去雾图像的清晰度和对比度,本实施例还引入了参数β对大气耗散函数v(x)进行调整,则式(16)可改写为
v(x)=1-β·min(max(t″′(x),t0),1)(17)
式中,β设置为0.95。
由式(10)可知,场景反照率ρ(x)可表示为
最后,将场景反照率限制在[0,1]范围内,可得去雾图像o(x),其表达式为
o(x)=min(max(ρ(x),0,1)(19)。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。