APP下载

基于夜间车辆检测的智能矩阵车灯控制方法

2023-04-25李慧

计算机应用文摘·触控 2023年8期

李慧

关键词:昼夜检测;车辆识别;多场景行车;车灯控制

1引言

随着科技的进步以及道路系统的完善,汽车的行驶速度相较于以往有了很大的提升。在高速行驶的过程中,汽车需要能够照射得更远以及更亮的远光灯,虽然性能更强的远光灯为车辆在高速行驶的过程中提供了一份安全保障,但也造成了许多安全事故[1]。性能更强的远光灯使夜间车辆会车时,对其他车辆造成更强的眩光,导致事故的发生[2]。违反规定使用汽车的远近光灯或其他灯光是造成交通事故的重要原因之一[3]。

文獻[4]提出了一种新的自适应阈值分割算法。该算法能够抵抗复杂环境的干扰。在车辆检测阶段,增加了基于传统梯度直方图( HOG)特征向量的对称计算。文献[5]提出了一种夜间交通监控系统,包括大灯检测,大灯跟踪和配对,以及摄像机校准和车速估算。文献[6]提出了一种用于夜间车辆检测的目标建议生成方法,将不同的特征权重、建议、滑动窗组合起来生成一组建议,用于定位夜间车辆检测的概率区域。

以上大多数研究识别车辆算法计算量大,对硬件有着较高要求且研究对象为汽车前灯或汽车尾灯。本文针对这一系列问题,提出了一种智能矩阵车灯辅助控制方法,该方法包括夜间车辆识别方法,以及对矩阵远光车灯进行智能分区控制,使车灯控制更加智能化。

2车灯控制

2.1智能矩阵车灯控制原理

目前,针对智能车灯的要求出现了一种可以分区照明的智能矩阵车灯。如图1(b)所示,将车灯的光型分离成一列列矩阵光型,上三列为远光灯,下两列为近光灯;图1(a)中,当相向行驶的车辆位于远光灯外的区域时,图1(b)车灯保持全区域开启状态;图1(c)中,当与相向行驶的车辆位于远光灯内的区域时,系统将自动关闭会车车辆所在区域的车灯,但其他区域的车灯保持开启状态,如图1(d)所示;车辆驶离该区域时,系统将开启此区域的车灯。这样的方式不仅能够给驾驶员良好的驾驶视野,而且有效避免了远光灯照射到会车车辆,导致会车车辆驾驶员产生炫目的情况。当前方有同向行驶车辆时,车灯控制方法与相向行驶会车相同。

2.2夜间行车场景分析与车灯控制

夜间行车会有多种行车场景,本文对主要的夜间城市公路、夜间城市高速公路、夜间省道和夜间乡镇道路行车场景进行分析。每个行车场景如图2所示,图2(a)、图2(b)为行车记录仪图,图2(c)、图2(d)为车灯控制示意图。

如图2(a)所示,夜间城市公路有较好的视野,同时道路宽敞、辅助线清晰。夜间行车时主要会遇到相向行驶车辆、同向行驶车辆、路灯、交通信号灯等,该情况下车灯应切换为近光灯。

如图2(b)和2(c)所示,夜间高速公路道路规则且宽敞,多为直线路段行驶。城市间高速公路有路灯,省道等路段视野较差。城市高速公路会有绿化带可阻挡相向行驶车辆的车灯。该情况下,夜间行车主要会遇到同向汽车、路灯和路标。但部分国道、省道以及盘山高速公路等没有设立绿化带,会有相向行驶的车辆、同向行驶的车辆、路标。该情况下,如图2(C)所示,夜间省道行车没有路灯时,可开启远光灯和近光灯,否则如图2(b)所示,城市公路行车时仅开启近光灯。如图2(d)所示,夜间乡镇道路和公路相比,道路更加不规则且视野较差,主要遇到的是相向行驶车辆和同向行驶车辆。该情况下,车灯开启近光灯以及远光灯。

3夜间车辆检测

3.1图像预处理

首先设定感兴趣区域,以划定检测的范围,一般情况下,车辆在行驶时都是在公路上(如图3所示)。为了消除图像中的干扰信息,如路灯、交通信号灯等,并且减少不必要的计算,需要对图像进行感兴趣区域的设置。从图3可以看出,路灯等一些较高的物体存在于天空区域,车辆存在于路面区域。因此,我们对图像中的车辆进行检测日寸只需要在感兴趣区域内部(路面区域)进行检测。

如图3所示,首先将行车图像空间区域分为天空区域和路面检测区域,天空区域可以通过直方图有效获得环境亮度情况,以及天空区域主要出现的内容为交通信号灯和路灯,路面检测区域主要识别相向行驶车辆以及同向行驶车辆。

3.2车灯提取

3.2.1车前灯提取

针对车前灯的提取,首先要对图像进行灰度化处理,然后结合直方图双峰法和路面反射光消除方法对车前灯进行提取:针对路面上的大面积反射光分析车灯连通域边界点到质心距离的方差,以及路面反射光连通域边界点到质心距离的方差特征,通过阈值的设置对路面反射光进行消除,如图4所示。

3.2.2车尾灯提取

针对车尾灯的提取,首先需要对尾灯图像进行(R-G)(R-B)和R/(G-B)算子的运算,分析运算后图像的分布直方图,选用效果最好的图像,即(R-G)色差图像作为车尾灯提取的输入。

3.2.3车灯配对

为了更好地检测到每一辆车,对识别到的车灯进行配对处理是必要的操作。在对车灯进行配对前,对车灯特征进行分析。通常来说,车灯都是以相同的速度向同样的方向进行移动,因此可以通过车灯的空间信息来对车灯进行配对。对属于同一辆车的车灯进行匹配,所做工作包括分析车灯的位置相似性、面积相似性、速度相似性以及其他的一些约束条件,如最小外接矩形的特征,从而设计出合理的车灯配对规则,并对出现的异常配对情况进行处理。

3.3异常情况处理

车灯匹配完成后,就可以识别出属于同一辆车的车灯对,进而对夜间车辆进行识别。但是,车灯匹配时也有可能会出现一些特殊的情况:有一些车辆的车灯有4个。分析这4个灯的特征,发现4个灯为上排2个、下排2个,并且上排的灯与下排的灯之间距离很近、相互平行。

针对这种情况,本文给出的解决办法如下:设置一个阈值K,若2组车灯之间的距离小于K,则认为这2组车灯同属一辆车。本文根据大量实验数据总结得到,2组车灯之间的距离不会大于50,通过上述方法解决了车前灯或车尾灯有4个的问题。

4系统实现

本实验样本来自行车记录仪采集的视频信息,其中包括高速公路、城市道路和乡镇道路3种场景。系统采用“Raspberry Pi 3B+单片机”,1.4 GHz 64位4核ARM Cortex-A53处理器,利用Python语言进行程序编写,对夜间车辆识别并进行GPIO控制LED灯亮/灭。

结合硬件系统以及识别算法处理后的结果,最终矩阵车灯控制效果如图5所示:将识别的图分为8列,每1列的识别结果会控制对应该列照明车灯。图5中车辆所在的区域为第2~6列区域,则智能矩阵车灯系统将关闭该区域的远光车灯部分,其他区域的远光灯以及近光车灯保持常亮状态。

5实验与总结

本文夜间路况识别算法是在主频为1.4 GHz的ARM处理器的树莓派单片机上运行测试,并以视频的方式实时检测。为了更好地体现算法的性能,本文以大小为640冰360像素的静态图片的方式进行测试,单张测试时间为89ms,满足车灯识别控制需求。

由表1可得,该方法在各个环境下的综合准确率在85%以上,在检测距离为90m及以上的车辆识别效果没有达到80%,原因是90m及以上的车辆特征信息不明显且光斑易融合。虽然不能准确检测到车辆,但该方法通过异常情况处理后车灯控制准确率在96%。

本文提出了一种智能矩阵车灯控制方法,以及天空与陆地交界面的方式为昼夜识别提供目标区域,且将环境灯与车灯分离,减少车辆识别误差;提出了一种掩模阈值分割车灯方法,能够更好地分割汽车车灯,以减少环境光带来的干扰;提出一种汽车识别方法,不仅可以检测到同向行驶车辆,也可以检测到相向行驶车辆,满足了矩阵车灯识别大部分车辆的需求。