CN106339988A - 一种图像去雾方法及装置 - Google Patents
一种图像去雾方法及装置 Download PDFInfo
- Publication number
- CN106339988A CN106339988A CN201610013636.9A CN201610013636A CN106339988A CN 106339988 A CN106339988 A CN 106339988A CN 201610013636 A CN201610013636 A CN 201610013636A CN 106339988 A CN106339988 A CN 106339988A
- Authority
- CN
- China
- Prior art keywords
- block
- absorbance
- value
- image
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims abstract description 12
- 238000001914 filtration Methods 0.000 claims abstract description 7
- 238000002835 absorbance Methods 0.000 claims description 148
- 239000003595 mist Substances 0.000 claims description 39
- 238000003379 elimination reaction Methods 0.000 claims description 38
- 230000008030 elimination Effects 0.000 claims description 26
- 230000010354 integration Effects 0.000 claims description 8
- 238000002834 transmittance Methods 0.000 claims description 8
- 238000009738 saturating Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 abstract description 14
- 238000005457 optimization Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007850 degeneration Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013386 optimize process Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
本发明公开一种图像去雾方法及装置,包括暗通道计算模块、直方图统计模块、环境光计算模块、透射率计算模块、存储模块、透射率选择模块、滤波模块和去雾处理模块;将图像分成多个区块,计算每个区块分别在RGB分量的暗通道值,再统计直方图,根据直方图计算环境光值。并且计算小中大三种区域的透射率,滤波处理后,再利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。本发明在基于现有的暗通道先验的算法模型的基础上,对透射率、环境光等参数进行了优化处理,使得图像的块状效应和边缘效应得到了较好的解决,使还原后的去雾图像清晰度高。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种图像去雾方法及装置。
背景技术
随着数字图像处理技术和超大规模集成电路的发展,高分辨率、高处理速度成为视频图像技术发展的趋势。高清晰度高质量的图像在交通监控、信息科学以及军事等领域都起着至关重要的作用。然而,在室外交通监控等领域,摄像系统经常会受到恶劣天气的影响,雾霾雨雪等天气直接降低了图像的清晰度。因此,对雾霾天气的视频图像进行去雾处理尤为重要。
现有技术中,对雾天图像的处理主要集中在PC平台上的软件开发的算法层面上。虽然这些算法都能实现去雾的目的,但由于都是软件处理,耗时较长,不能满足在ISP((Image Signal Processing,图像信号处理)等实时监控芯片中高速度、高质量的需求。有个别学者的研究虽然也尝试了在FPGA(Field-Programmable Gate Array,现场可编程门阵列)等硬件中进行去雾算法的实现,但是却将本身的去雾算法进行了退化处理,因此图像去雾的效果必然会受影响。
基于暗通道先验的去雾算法被公认为是最有效和最通用的一种算法,然而多数基于此算法模型的去雾方法及装置也都会存在图像块状效应,以及边缘效应的问题,使得图像过渡不平滑,还原后的去雾图像质量不能达到很高的要求。
发明内容
本发明所要解决的技术问题是提供一种图像去雾方法及装置,其可以解决图像的块状效应和边缘效应问题,提高去雾图像的清晰度。
为解决本发明的技术问题,本发明公开一种图像去雾装置,包括暗通道计算模块、直方图统计模块、环境光计算模块、透射率计算模块、存储模块、透射率选择模块、滤波模块和去雾处理模块;
暗通道计算模块,用于计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量暗通道值;
直方图统计模块,根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量;
环境光计算模块,根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值;
透射率计算模块,计算当前图像的N1×N1区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数w与所述最小值的乘积得到N1×N1区块的透射率Pr1;将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;所述N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍;
存储模块用于存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据;
透射率选择模块,用于根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr;首先判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N3×N3区块的透射率Pr3,若是,再判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N2×N2区块的透射率Pr2,若是,则当前像素点的透射率Pr为当前像素点所在的N1×N1区块的透射率Pr1;
滤波模块,用于将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR;
去雾处理模块,根据所述透射率PR和环境光值,利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。
其中,还包括积分数量计算模块,用于统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
其中,环境光计算模块还判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
基中,所述N1为2、N2为4,N3为8。
其中,所述直方图统计模块根据亮度值从小到大划分成32段直方图。
本发明还公开一种图像去雾方法,包括以下步骤:
计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量的暗通道值;
根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量;
根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值;
计算当前图像的N1×N1区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数w与所述最小值的乘积得到N1×N1区块的透射率Pr1;将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;所述N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍;
存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据;
根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr;首先判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N3×N3区块的透射率Pr3,若是,再判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N2×N2区块的透射率Pr2,若是,则当前像素点的透射率Pr为当前像素点所在的N1×N1区块的透射率Pr1;
将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR;
根据所述透射率PR和环境光值,利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。
其中,在所述云计算当前图像的R、G、B分量的环境光值的步骤之前还包括步骤:
统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
其中,所述计算当前图像的R、G、B分量的环境光值的步骤还包括:
判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
其中,所述N1为2、N2为4,N3为8。
其中,所述直方图统计模块根据亮度值从小到大划分成32段直方图。
与现有技术相比,本发明具有如下有益效果:本发明的图像去雾方法在基于现有的暗通道先验的算法模型的基础上,对图像透射率、环境光等参数进行了优化处理,使得图像的块状效应和边缘效应得到了较好的解决,使还原后的去雾图像清晰度高。同时,恰当地运用分段时序的控制,减少了硬件实现的复杂度,成本较低,能整合应用在ISP等实时监控芯片中,高速度、高质量的进行图像去雾处理。
附图说明
图1是本发明实施例的图像去雾装置结构图;
图2是本发明另一实施例的图像去雾装置结构图;
图3是本发明实施例的图像去雾方法步骤图。
具体实施方式
下面结合附图和实施例,对本发明作进一步详细说明。
如图1所示,本发明实施例的图像去雾装置包括暗通道计算模块、直方图统计模块、环境光计算模块、透射率计算模块、存储模块、透射率选择模块、滤波模块和去雾处理模块。
其中,暗通道计算模块,用于计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量暗通道值。
具体地,计算暗通道I_dark方法为首先将输入的一副原始图像分割成多个区块,每个区块大小为n×m,在本实施例中,优选n为18,m为24。设图像的高度为h,宽度为w,则分块数应为(h×w)/(18×24)。基于以上分块,则暗通道I_dark计算如下:
其中,min表示取最小值,Ω表示18×24的集合。暗通道I_dark实际上就是求Ω域中Rawc的最小值。Rawc是指包含R、G、B三分量的图像传感器输出的原始图像数据。
本实施例在求取每个区块的暗通道值时,利用一条行缓存就可以实现所有区块的暗通道值的求取。
具体的做法为:利用输入的行同步和场同步信号定位当前行输入的点属于哪一个区块,由于数据是逐行输入的,所以一行数据里需要跨越(w/m)个块,当输入点处于相应块的时候,逐点比较当前点和上一点(缓存的最小值)的值求得最小值,当像素点的坐标处于m倍数的边界时,将所属区块的最小值和行缓存中对应该块的最小值进行比较,再将获得的较小者写回到行缓存中。当一行处理完后,总共需存储(w/m)个块的临时获取的最小值。当有效行的计数器达到n倍数的边界,且有效点的计数器也是m倍数的边界时,获得的最小值就是对应的区块的最终的最小值,此时可以将该区块的最小值输出,即得到该区块的暗通道。这样,只需要一行w/m大小的缓存,当一帧图像数据逐行输入完成后,也得到了所有(h×w)/(n×m)块的暗通道I_dark。
直方图统计模块,根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量。
具体地,在本实施例中,直方图统计模块根据亮度值(0至255),从小到大分成32段直方图,亮度值在0至7之间的是第1段直方图,亮度值在8-15之间的是第2段直方图,以此类推。当某个区块的暗通道值I_dark获取后,不再进行缓存,而是直接判断该区块的暗通道值I_dark处于32段中的哪一段,并对该段直方图进行累加计数。例如,第1个区块的通道值I_dark为3,则其属于第1段直方图,则第1段直方图累加1;第2个区块的暗通道值I_dark为6,也属于第1段直方图,则第1段直方图再累加1,计数为2;以此类推,当所有区块的暗通道值I_dark计算出来后,各段直方图也相应地统计出来了。本领域技术人员也可以依实际情况根据亮度值划分成其他段数的直方图。
环境光计算模块,根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值。
具体地,本发明实施例由于统计了各个区块的直方图,可以根据环境的变化检测出一帧图像中环境的光强度,将亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值,分别为Ar、Ag和Ab,这三个环境光值的初始值都为A0。
为进一步准确检测出环境光值,如图2所示,在本发明另一实施例中还包括积分数量计算模块,用于统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
环境光计算模块判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
具体地,设定一个阈值I_dark_thr,和分量阈值R_thr、G_thr和B_thr。因为区块的暗通道值I_dark要在一个区块处理完才出结果,如果先判断I_dark是否大于阈值I_dark_thr,再对区块中的RGB分量求积分的话,那也需要至少n行的缓存空间才能实现RGB积分和数量的求取。本发明实施例立足于硬件并行计算的思想,不等I_dark的结果出来,就先根据当前图像各区块内所有R、G、B三分量是否小于R_thr、G_thr和B_thr的条件计算好一个区块内的R、G、B三分量的积分数量,而在一个区块的暗通道值计算结束后,再根据I_dark是否大于阈值I_dark_thr判断是否将该区块总的积分和数量值加到整帧图像的积分和数量中。因此,本实施例只需利用较小的存储空间,就能得到较快的实时处理速度。
环境光计算模块根据直方图,将亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值,分别为Ar、Ag和Ab。然后,再判断当前图像中R、G、B分量中哪个分量的积分数量较大,则可以在相应的环境光值的基础加上一个修正的值,分别为Cr,Cg,Cb三个值以供Ar,Ag,Ab校正使用。Cr,Cg,Cb为经验值,一般设为小于8的自然数。修正后的环境光值Ar‘,Ag’,Ab‘的可写成
Ar‘=A0+Cr或A-Cr;
Ag‘=A0+Cg或A-Cg;
Ab‘=A0+Cb或A-Cb;
因此,本发明实施例可以根据环境的变化检测出一帧图像中环境的光强度,并且还能通过RGB积分以及数量值自适应地估算出图像区域中各种色彩场景的分布,能分别对三个分量的去雾参数进行自适应的调整以更好的还原出无雾的图像。
计算透射率Pr,透射率很大程度上反映了雾天图像中雾霾的浓度的大小,透射率越低,通常表明雾的浓度越高。本发明实施例的透射率计算模块,分三步计算透射率。首先,计算当前图像的各个区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数ω与所述最小值的乘积得到N1×N1区块的透射率Pr1。具体地,计算公式为:Pr2=1-ω×min_2,其中,min_2为N1×N1域Ω2中Rawc的最小值;系数ω为8bit,可参考环境光值进行设定。
其次,将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;最后,将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;其中,N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍。在本实施例中,N1为2、N2为4、N3为8。
经过以上三步运算,最终,透射率计算模块得到三个透射率Pr1、Pr2和Pr3,分别反映小中大三种区域大小的透射率。
存储模块用于存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据。
透射率选择模块,用于根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr。
步骤一,判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值th3,若是则再进行下一步判断,否则,就将当前点所在的N3×N3区块的透射率Pr3作为当前点的透射率Pr。
步骤二,判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值th2,若是则再进行下一步判断,否则,就将当前点所在的N2×N2区块的透射率Pr2作为当前点的透射率Pr。
步骤三,将当前像素点所在的N1×N1区块的透射率Pr1作为当前点的透射率Pr。
通过以上三个步骤求得的透射率Pr值能很好的反映实际区域的透射率,同时在图像的边缘自适应的选择Pr1或Pr2来运算,可以避免Pr2或Pr3缺值时图像边缘过度不均。具体做法为,上下左右的边缘4个点都采用Pr1运算,紧接的图像上下左右的4个点再按照步骤二和步骤三来进行运算。
滤波模块,用于将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR。为了还原到更平滑的图像,本发明实施例还提供了滤波器对透射率Pr进行滤波,可以选用均值滤波等。为了保留图像完整性,最终的透射率PR会做一个最小值的限幅。
去雾处理模块,根据所述透射率PR和环境光值A,其中,A包括Ar、Ag和Ab,再利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。具体计算可参考如下模型进行:
DFG_result=(DFG_before-A)/PR+A
本发明在求取最终的结果DFG_result时,为了硬件实现的方便,将除以PR的除法操作,换成了乘以PR的倒数的乘法操作,这样避免了浮点数除法器的运算,而只需要简单的查表即可得到PR的倒数PR_d。
所以最终实现的公式修正为:
DFG_result=(DFG_before-A)*PR_d+A
通过以上公式可以分别对图像的R、G、B三分量进行去雾处理,由于A和PR的参数都是做了优化处理,图像的块状效应和边缘效应等方面的问题得到了很好的解决,并且还原后的去雾图像清晰度高。同时,恰当地运用分段时序的控制,减少了硬件实现的复杂度,成本较低,能整合应用在ISP等实时监控芯片中,高速度、高质量的进行图像去雾处理。
再如图3所示,本发明实施例还提供一种图像去雾方法,包括以下步骤:
S1:计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量的暗通道值;
计算暗通道I_dark方法为首先将输入的一副原始图像分割成多个区块,每个区块大小为n×m,在本实施例中,优选n为18,m为24。设图像的高度为h,宽度为w,则分块数应为(h×w)/(18×24)。基于以上分块,则暗通道I_dark计算如下:
其中,min表示取最小值,Ω表示18×24的集合。暗通道I_dark实际上就是求Ω域中Rawc的最小值。Rawc是指包含R、G、B三分量的图像传感器输出的原始图像数据。
S2:根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量;
根据亮度值(0至255),从小到大分成32段直方图,亮度值在0至7之间的是第1段直方图,亮度值在8-15之间的是第2段直方图,以此类推。当某个区块的暗通道值I_dark获取后,不再进行缓存,而是直接判断该区块的暗通道值I_dark处于32段中的哪一段,并对该段直方图进行累加计数。例如,第1个区块的通道值I_dark为3,则其属于第1段直方图,则第1段直方图累加1;第2个区块的暗通道值I_dark为6,也属于第1段直方图,则第1段直方图再累加1,计数为2;以此类推,当所有区块的暗通道值I_dark计算出来后,各段直方图也相应地统计出来了。本领域技术人员也可以依实际情况根据亮度值划分成其他段数的直方图。
S3:根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值;
为进一步准确获得环境光值,在本发明另一实施例中,在步骤S3之前还包括步骤S9:统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
所述步骤S3还包括:判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
具体地,设定一个阈值I_dark_thr,和分量阈值R_thr、G_thr和B_thr。先根据当前图像各区块内所有像素点的R、G、B三分量是否小于R_thr、G_thr和B_thr的条件计算好一个区块内的R、G、B三分量的积分数量,而在一个区块的暗通道值计算结束后,再根据I_dark是否大于阈值I_dark_thr判断是否将该区块总的积分和数量值加到整帧图像的积分和数量中。
在根据亮度值最大的区块的灰度值生成当前图像的R、G、B分量的环境光值,分别为Ar、Ag和Ab后,再判断判断当前图像中R、G、B分量中哪个分量的积分数量较大,则可以在相应的环境光值的基础加上一个修正的值,分别为Cr,Cg,Cb三个值以供Ar,Ag,Ab校正使用。Cr,Cg,Cb为经验值,一般设为小于8的自然数。修正后的环境光值Ar‘,Ag’,Ab‘的可写成
Ar‘=A0+Cr或A-Cr;
Ag‘=A0+Cg或A-Cg;
Ab‘=A0+Cb或A-Cb。
因此,本发明实施例可以根据环境的变化检测出一帧图像中环境的光强度,并且还能通过RGB积分以及数量值自适应地估算出图像区域中各种色彩场景的分布,能分别对三个分量的去雾参数进行自适应的调整以更好的还原出无雾的图像。
S4:首先,计算当前图像的N1×N1区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数w与所述最小值的乘积得到N1×N1区块的透射率Pr1;具体地,计算公式为:Pr2=1-ω×min_2,其中,min_2为N1×N1域Ω2中Rawc的最小值;系数ω为8bit,可参考环境光值进行设定。
其次,将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;最后,将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;所述N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍;在本实施例中,N1为2、N2为4、N3为8。经过以上三步运算,最终,透射率计算模块得到三个透射率Pr1、Pr2和Pr3,分别反映小中大三种区域大小的透射率。
S5:存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据;
S6:根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr;首先判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N3×N3区块的透射率Pr3,若是,再判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N2×N2区块的透射率Pr2,若是,则当前像素点的透射率Pr为当前像素点所在的N1×N1区块的透射率Pr1;
通过以上三个步骤求得的透射率Pr值能很好的反映实际区域的透射率,同时在图像的边缘自适应的选择Pr1或Pr2来运算,可以避免Pr2或Pr3缺值时图像边缘过度不均。具体做法为,上下左右的边缘4个点都采用Pr1运算,紧接的图像上下左右的4个点再按照步骤二和步骤三来进行运算。
S7:将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR;
S8:根据所述透射率PR和环境光值,利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。
具体地,根据所述透射率PR和环境光值A,其中,A包括Ar、Ag和Ab,再利用暗通道先验算法的模型进行去雾处理,可以得到去雾后的图像数据。具体计算可参考如下模型进行:
DFG_result=(DFG_before-A)/PR+A
本发明在求取最终的结果DFG_result时,为了硬件实现的方便,将除以PR的除法操作,换成了乘以PR的倒数的乘法操作,这样避免了浮点数除法器的运算,而只需要简单的查表即可得到PR的倒数PR_d。
所以最终实现的公式修正为:
DFG_result=(DFG_before-A)*PR_d+A
通过以上公式可以分别对图像的R、G、B三分量进行去雾处理,由于A和PR的参数都是做了优化处理,图像的块状效应和边缘效应等方面的问题得到了很好的解决,并且还原后的去雾图像清晰度高。同时,恰当地运用分段时序的控制,减少了硬件实现的复杂度,成本较低,能整合应用在ISP等实时监控芯片中,高速度、高质量的进行图像去雾处理。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上举较佳实施例,对本发明的目的、技术方案和优点进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内,本发明所主张的权利范围应以发明申请范围所述为准,而非仅限于上述实施例。
Claims (10)
1.一种图像去雾装置,其特征在于,包括暗通道计算模块、直方图统计模块、环境光计算模块、透射率计算模块、存储模块、透射率选择模块、滤波模块和去雾处理模块;
暗通道计算模块,用于计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量暗通道值;
直方图统计模块,根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量;
环境光计算模块,根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值;
透射率计算模块,计算当前图像的N1×N1区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数w与所述最小值的乘积得到N1×N1区块的透射率Pr1;将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;所述N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍;
存储模块用于存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据;
透射率选择模块,用于根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr;首先判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N3×N3区块的透射率Pr3,若是,再判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N2×N2区块的透射率Pr2,若是,则当前像素点的透射率Pr为当前像素点所在的N1×N1区块的透射率Pr1;
滤波模块,用于将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR;
去雾处理模块,根据所述透射率PR和环境光值,利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。
2.如权利要求1所述的图像去雾装置,其特征在于,还包括积分数量计算模块,用于统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
3.如权利要求2所述的图像去雾装置,其特征在于,环境光计算模块还判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
4.如权利要求1所述的图像去雾装置,其特征在于,所述N1为2、N2为4,N3为8。
5.如权利要求1所述的图像去雾装置,其特征在于,所述直方图统计模块根据亮度值从小到大划分成32段直方图。
6.一种图像去雾方法,其特征在于,包括以下步骤:
计算当前图像每个区块的暗通道值,将各区块的所有像素点分别在R、G、B分量的最小值作为该区块的R、G、B分量的暗通道值;
根据亮度值从小到大划分多段直方图,根据当前图像各个区块的暗通道值将各个区块归类到对应的直方图,统计各段直方图中区块的数量;
根据所述直方图选取亮度值最大的区块的灰度值做为当前图像的R、G、B分量的环境光值;
计算当前图像的N1×N1区块的R、G、B三个分量的最小值,根据环境光值设定系数ω;将1减去系数w与所述最小值的乘积得到N1×N1区块的透射率Pr1;将N2×N2区块中所有N1×N1区块的透射率Pr1的最大值作为N2×N2区块的透射率Pr2;将N3×N3区块中所有N2×N2区块的透射率Pr2的最大值作为N3×N3区块的透射率Pr3;所述N1、N2、N3为正整数;且N3为N2的整数倍,N2为N1的整数倍;
存储所述N1×N1区块的透射率Pr1、N2×N2区块的透射率Pr2、N3×N3区块的透射率Pr3,以及原始图像数据;
根据透射率Pr1、Pr2和Pr3获取当前图像所有像素点的透射率Pr;首先判断当前像素点所在的N3×N3区块的透射率Pr3与其上下左右相邻的N3×N3区块的透射率Pr3的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N3×N3区块的透射率Pr3,若是,再判断当前像素点所在的N2×N2区块的透射率Pr2与其上下左右相邻的N2×N2区块的透射率Pr2的差值的绝对值是否大于预设的阈值,若否,则当前像素点的透射率Pr为当前像素点所在的N2×N2区块的透射率Pr2,若是,则当前像素点的透射率Pr为当前像素点所在的N1×N1区块的透射率Pr1;
将所述当前图像所有像素点的透射率Pr进行均值滤波,得到滤波后的透射率PR;
根据所述透射率PR和环境光值,利用暗通道先验算法的模型进行去雾处理,得到去雾后的图像数据。
7.如权利要求6所述的图像去雾方法,其特征在于,在所述云计算当前图像的R、G、B分量的环境光值的步骤之前还包括步骤:
统计每个区块的R、G、B分量分别小于对应的分量阈值的像素点的积分数量;将暗通道值大于预设阈值的区块的积分数量进行累加,得到当前图像的R、G、B分量的积分数量。
8.如权利要求7所述的图像去雾方法,其特征在于,所述计算当前图像的R、G、B分量的环境光值的步骤还包括:
判断所述当前图像的R、G、B分量的积分数量是否较大,若是,则将对应分量的环境光值进行修正,生成修正后的当前图像的R、G、B分量的环境光值。
9.如权利要求6所述的图像去雾方法,其特征在于,所述N1为2、N2为4,N3为8。
10.如权利要求6所述的图像去雾方法,其特征在于,所述直方图统计模块根据亮度值从小到大划分成32段直方图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610013636.9A CN106339988B (zh) | 2016-01-07 | 2016-01-07 | 一种图像去雾方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610013636.9A CN106339988B (zh) | 2016-01-07 | 2016-01-07 | 一种图像去雾方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106339988A true CN106339988A (zh) | 2017-01-18 |
CN106339988B CN106339988B (zh) | 2019-06-14 |
Family
ID=57826649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610013636.9A Active CN106339988B (zh) | 2016-01-07 | 2016-01-07 | 一种图像去雾方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106339988B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301623A (zh) * | 2017-05-11 | 2017-10-27 | 北京理工大学珠海学院 | 一种基于暗通道和图像分割的交通图像去雾方法及系统 |
CN112767392A (zh) * | 2021-03-02 | 2021-05-07 | 百果园技术(新加坡)有限公司 | 图像清晰度确定方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110211758A1 (en) * | 2010-03-01 | 2011-09-01 | Microsoft Corporation | Multi-image sharpening and denoising using lucky imaging |
CN102968772A (zh) * | 2012-12-04 | 2013-03-13 | 电子科技大学 | 一种基于暗通道信息的图像去雾方法 |
WO2014018213A1 (en) * | 2012-07-23 | 2014-01-30 | Lockheed Martin Corporation | Realtime long range imaging scatter reduction |
CN103700079A (zh) * | 2013-12-17 | 2014-04-02 | 中国科学院深圳先进技术研究院 | 图像去雾方法及装置 |
CN103903234A (zh) * | 2014-03-12 | 2014-07-02 | 南京第五十五所技术开发有限公司 | 一种基于图像景深的实时图像去雾方法 |
CN104166968A (zh) * | 2014-08-25 | 2014-11-26 | 广东欧珀移动通信有限公司 | 一种图像去雾的方法、装置及移动终端 |
CN104732497A (zh) * | 2015-03-31 | 2015-06-24 | 北京交通大学 | 一种图像去雾方法、fpga及包含该fpga的去雾系统 |
-
2016
- 2016-01-07 CN CN201610013636.9A patent/CN106339988B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110211758A1 (en) * | 2010-03-01 | 2011-09-01 | Microsoft Corporation | Multi-image sharpening and denoising using lucky imaging |
WO2014018213A1 (en) * | 2012-07-23 | 2014-01-30 | Lockheed Martin Corporation | Realtime long range imaging scatter reduction |
CN102968772A (zh) * | 2012-12-04 | 2013-03-13 | 电子科技大学 | 一种基于暗通道信息的图像去雾方法 |
CN103700079A (zh) * | 2013-12-17 | 2014-04-02 | 中国科学院深圳先进技术研究院 | 图像去雾方法及装置 |
CN103903234A (zh) * | 2014-03-12 | 2014-07-02 | 南京第五十五所技术开发有限公司 | 一种基于图像景深的实时图像去雾方法 |
CN104166968A (zh) * | 2014-08-25 | 2014-11-26 | 广东欧珀移动通信有限公司 | 一种图像去雾的方法、装置及移动终端 |
CN104732497A (zh) * | 2015-03-31 | 2015-06-24 | 北京交通大学 | 一种图像去雾方法、fpga及包含该fpga的去雾系统 |
Non-Patent Citations (1)
Title |
---|
唐红梅 等: "雾霾天气条件下车牌信息的识别", 《电视技术》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301623A (zh) * | 2017-05-11 | 2017-10-27 | 北京理工大学珠海学院 | 一种基于暗通道和图像分割的交通图像去雾方法及系统 |
CN112767392A (zh) * | 2021-03-02 | 2021-05-07 | 百果园技术(新加坡)有限公司 | 图像清晰度确定方法、装置、设备及存储介质 |
CN112767392B (zh) * | 2021-03-02 | 2024-04-09 | 百果园技术(新加坡)有限公司 | 图像清晰度确定方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106339988B (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11467661B2 (en) | Gaze-point determining method, contrast adjusting method, and contrast adjusting apparatus, virtual reality device and storage medium | |
CN106296612B (zh) | 一种图像质量评价和天气状况引导的分级式监控视频清晰化系统及方法 | |
CN108510451B (zh) | 一种基于双层卷积神经网络的重建车牌的方法 | |
CN103985098B (zh) | 一种证件图像的高光去除方法及系统 | |
CN104200447B (zh) | 一种实时低照度彩色图像增强装置 | |
CN104809700B (zh) | 一种基于亮通道的低照度视频实时增强方法 | |
CN105046658A (zh) | 一种低照度图像处理方法和装置 | |
CN103606137A (zh) | 保持背景和细节信息的直方图均衡化方法 | |
CN109740721B (zh) | 麦穗计数方法及装置 | |
WO2021238420A1 (zh) | 图像去雾方法、终端及计算机存储介质 | |
WO2021139197A1 (zh) | 一种图像处理方法及装置 | |
CN103312940A (zh) | 一种基于fpga的自适应中值滤波方法 | |
CN115861380B (zh) | 雾天低照度场景下端到端无人机视觉目标跟踪方法及装置 | |
CN103578083A (zh) | 基于联合均值漂移的单幅图像去雾方法 | |
CN107945122A (zh) | 基于自适应直方图分段的红外图像增强方法及系统 | |
CN108629750A (zh) | 一种夜间去雾方法、终端设备及存储介质 | |
CN103347171B (zh) | 基于dsp的雾天视频处理系统及方法 | |
CN106023118A (zh) | 一种图像去雾方法及其在fpga上的实现方法 | |
CN106339988A (zh) | 一种图像去雾方法及装置 | |
CN103839245A (zh) | 基于统计规律的Retinex夜间彩色图像增强方法 | |
CN110458029B (zh) | 一种雾天环境中的车辆检测方法及装置 | |
CN110738624B (zh) | 一种区域自适应的图像去雾系统及方法 | |
CN117274107A (zh) | 低照度场景下端到端色彩及细节增强方法、装置及设备 | |
CN112767278A (zh) | 基于非均匀大气光先验的图像去雾方法及相关设备 | |
CN109166081B (zh) | 一种视频能见度检测过程中目标亮度调节方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 518000 Guangdong, Nanshan District high tech Zone, Shenzhen Software Park Phase 1, building 4, room, building 4, 406-421 Applicant after: Shenzhen Shenyang electronic Limited by Share Ltd Address before: 518000 Guangdong, Nanshan District high tech Zone, Shenzhen Software Park Phase 1, building 4, room, building 4, 406-421 Applicant before: Aike Chuangxin Microelectronic Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |