APP下载

基于图像处理的轨旁信号机识别方法

2022-07-16冯俊逸张轩雄

电子科技 2022年8期
关键词:信号机信号灯图像处理

冯俊逸,沈 拓,2,张轩雄

(1.上海理工大学 光电信息与计算机工程学院,上海 200093; 2.同济大学 上海市轨道交通结构耐久与系统安全重点实验室,上海 201804)

信号机是轨道交通的重要基础设备之一,是保障列车安全运行、实现行车指挥和列车运行现代化、提高运输效率的关键系统设备。在轨道交通中,凡是危及行车安全的地点,均有设置信号机。如果信号机的信号显示未被司机及时发现,则会造成重大的铁路事故[1]。

目前信号机的检测方式有两种:司机的肉眼观察与车内机车信号。当列车处于高速运行状态时,天气或司机注意力不集中等因素可能导致司机难以及时辨别甚至未发现信号机。而机车信号虽然对保障行车安全起到了重要作用,但由于机车信号尚未主体化,因此实际运行中还存在诸多问题,例如出现掉码、串码的情况[2]。为了进一步保障列车的运行安全,本文以图像处理技术为基础,研究了一种定位和识别轨旁信号机的算法。该算法可作为司机辅助驾驶的一部分,提醒司机前方信号机状态,减轻司机的驾驶负担。

随着数字图像处理和计算机视觉技术的发展,图像处理技术已经在医疗、工业、无人驾驶[3]等领域中得到了应用。根据不同研究对象的特点采用不同的图像处理方法,能快速地从整张图像中获得需要的信息。本文的研究对象(信号机)具有鲜明的颜色和形状特征,通过颜色分割等图像处理技术可以快速获得信号机的候选区域,再考虑实际情况中信号机和轨道的位置特点,以轨道位置信息为依据可以从候选区域中对指挥当前轨道运行的信号机位置进行准确定位,进而分析其颜色信号。

图像处理技术已被用于信号灯识别,但该应用主要集中于路面交通灯,目前的应用主要分为3种:(1)通过对图像进行特征提取,利用分类器进行分类识别[4-5]。文献[4]先后在RGB和HSV色彩空间进行颜色分割,根据交通灯的几何特征和背板的颜色信息筛选出候选区域,提取目标的梯度方向直方图(Histogram of Oriented Gradient,HOG),特征并通过训练好的支持向量机(Support Vector Machines,SVM)分类器进行分类识别;(2)根据信号灯的圆形特征,利用霍夫圆变换进行识别。文献[6]在归一化后的RGB颜色空间进行颜色分割,提取出候选区域,然后对这些候选区域进行边缘检测,最后通过Hough圆变换定位出交通灯;(3)模板匹配[7-8]。文献[7]通过HSV颜色分割和形态学降噪后得到交通灯的候选区域,利用交通灯的形状特征做初步筛选,最后使用归一化互相关模板匹配技术定位出交通灯。

运用图像处理识别轨道信号机的研究较少。文献[9]在HSV颜色空间内进行颜色分割,通过Canny算子、腐蚀膨胀以及开闭运算等技术提取铁路信号灯图像的几何特征,并通过Hough检测对图像中铁路信号灯进行定位。文献[10]根据火车转向提取不同的ROI(Region of Interest)区域,在ROI区域内使用卷积神经网络实现信号机的定位,最后设置像素值条件判断信号灯所在区域内的颜色信号。这两种方法虽然都能识别到信号机,但针对的场景都比较单一,当场景中出现多个信号机时,无法准确判断哪一个信号机在指挥当前轨道列车运行。针对此问题,本文结合轨道交通这一特殊场景,以轨道作为判断依据,在准确识别到所有信号机的前提下,解决场景中出现多个信号机时的定位问题。

1 轨旁信号机识别算法

1.1 信号机候选区域提取

根据信号机的颜色和形状特征,从整张图像中提取出所有信号机的候选区域,后续再做进一步定位。提取方法步骤如下:

步骤1提取ROI。由于相机安装在列车上的位置和轨旁信号机可能出现的位置相对固定,通过分析所拍摄的轨道场景图像数据集中不同距离信号机出现的位置可知,在相机各项参数不变的条件下,不同处的信号机均位于图像的中间区域。因此,截取图像中间1/3的图像,并删除左右各1/3的图像,以剩下区域作为ROI进行后续的处理,如图1所示。

图1 虚线框即所取ROIFigure 1. ROI is shown in the dashed box

步骤2颜色分割。对提取的ROI图像在RGB色彩空间内进行颜色分割,可剔除大量与研究对象无关的背景干扰,从而便于定位信号机的候选区域。采用固定阈值颜色分割将图像二值化[11],与信号颜色相同的红、黄、绿的像素点设为白色,其它像素点设为黑色。通过统计分析数据集中不同背景和不同光照环境下信号显示的颜色信息,得到信号颜色在RGB色彩空间中各分量值的大致范围。各分量阈值范围如表1所示;

表1 R、G、B的阈值范围Table 1. Threshold range of R,G,B

步骤3开运算。利用开运算先腐蚀图像中的高亮部分,剔除掉一些颜色分割后残留的小型白斑噪声。对腐蚀之后的图像,针对其中的高亮部分进行膨胀操作,填充大块圆斑中的小型黑洞,使图像中的白色圆形区域更饱满,便于后续根据信号机的形状特征进行检测;

(a)

(b)图2 开运算效果图(a)开运算前 (b)开运算后Figure 2. The result of opening operation(a)Before opening operation (b)After opening operation

步骤4霍夫圆检测。本文采用了基于霍夫梯度法的霍夫圆变换[12]。信号机在开运算后的二值图像中呈现为白色的圆形,使用霍夫圆变换检测图像中的所有圆形区域,作为信号机的候选区域。提取效果如图3所示。

图3 信号机候选区域Figure 3. The candidate region of signal

1.2 定位当前轨道信号机

城市轨道交通中,每一个站台附近以及道岔处都设有信号机,这些地方往往不止一条轨道,因此也存在着多个信号机分别显示相应轨道列车的运行状况[1]。此时需要正确区分当前轨道和其他轨道信号机的问题,以防误判。

为了区分当前轨道和其它轨道的信号机,本文利用了信号机与轨道的固定位置关系。信号机通常位于当前轨道的右边[1],因此可以先找到当前轨道的右轨所在的直线作为参考。Canny算子在抑制噪声和边缘检测之间能达到较好的平衡[13-14],本文选择Canny算子对ROI图像进行边缘检测,利用霍夫直线变换检测边缘图像中的直线。通过设置斜率和长度作为筛选条件,对右轨道所在的直线进行定位,进而以右轨作为参考,从候选信号区域中定位出右边距离该轨道最近的信号机区域。具体过程如图4所示。

图4 信号机的定位(a)边缘图像 (b)霍夫直线效果图 (c)定位右轨 (d)定位信号机Figure 4. The location of signal light(a)Edge image (b)Effect image of Hough-line (c)Right rail location (d)Signal light location

图5 轨旁信号灯的识别结果(图中的圆圈为算法最终的输出)(a)夜晚识别效果图I (b)夜晚识别效果图II (c)白天识别效果图I (d)白天识别效果图IIFigure 5. Recognition results of trackside signal lights (the circle is the final output of the algorithm)(a)Night recognition effect image I (b)Night recognition effect image II (c)Daytime recognition effect image I (d)Daytime recognition effect image II

1.3 信号机颜色识别

表2 信号机识别结果Table 2. The signal lights recognition results

不同颜色信号代表了不同的指令:红色信号指示列车必须在信号机前停车;绿色信号指示允许列车进入防护进路,且前方道岔处于定位状态;黄色信号指示允许列车进入防护进路,但前方道岔处于反位状态。

定位到信号机后,需要对其颜色信号进行识别,将对应的指示发送给司机,提醒司机做好相应的准备。对识别到的信号机区域,在RGB色彩空间中,计算该区域内的红、黄、绿像素点的分布情况,统计其中像素点个数最多的颜色类型,并将其判定为当前信号机的颜色。本文中,用于分析像素点颜色类型的RGB阈值范围与颜色分割时所用阈值(见表1)相同。

(a)

(b)图6 虚检测和漏检测图像(a)虚检测 (b)漏检测Figure 6. Image of false and missing detection(a)False detection (b)Missing detection

2 实验验证与分析

为了验证该方法的准确度和可行性,实验采集了上海轨道交通11号线和同济大学轨道交通实验线的信号机图像作为数据集,图像分辨率为72 dpi,大小为1 800×1 200。使用C++和OpenCV[15-18]在Windows系统中实现所提出的方法。图5为不同环境下不同颜色的轨旁信号灯识别效果。

实验中,测试了在不同远近距离处和在不同光照环境下的信号机图像,共计90张,其中同时存在多个信号灯的图像占图像总数的50%。表2为3种颜色信号机的识别结果,从中可以看出,绿灯的识别效果最好,该类信号灯颜色与周围环境的差异最大,通过颜色分割得到的二值图像中,保留下来的信号灯区域更为完整。黄灯的识别效果较红灯和绿灯更差,由于黄灯受光照的影响比绿色和红色更明显,特别是夜间的照明灯光颜色以及墙体的反光与黄色信号灯非常相似,导致一些识别错误。图6(a)中,由于站台右侧墙壁反射了信号灯的光,导致提取了一个非信号机的候选区域,但这种虚检测可以通过本文的轨道定位信号机的方法过滤掉。图6(b)为距离220 m的信号机,但结果表明本文方法并未识别到该距离下的信号机。原因主要是信号灯在图像上仅占4个像素大小,过少的像素点导致后续识别无法检测到信号机。如图5 (a)所示,本文方法所能识别到的最远距离约为150 m。

文献[10]使用卷积神经网络定位信号机耗时13.83 s,本文采用图像处理的方法识别信号机,识别速度更快,识别时间仅为0.37 s。此外,文献[10]的方法在多个信号机同时存在的场景下,无法对信号机进行有效区分。图5中,在夜间站台的场景下,存在3个信号机时,本文所提出的方法不仅能够全部提取出这3个信号机作为候选区域,还能通过轨道信息,准确定位出指挥当前轨道列车运行的信号机。通过图像处理的方法,后续可在本文的研究基础上集成更多的功能,例如轨道障碍物识别及前方车距测量。

3 结束语

基于图像处理的方法,本文提出了一种用于轨道交通辅助驾驶的轨旁信号机识别算法,并通过实验验证了该算法的可行性。还算法不仅能够有效地检测出信号机,还可以根据轨道和信号机之间的位置特征,准确区分当前轨道和其它轨道的信号机,进而识别当前轨道信号机的颜色信号,避免误判,为列车的安全运行提供了进一步的保障。但该方法仍存在不足,例如其在雨天、大雾天等恶劣环境下的识别效果不佳。后续的研究将针对这些情况进行深入优化,以提高该方法的实际应用性能。

猜你喜欢

信号机信号灯图像处理
海战场侦察图像处理技术图谱及应用展望
人工智能辅助冠状动脉CTA图像处理和诊断的研究进展
铁路信号机一体化的双灯设计
驼峰信号机与驼峰辅助信号机显示不一致问题分析
地铁车辆段信号设备的维护与改进
基于ARM嵌入式的关于图像处理的交通信号灯识别
机器学习在图像处理中的应用
信号灯为什么选这三个颜色?
色灯信号机的结构与功能
安装在路面的交通信号灯