本发明涉及一种图像处理领域,尤其是一种晚间灯光照明条件下获取的图像的处理技术,具体地说是一种红色、绿色、蓝色、黄色等常见信号灯产生的有色眩光的去除方法。
背景技术:
在夜间行车过程中,由于道路旁路灯、前车尾灯及对面来车的照明灯等影响,行车记录仪采集到的夜视图像中通常包含了大量的眩光,其按照颜色可以分为白色眩光、红色眩光和黄色眩光等。白色眩光和红色眩光最为常见且对图像影响较大,黄色等眩光通常被这两种颜色眩光覆盖,对图像影响较小。
眩光问题通常的解决方法是改善照明方案或者进行遮光处理,但是夜视图像中光源的不确定性使得传统的解决方法很难达到预期效果。行车记录仪采集到的夜视图像中的白色眩光呈现雾状特征,可以使用去雾或者图像增强的方法进行去除。常用的去雾方法有暗通道先验去雾方法、直方图均衡去雾、retinex和同态滤波等。暗通道先验去雾方法在夜视图像的场景中表现最好,能够作为白色眩光的去除方法。
使用暗通道先验去雾算法去除图像中的白色眩光时,首先计算输入图像的暗通道图像,并使用导向滤波或其他方法对其进行细化处理,然后通过得到的暗通道图像获取大气光值和透射率,最后使用恢复公式去除图像中的白色眩光。暗通道先验理论基于暗通道图像的一个重要特性:无雾图像的暗通道图像的灰度值很低,有雾图像的暗通道图像的灰度值较高。暗通道先验去雾理论根据这一特性将暗通道图像作为原始图像中雾的衡量标准,并由此推导出图像恢复公式去雾图像中的白色雾状噪声,此方法同样适用于白色雾状眩光的去除。
红色眩光主要是由车辆尾灯的灯光在空气中尘埃的散射作用下形成的,存在于车辆尾灯的周围,呈现出红色的光晕;同时,在夜间行驶的情况下,路面也会反射少量的红色光,使得夜视图像中前方车辆尾部区域不均匀的分布着红色眩光。夜视图像的红色眩光和白色眩光一样严重影响图像处理算法的实现。红色眩光和白色眩光在形态上呈现出相似的雾状特征,其去除方法主要依靠先进的硬件设备,如红外摄像头,但通过图像处理的方式对其进行抑制的研究少之又少。
摄像头作为汽车的视觉感知设备,其采集的信息很大程度上影响了辅助驾驶决策的制定。眩光的存在不仅影响图像的视觉效果,同时极大削弱了摄像头的辅助驾驶作用,限制智能算法的实现。因此,在夜间行车情况下,如何充分发挥摄像头的作用,充分利用其采集到的数据,提高辅助驾驶的实用性是一个亟待解决的问题。
技术实现要素:
本发明的目的是针对现有的智能驾驶系统的图像处理装置无法处理有色眩光而影响对道路通行状态判定的问题,发明一种能快速处理各类有色眩光的眩光处理方法。
本发明的技术方案是:
一种有色眩光的去除方法,其特征在于它包括以下步骤:
(1)输入包含有色眩光的原始图像,计算原始图像的暗通道图像:
其中,kdark(x)表示暗通道图像,ω(x)表示以像素点x为中心的窗口,jε(y)(ε∈{g,b})表示原始图像的g,b单通道图像;
(2)通过暗通道图像计算所述图像的大气光值a;
(3)通过暗通道图像计算所述图像的透射率,计算公式为:
其中,t(x)为透射率矩阵,i(y)为输入图像,w为比例系数,c表示图像通道。
(4)图像恢复:输入原始图像、大气光值a和透射率去除所述图像中存在的眩光,图像恢复公式为:
其中,j(x)为去眩光后的图像,i(x)为原始图像,t0为常数,其作用是调整图像处理效果,防止过度处理。作为本发明的改进方案,t0的取值范围为0.05~0.2。
所述的有色眩光包括红色眩光、绿色眩光或蓝色眩光,输入的原始图像包含眩光类噪声。
输入图像为不限于色彩空间的多通道图像,
对暗通道图像的细化处理方法包括导向滤波法和最小值滤波法。
所述的大气光值a的求取方法为:
(1)对暗通道图像的灰度值进行排序,找到前0.1%的像素值的位置;
(2)在原始图像中寻找对应位置的亮度值的平均值作为a;亮度值为近似值或近似常数。
在rgb色彩空间中,亮度的计算公式为:
y=0.399r+0.587g+0.114b
其中,y表示某一像素点的亮度,r,g,b表示该像素点的不同通道的灰度值。
具体实施时,原始图像需进行归一化处理。并采用加速计算方法求取暗通道图像、大气光值a及透射率。
本发明的有益效果:
本发明通过全新的暗通道图像计算方式,实现了红色眩光的去除。具有快速方便,效果好的优点,能满足自动驾驶技术的需要。
附图说明
图1是本发明去除眩光算法流程图。
图2是本发明的包含眩光的夜视图像。
图3本发明的去除白色眩光效果图。
图4本发明去除红色眩光效果图。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
如图1-4所示。
一种有色眩光的去除方法,以输入图像为行车记录仪输出视频帧为例(图2),尺寸1280*720,图像中包含白色眩光和红色眩光,图像整体灰度值很大,前方车辆特征被眩光覆盖,无法有效提取出有用信息。因此应先进行白色眩光的处理,然后再进行红色眩光的处理,整个计算过程如图1所示。
白色眩光的处理过程为:
对图像进行降采样处理,采样比例0.5。
计算图像的暗通道图像:对于白色眩光,暗通道图像计算公式为:
其中,jdark(x)表示白色眩光的暗通道图像,ω(x)表示以像素点x为中心的窗口,jβ(y)(β∈{r,g,b})表示原始图像各单通道图像。
计算大气光值a:
将暗通道图像中的像素值按照行、列从大到小分别排序,然后计算图像0.1%的像素个数,并在排序后的暗通道图像中以左上角为原点划分出相应个数的元素,并计算其平均值。
使用计算值作为二值化的阈值分割原始暗通道图像,生成掩膜。并使用此掩膜提取原始图像中的像素值,最后计算其亮度的平均值即为a。
在rgb色彩空间中,亮度的计算公式为:
y=0.399r+0.587g+0.114b
通过暗通道图像计算所述图像的透射率t,计算方法为:
其中,t(x)为透射率矩阵,i(y)为输入图像,w取0.9,c表示图像通道。
将原始图像、大气光值a和透射率t代入图像恢复公式以去除图像中的白色眩光:
其中,j(x)为去眩光后的图像,i(x)为原始图像,取t0=0.1,计算过程如图1所示,去除白色眩光后的照片如图3所示。
其次进行红色眩光处理:
首先,判断红色眩光区域,计算暗通道图像:
暗通道图像计算公式为:
其中,kdark(x)表示红色眩光的暗通道图像,ω(x)表示以像素点x为中心的窗口,jε(y)(ε∈{g,b})表示原始图像的g,b单通道图像。
计算大气光值a:
将暗通道图像中的像素值按照行、列从大到小分别排序,然后计算图像0.1%的像素个数,并在排序后的暗通道图像中以左上角为原点划分出相应个数的元素,并计算其平均值。
使用计算值作为二值化的阈值分割原始暗通道图像,生成掩膜。并使用此掩膜提取原始图像中的像素值,最后计算其亮度的平均值即为a。
在rgb色彩空间中,亮度的计算公式为:
y=0.399r+0.587g+0.114b
通过暗通道图像计算所述图像的透射率t,计算方法为:
其中,t(x)为透射率矩阵,i(y)为输入图像,w取0.9(取值范围为0.8-1之间),c表示图像通道。
将原始图像、大气光值a和透射率t带入图像恢复公式以去除图像中的红色眩光:
其中,j(x)为去眩光后的图像,i(x)为原始图像,取t0=0.1(也可取0.05-0.2之间的任一值)。使用图像恢复公式去除图像中的红色眩光后的效果如图4所示。
同理,利用本发明的方法可处理绿色眩光、黄色眩光等其它常见的眩光。
以上实施仅说明本发明的技术思想,但本发明的保护不限于此,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。