发明内容
本发明的目的是提供一种基于形态特征的夜间行驶车辆远光灯开启状态的判别方法,解决了现有技术中存在的对远光灯打开状态特征提取具有一定的难度,很难进行准确识别的问题。
本发明所采用的技术方案是,一种基于形态特征的夜间行驶车辆远光灯开启状态的判别方法,包括以下步骤:
步骤1、获取能够明显辨别车灯形态的图像;
步骤2、对捕获图像进行二值化处理;
步骤3、对二值化处理后的图像进行腐蚀处理;
步骤4、对腐蚀处理后的效果图进行贴标签处理;
步骤5、对贴标签后的图像进行小面积连通域的消除处理;
步骤6、对小面积连通域消除处理后的效果图进行连通域合并处理;
步骤7、对车灯排列形状进行检测;
步骤8、判断同一车辆的车灯开启状态。
本发明的判别方法,其特点还在于:
步骤1中,通过对摄像机或相机设置合适的曝光参数、光源补光、高光抑制、红外成像、偏振滤波,实现对夜间行驶车辆车灯区域发光体的形状特征的清晰捕获。
步骤2中,对读入视频的当前帧图像[frame(x,y)]m×n进行二值化处理,提取包含车灯部分在内的高光区域,作为车灯形态识别的待测区域,
其中的m×n表示帧图像的行数为m行,列数为n列,(x,y)表示帧图像中像素点的坐标,[·]表示整个图像,优选Otsu算法,则二值化图像[binary(x,y)]m×n为:
其中,Th为二值化的阈值。
步骤3中,为了消除图像中的噪声和一些小且无意义的目标物区域的影响,对二值化图像binary(x,y)进行形态腐蚀处理,腐蚀运算时,采用N×N的正方形结构元素Se,N为奇数,原点为结构元素Se中心位置,设对binary(x,y)进行形态腐蚀处理后的效果图为
步骤4中,对腐蚀运算后的效果图
进行贴标签,每一个不同的标签代表不同的连通域。
步骤5中,对贴标签后面积较小的连通域进行消除处理,
首先统计每一个连通域的面积,第K个连通域面积Sk的计算公式为:
其中,L为连通域的个数,Ωk为第K个连通域;
之后消除面积小于预设阈值Area的连通域,设对
进行小面积连通域消除处理后的效果图为
小面积连通域消除处理的计算公式为:
步骤6中,连通域合并处理的计算公式如下:
其中,[a,b]为连通域合并处理的范围,a<0,b>0均为整数。
步骤7中,设置有上下、左右、左向倾斜、右向倾斜四个方向的匹配模板,
设模板为Template(x,y),构建待测连通域与模板之间的匹配相似度评价函数Similar(k),在构建评价函数Similar(k)时,引入奖励开关函数Sreward(x,y)和惩罚开关函数Spenalty(x,y),计算公式如下:
相似度评价函数Similar(k)的计算公式如下:
计算远光灯判定条件如下:
Similar(k)>thρ, (8)
其中,thρ为远光灯的判断阈值。
步骤8中,通过模板匹配检测出车灯形状后,再按照其位置信息进行配对,
首先按照从上到下从左到右的顺序依次求其质心(xc,yc),质心的计算公式如下:
其中,Ωk为找到的连通域;
之后,按照质心的位置(xc,yc)将位于同一水平的连通域按照从左到右的顺序依次配对,每对连通域视为同一车辆的车灯,即可判断远光灯是否为开启状态。
本发明的有益效果是,通过设置合适的曝光参数、光源补光、高光抑制、红外成像、偏振滤波等技术手段,抑制灯光区域的高光溢出,获取远光灯形态特征,通过模板匹配的方法识别定位开远光灯车辆,并对其进行区分后判别远光灯的开闭状态,识别准确,结果可靠。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明的基于形态特征的夜间行驶车辆远光灯开启状态的判别方法,包括以下步骤:
步骤1、获取能够明显辨别车灯形态的图像
通过对摄像机或相机设置合适的曝光参数、光源补光、高光抑制、红外成像、偏振滤波等技术手段,实现对夜间行驶车辆车灯区域发光体的形状特征的清晰捕获。
如图1、图2所示,分别为两个实施例车辆(近光和远光状态)的车灯区域发光体形状特征捕获图像。
步骤2、对捕获图像进行二值化处理
根据发光体在帧画面中呈现高光的特点,对读入视频的当前帧图像[frame(x,y)]m×n进行二值化处理,提取包含车灯部分在内的高光区域,作为车灯形态识别的待测区域。
其中的m×n表示帧图像的行数为m行,列数为n列,(x,y)表示帧图像中像素点的坐标,[·]表示整个图像。因为灯光区域呈现明显的高光,车灯发光区域部分与其他部分的亮度差异很大,因此可以简单的采用全局阈值方法进行二值化处理,考虑到适应道路环境中,有路灯照明和无路灯照明灯情况的影响,建议优选Otsu算法。(注:Otsu阈值算法为教材公开的经典算法),则二值化图像[binary(x,y)]m×n为:
其中,Th为二值化的阈值,由Otsu算法确定得到。
如图3、图4所示,为上述的两个实施例二值化后的图像。
步骤3、对二值化处理后的图像进行腐蚀处理
为了消除图像中的噪声和一些小且无意义的目标物区域(如汽车车身反射灯光后的散乱高光区域)的影响,需要对二值化图像binary(x,y)进行形态腐蚀处理。腐蚀算法可参考数字图像处理方面的专业教材。
腐蚀运算时,采用N×N的正方形结构元素Se,N为奇数,原点为结构元素Se中心位置,设对binary(x,y)进行形态腐蚀处理后的效果图为
如图5、图6所示,为上述的两个实施例腐蚀运算后的图像。
步骤4、对腐蚀处理后的效果图进行贴标签处理
贴标签算法可参考数字图像处理方面的专业教材。对腐蚀运算后的效果图
进行贴标签之后,便可标识图片中的每一个连通域Ω
k,每一个不同的标签代表不同的连通域。
如图7、图8所示,为上述的两个实施例贴标签后的图像。
步骤5、对贴标签后的图像进行小面积连通域的消除处理
为解决小面积发光体的干扰的问题,考虑到每个车灯的物理尺寸有一个相对合理的范围,对贴标签后面积较小的连通域进行消除处理。
首先统计每一个连通域的面积,第K个连通域面积Sk的计算公式为:
其中,L为连通域的个数,Ωk为第K个连通域;
之后消除面积小于预设阈值Area的连通域,设对
进行小面积连通域消除处理后的效果图为
小面积连通域消除处理的计算公式为:
其中面积阈值Area可取经验值,本发明实施例步骤中,对于1024×768分辨率的画面,监控一个车道的情况下,取Area=100。
如图9、图10所示,为上述的两个实施例对小面积连通域消除处理后的图像。
步骤6、对小面积连通域消除处理后的效果图进行连通域合并处理
因为车辆的远光灯和近光灯同属于组合前照灯,空间位置相邻,夜间行车时,远光灯打开的同时,近光灯也处于开启状态,进行连通域合并处理,是为了将同一侧同时打开的远光灯与近光灯区域合并为同一个区域。
连通域合并处理的计算公式如下:
其中,[a,b]为连通域合并处理的范围,a<0,b>0均为整数,取经验值。
如图11、图12所示,为上述的两个实施例连通域合并后的图像。
步骤7、对车灯排列形状进行检测
车灯设计时,形状近似为圆形,当远光灯打开同时,近光灯也处于开启状态,发光区域的形状为两个近似对称的圆形,为了解决近光灯和远光灯发光***置摆放并不统一的问题,本发明方法设置有上下、左右、左向倾斜、右向倾斜四个方向的匹配模板,分别如图13、图14、图15、图16所示。
设模板为Template(x,y),构建待测连通域与模板之间的匹配相似度评价函数Similar(k),在构建评价函数Similar(k)时,引入奖励开关函数Sreward(x,y)和惩罚开关函数Spenalty(x,y),计算公式如下:
相似度评价函数Similar(k)的计算公式如下:
计算远光灯判定条件如下:
Similar(k)>thρ,(8)
其中,thρ为远光灯的判断阈值,当图像分辨率为1024×768时,优选取值为thρ∈[30,60]。
步骤8、判断同一车辆的车灯开启状态
一般来说,汽车外形为左右对称设计,汽车车灯对称的位于车头两侧,且高度相同,所以,通过模板匹配检测出车灯形状后,再按照其位置信息进行配对。
首先按照从上到下从左到右的顺序依次求其质心(xc,yc),质心的计算公式如下:
其中,Ωk为找到的连通域。
之后,按照质心的位置(xc,yc)将位于同一水平的连通域按照从左到右的顺序依次配对,每对连通域视为同一车辆的车灯,即可判断远光灯是否为开启状态。
本发明方法,对进入监视画面的行驶车辆,通过上述的步骤依次对图像处理后,便可准确判断出其远光灯是否为开启状态,为智能交通***提供一种自动、实时、有效的检测方法。