基于暗通道的快速去雾方法及系统的制作方法

文档序号:9598424阅读:496来源:国知局
基于暗通道的快速去雾方法及系统的制作方法
【技术领域】
[0001] 本发明涉及图像处理技术领域,特别是涉及基于暗通道的快速去雾方法及系统。
【背景技术】
[0002] 户外视觉系统已广泛应用于多个领域,如安防监控领域、公路交通监控领域、军事 探测领域等,户外景物的图像通常会受到空气中颗粒物的影响导致画面品质大大下降。在 有雾天气时,空气中弥漫着大量的小水滴和各种杂质的混合颗粒物。这些颗粒物尤其是半 径较大的小水滴对光有较强的散射作用,而散射效应随着距离的增加呈指数形式增长。因 此雾天时能见度比较低。如果在这种条件下采集图像数据,那么目标物反射出的光线受到 周围大气中小水滴、杂质等颗粒物的散射、吸收、折射等光学作用,使得相机等的感光装置 接收到的光线强度不同程度的变弱,最终导致拍摄的图像质量下降,图像对比度小,图中景 物模糊不清晰。降质的图像使得其应用价值也大大下降,例如公路交通监控中无法看清汽 车的车牌、无法准确计算车流量等,这给户外视觉系统的后续处理带来很大困难,甚至无法 使用。因此,图像去雾技术有着重要的研究价值。
[0003] 目前,数字图像去雾的方法主要分为两类:一类是采用图像增强的方法。该类方 法是采用某种技术手段比如直方图均衡化,来增强图像中所需要的某些信息,同时削弱某 些不需要的信息,而不需要考虑图像降质的原因。另一类是基于大气散射物理模型的方法。 该类方法是根据图像降质的物理成因,通过建立大气散射作用的物理模型,将图像恢复到 降质前的样子。
[0004] 暗原色去雾算法以暗原色先验理论为基础,结合雾成像物理模型和软抠图方法来 计算去雾图像。该方法可以得到高质量的去雾效果,但计算量大,运算时间长。目前已经有 很多人对该算法进行优化,其中一个比较重大的优化是由软抠图计算透射率图改为由导向 滤波计算投射率图;优化后的算法虽然在时间和计算量上得到了大大的缩减,但是仍然不 能满足实时的需求。

【发明内容】

[0005] 鉴于以上所述现有技术的缺点,本发明的目的在于提供基于暗通道的快速去雾方 法及系统,用于解决现有技术中暗原色去雾算法花费时间及计算量仍较多的问题。
[0006] 为实现上述目的及其他相关目的,本发明提供一种基于暗通道的快速去雾方 法,包括:计算待去雾图像各个像素点的暗通道像素值,包括:对待去雾图像[I(x,y)] 进行降采样处理;对降采样处理后的待去雾图像[/、U,j')],"y中每一行像素点以 nchannel Xr为滤波半径按预设计算规则进行最小值滤波,且对每一列像素点以r为滤波 半径按所述预设计算规则进行最小值滤波;将通过对所述行、列各像素点的滤波得到的最 小值赋给对应的暗通道像素值
其中,nchannel为通道数,r为预设半径, X表示每行像素,y表示每列像素;m、n、A、及@为行或列中像素点数目;计算全球大气光 强度值;计算透射率,包括:利用所计算暗通道计算粗投射率;以降采样后的待去雾图像的 灰度图像为导向图像,结合所述粗透射率且以R为滤波半径,采用导向滤波算法计算得到 精细透射率,其中,R为r的预定倍数;建立映射表,所述映射表用于定义根据大气光强度 值、第一参数值及第二参数值计算去雾图像中像素点的像素值的映射关系,其中,所述第一 参数值及第二参数值在预设取值范围内;根据所述映射表计算去雾图像,包括:将所述精 细透射率放大到和初始待去雾图像相同大小;将所述精细透射率的取值范围转换为所述预 设取值范围;将所述初始待去雾图像和精细透射率分别作为所述第一参数和第二参数,通 过所述映射表来得到R、G、或B三通道的去雾图像。
[0007] 于本发明的一实施例中,所述预设计算规则包括:对每一行或列像素点进行以下 计算,其中,在行的情况下nchannel值为3,在列的情况下nchannel值为1 : 1)计算一 行或列中以第一个像素点为开始的(nchannelXrX2+nChannel)个像素点中像素值的最 小值MinValue,将该像素值赋给JdaA(x,r),并记录下最小值的位置坐标Minlndex ;2)以 步长为nchannel且起始坐标为(nchannel Xr+nchannel)循环遍历每一行或列中的像 素点;3)判断Minlndex与j-nchannelXr间大小关系,其中,j为当前所遍历的像素点 的位置坐标;4)当Minlndex大于或等于j-nchannel Xr时,分别比较MinValue与位置 坐标为j+nchannelXr、j+nchannelXr+1和j+nchannelXr+2的像素点的像素值的大 小,记录下其中的最小值和最小值对应像素点所在位置坐标,并将最小值赋给JdaA(x,j/ nchannel) ;5)当 Minlndex 小于 j-nchannel Xr 时,计算以坐标 j-nchannel Xr+1 为开始 的(nchannel XrX 2+nchannel)个元素中的最小值MinValue及最小值位置坐标Minlndex, 并将最小值赋给JdaA(x,j/nchannel)。
[0008] 于本发明的一实施例中,所述粗透射率的计算公式为
其中,
;.所述精细透射率的计算公式为t (X,y)= guidedfilter(GI (x,y),tcu(x,y),R),其中
:的灰度图以作为 导向图像,二 G 、·…ιη,ν -- 0J '…' j R = 4Xr〇
[0009] 于本发明的一实施例中,所述映射
所述预设范围为
[0,255],即i = 0,1,...,255 ;j = 0,1,...,255 ;所述去雾图像中各像素点的像素值的 计算公式为:J(x,y,k) = MapTable (I (X,y,k),tD(x,y)),其中,X = 0,1,…,m ;y = 0, 1,. . .,n ;k = 0,1,2, k表示像素值分别在R、G或B通道的值的坐标。
[0010] 于本发明的一实施例中,所述计算大气光强度值A,包括:设置一个大气光强度值 阈值MaxAtomsLight,选取[7 s ( A',_V & χ3中各像素点的像素值中的最大值为大气光参 考值Α。,若Α。小于或等于MaxAtomsLight,则A = Α。;否则,A = MaxAtomsLight ;表示为:
[0011]
[0012] 为实现上述目的及其他相关目的,本发明提供一种基于暗通道的快速去雾系统, 包括:暗通道计算模块,用于计算待去雾图像各个像素点的暗通道像素值,包括:对待去雾 图像[I(X,进行降采样处理;对降采样处理后的待去雾图像中每一 行像素点以nchannel Xr为滤波半径按预设计算规则进行最小值滤波,且对每一列像素点 以r为滤波半径按所述预设计算规则进行最小值滤波;将通过对所述行、列各像素点的滤 波得到的最小值赋给对应的暗通道像素值(UlUu其中,nchannel为通道数,r 为预设半径,X表示每行像素,y表示每列像素;m、n、& \及|为行或列中像素点数目;大气 光强度值计算模块,用于计算全球大气光强度值;透射率计算模块,用于计算透射率,包括: 利用所计算暗通道计算粗投射率;以降采样后的待去雾图像的灰度图像为导向图像,结合 所述粗透射率且以R为滤波半径,采用导向滤波算法计算得到精细透射率,其中,R为r的 预定倍数;映射表建立模块,用于建立映射表,映射表用于定义根据大气光强度值、第一参 数值及第二参数值计算去雾图像中像素点的像素值的映射关系,其中,所述第一参数值及 第二参数值在预设取值范围内;去雾图像计算模块,用于根据所述映射表计算去雾图像,包 括:将所述精细透射率放大到和初始待去雾图像相同大小;将所述精细透射率的取值范围 转换为所述预设取值范围;将所述初始待去雾图像和精细透射率分别作为所述第一参数和 第二参数,通过所述映射表来得到R、G、或B三通道的去雾图像。
[0013] 于本发明的一实施例中,所述预设计算规则包括:对每一行或列像素点进行以下 计算,其中,在行的情况下nchannel值为3,在列的情况下nchannel值为1 : 1)计算一 行或列中以第一个像素点为开始的(nchannelXrX2+nChannel)个像素点中像素值的最 小值MinValue,将该像素值赋给JdaA(x,r),并记录下最小值的位置坐标Mi
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1