OpenCV技术下的智能交通信号灯控制系统设计
——以南通崇川区工农路段为例*
2022-09-26南通理工学院传媒与设计学院龚苏宁纪明媚陈欣欣董文佳樊慧娇
南通理工学院传媒与设计学院 龚苏宁 纪明媚 陈欣欣 董文佳 樊慧娇
随着城市机动车数量的高速增长,交通拥堵问题日剧严重,部分问题是由于红灯亮起的编码延迟所引起的,并不是真正的交通拥堵,因此,现阶段迫切需要一种能够有效优化交通流量的交通控制系统。本文提出一种基于OpenCV图像处理技术的智能交通信号灯控制系统(ITLCS),系统提供基于道路密度的交通灯信号配时,而不是设置与其他车道相平衡的水平等级,以便高负荷行车线可以长时间启用。该系统由一个面向车行道的摄像头拍摄行驶路线,然后拍摄行人和车辆的行驶密度,并通过OpenCV技术比较每幅图像,经过系统处理后即刻调整交通灯信号配时,这样大大减少花在无作用绿灯上的时间,可以有效地处理交通拥堵问题。
1 智能交通信号灯控制系统介绍
近些年来,我国城市建设发展十分迅猛,然而,城市问题也随之而来,城市道路交通拥堵问题日趋严峻,已成为制约城市健康、可持续发展的重要因素之一[1]。有的专家学者认为:城市道路基础实施的不完善、城市交通管理水平和城市交通参与者的行为是导致城市交通拥堵的重要因素[2];交通拥堵问题归根结底是交通需求与交通供给的平衡问题[3]。他们也提出了很多方法来解决交通堵塞问题,如:修建新的道路、使用局域网、RFID系统(射频无线信号自动识别系统)等,但由于很多已建区域没有足够空间建设新公路,同时利用 RFID技术实现安装RFID标签的道路车辆与安装在道路交叉路口[4],其费用比现状的交通信号灯系统高很多。
目前国内绝大多数交通信号灯为固定周期控制,这种定时控制算法显然不能根据交通流的变化而及时做出调整[5]。在人流量较大的地区,由于早晚交通高峰的影响,人们无法按照预期到达目的地,这就直接影响日常生活中人们每天要去处理的更多事情。另一个问题是车辆会在交叉路口停止和启动,这样直接导致燃油消耗比普通行驶过程更高,燃油成本增加,人们需要额外支付燃油费用,同时加剧了环境污染。另外消防车、救护车无法在适当的时间做出反应,以救护车的情况为例,在这条路上的病人处于危急情况时,因交通堵塞使救护车很可能无法在适当的时候到达医院,导致病人陷入生命危险之中。这就是为什么需要一个智能的交通控制系统,才能有效地应对不同的交通状况,避免交通堵塞和事故发生。
如图1所示智能交通监控系统的主要模块包括:车型、长度、交通、路线、交警和方向管理。本研究的主要内容是:利用所提出的智能交通灯控制系统(ITLCS)对交通灯进行控制,并利用图像检测车辆密度;对计算数码相机拍摄的车道图像进行处理,包括:锐化、模糊、增亮、边缘增强等操作;然后,利用计算机成像技术对图像进行分组分析,以便发现车辆,并通过操作条件和可动光进行控制。研究使用的图像处理工具是一个免费的、非商业的Intel开源的计算机视觉库OpenCV。
图1 智能交通控制系统模块Fig.1 Traffic monitoring system
2 前期研究
Pranjali B等人[6]提出了基于嵌入式Linux板和图像处理的自适应交通控制系统(ATCS)。他们建议根据道路密度而不是固定的时间框架来确定红绿灯信号的时间,这样可以确保交通拥堵严重问题一侧时间比另一侧长。一旦分配了每条车道的计时,每条车道将以顺时针方向打开一段既定的时间,之后根据密度的不同,在每条车道上花费不同的时间,不断重复这个周期。通过数码相机不断地记录视频,然后借助开源计算机视觉库的方法处理这些视频帧从而获得道路上车辆密度。GSM和GPS模块为这个建议性系统中的紧急情况提供额外服务。
Jackrit SuthakornA等人[7]提出在开源计算机视觉库上使用神经网络的智能车辆、驾驶员辅助系统能快速、实时、可靠的进行交通标志识别(TSR),自动路标检测与识别可以帮助和解除驾驶员的驾驶负担,显著提高驾驶的舒适性和安全性。对于自动智能车或驾驶员辅助系统来说,交通标志的自动识别也至关重要。他们对神经网络中的交通标志模式进行了阶段性研究,为了确定最佳的网络系统,还对程序进行了验证和测试。结果表明,该系统对具有复杂背景图像的道路标志具有很高的分类精度和较大的计算容量。
S Shinde等人[8]介绍了使用OpenCV的智能交通控制(STC),使用OpenCV软件为智能信号管理系统提供经济有效的解决方案。该系统在车道前面安装摄像头,可以对监管的道路进行照片拍摄,这些图像被有效地处理后,以便了解该道路的车流量。8051微控制器将根据来自OpenCV的处理数据,向交通LED计时器发送控制信号,以指示交通信号灯的特定时间。这种新方法的优点是:与传感器相比OpenCV具有生产成本低、配置简单、操作精度高、速度快等优点。但是这种方法不能在农村地区使用,因为农村地区车辆较少,交通拥堵问题很少发生。
Bilal Ghazal等人[9]建构了交通信号灯智能控制系统(STLCS)。红绿灯通常被用来监视和控制多条公路交叉口的交通活动。传统的控制系统不管理交叉口的可变流量,相邻的交通信号灯系统、车流时间差、交通事故、紧急车辆通行和行人过街之间不存在相互关联,结果导致交通堵塞和交通延误。该系统包括PIC微控制器的LED设备,它使用红外传感器计算交通密度,并实现不同级别的动态时隙分配。此外,远程控制器处理被困在拥堵的高速公路上的紧急车辆。
Anuradha G.Suratekar[10]介绍了以图像处理为基础的基于无线传感器网络的智能交通灯控制系统(WSNITCS)。设计了智能交通信号灯控制系统的图像处理,在交通检测方面,主要采用感应线圈法,但是它的物理体积巨大,不便于安装和维护。然而目前的交通控制系统已经设定了时间,所以目前的交通系统在交通管理和控制方面不是很有效。感应线圈之间也没有通信,无线传感器网络(WSN)具有容错性、可扩展性、实时性和协调性等特点,因此,可根据无线传感器网络的交通密度对交通信号灯系统进行了规划,利用C++语言来编程。
为了克服这些问题,本文提出了一种基于数码相机测量道路密度,自动改变交叉口信号灯的系统。借助全球移动通信系统(GSM)、全球定位系统(GPS)和图像处理技术,该系统通过自动调整交通信号灯,为紧急运输车辆提供了一条空闲路线,以保持公路线的畅通,从而在紧急情况下提供了一种便捷的运输方式,这将使交通系统能够正常工作。将提供流量同步上传到Web服务器上,存储整个系统的流量数据库,因此,在日常使用和紧急情况下,都能确保交通的顺畅和安全。
3 智能交通灯控制系统
本文提出了一种基于OpenCV图像处理技术的智能交通灯控制系统(ITLCS)。该系统通过为每个方向提供适当的时间来调节交通流,使得重载车道比其他车道开放的时间更长,同时保持总的交叉时间比,使得密度较低的车道也有自由路径,而无需等待更多时间。首先要获取准确的车辆数量数据,以此为依据合理分配每一条道路上的时间。该系统主要由无线收发器、微控制器、数码相机、图像处理单元和OpenCV软件组成。OpenCV系统是图像处理软件;Python是使用的语言;Rasberry Pi处理图像,并使用8051微控制器,使数字语言很容易地转换成二进制语言;所采用的技术包括Blob检测和彩色阈值;所使用的算法为卡尔曼滤波(Kalman Filter)算法。
ITLCS系统可以检测到消防车、救护车、应急车辆等并采取所需的行动,同时我们使用Python语言编程来实现这个操作。摄像机对图像进行采集后,用Raspberry Pi处理图像,根据交通密度对每个红绿灯进行时间分配。在紧急情况下,系统将会择优考虑。GSM和GPS发射器被放置在救护车上以便发出紧急警报信息,在每个十字路口都安装了GSM和GPS信号接收器引擎。每个交叉口都被分配一个唯一的代码,所有代码对于每条路线都有一个唯一的标识符。本次实验选取南通市崇川区工农路人民中路段的交通情况为例,通过OpenCV图像技术处理捕捉的交通情况,如图2所示显示了图像处理的过程及效果。
命题1:状态模型与过程
考虑离散时间控制过程,借助线性公式(1)描述为:
如公式(1)所示,其中yl表示随机变量过程噪声,vl表示时间步骤1的状态变量,B和A是m×m和1×m矩阵系数有关的步骤l的状态微分公式(1),并相应地控制输入。现在系统测量可以描述为:
如公式(2)所示,其中Xl表示第1步的估计值,随机变量ul表示系统的测量噪声,G是n×m测量状态xl的n×m矩阵系数。假设随机变量sl和ul是不同的,因此对于这些高斯白噪声,它们的协方差矩阵P和T,这些协方差矩阵分别在公式(3)和公式(4)中表示为:
那么根据上述等式,公式(5)是对于所有l和j,s到u的协方差矩阵始终为零:
命题2:卡尔曼滤波原点估计
第1步的yl当前状态及其在第1步的先验状态估计是回顾了和在第1步允许估计时的后验状态估计然后相应地给出了公式(6)和公式(7)中误差的前验和后验计算。
因此,误差协方差的前后评估在公式(8)和公式(9)中表示为:
Kalman滤波算法中最重要的因素是增益或混合因子L,它使后验协方差最小化,以实现对运动目标的精确预测,现在是最重要的因素:
从上面公式(10)可以看出,当Tl→0被越来越多地用于测量实际xl测量值时,如果可以,那么就采用预测计算,并且越来越相信实际测量值xl。
因此,对于上述公式,我们可以得出结论,时间更新滤波器和测量更新滤波器分别以卡尔曼滤波器的预测方程和校正公式的形式使用。
如上述算法1所示,一旦识别出车辆,我们将不断跟踪它,直到车辆离开框架,然后我们对其进行计数。要做到这一点,我们必须找出被检测到的车辆的中心,然后将其以矩形连接到该车辆上。一旦得到被检测车辆的中心,我们就使用卡尔曼滤波算法来跟踪该车辆的结果,以获得每个车道的确切车辆数量。如果我们据此计算车辆数量,我们会在十字路口的不同路线上花费时间。此数据库保存所有交通相关信息,同时替换在Web服务器上分配给每个交叉口的每个路径的时间。
命题3:时间更新等式
编程过程中使用的等式如公式(11)所示。对未来状态的预测是:
前面的误差协方差的预测,如公式(12)所示:
命题4:计量等式更新
卡尔曼增益表示为如公式(13)所示:
用测量值更新状态估计值,如公式(14)所示:
误差协方差估计与由更新表示的测量值,如公式(15)所示:
?
背景减法(也称为前景检测、前景减法)是一种用于计算机视觉处理的方法,在这种方法中,移除图像的前景然后进行进一步处理。在这个方法中,我们通过数码相机接收车辆的数据流,并将视频转换成帧,删除参考背景,识别运动目标。分三个阶段进行:在系统初始化步骤中,系统启动并建立。数码相机连续跟踪数据流,然后将其发送到处理系统;接着背景减法步骤是以一系列视频帧为中心,对连续的分析和操作进行背景减法;最后车辆检测步骤中,所有移动的车辆或物体都是可见的,通过背景减法处理后提取的背景图像进行跟踪和计数。
如图3所示显示了ILTCS系统的运行状态,运行状态中要么“关闭”,要么开三种颜色(红色、绿色或黄色),模拟只在一个方向操作的交通灯。假设系统用户可以要求打开或关闭灯,或者改变灯的颜色。箭头用于显示可能的更改状态,这些更改指向可以从一个状态移动到另一个状态的位置。因此,本研究的最终目的是建立一个具有成本效益的信号管理智能的解决方案。该系统由一个面向车道的摄像头拍摄我们想要行驶的路线,然后对行人和车辆的密度进行拍摄,并使用图像处理软件对每幅图像进行有效处理和比较,以方便系统用户了解交通密度。
图3 ILTS系统运行图Fig.3 State diagram of ILTS system
4 数值分析
4.1 工作表现比率
考虑采用多时段配时控制系统,在一天内将交通流量分解为若干个周期,并在每天不同时间调整信号时间框架,方法包括考虑当天交通需求的调整、使用详细的性能指标方法或绿色波段时间框架方法来优化和创建信号配时。该系统是一种易于建立、可操作且成本低廉的实时信号管理计划,该计划表现出了更好的性能,或者至少表现出了长期的战略性能,这些战略多年来在不同网络中得到了很好的适应,如图4所示。如表1所示显示了ITLCS系统的精度比,基于模型描述实际交通环境的精度和基于控制反馈的控制知识不能在线学习和调整控制效果。显然,正在大规模开发和实施中的V2V、V2I、V2X通信技术和自动驾驶新技术,将极大地促进从数据匮乏时期到信息时代的城市交通控制系统技术路线的发展。
图4 性能比Fig.4 Performance ratio
表1 精度比较表Tab.1 Accuracy comparison
4.2 准确度比率
体积的预测是一个关键的组成部分。有两个因素与预测联系在一起,那就是准确性和分辨率。控制策略和预测分辨率之间的联系和交易,以及它们之间的相关误差,对于建立适应性的交通控制系统具有重要意义。总之,在未来交通富裕的环境下,城市交通一体化管理的理论和方法是必然的选择。
卡尔曼滤波算法中关键的因素是增益或混合因子L,它减小了协方差,从而实现了对运动目标的精确预测,要实现对运动目标的精确预测如公式(16)所示:
如表2所示显示了ITLCS系统方法的预测比率。微观模拟预测算法实现了自动控制的分布式策略。这种策略以实时车辆数据为基础,在滚动优化窗口内通过模拟,确定15s的理想解决方案。结果表明,该方法在交通事故和交通需求突变情况下,具有明显的诱导管理控制优势。
表2 预测比率Tab.2 Prediction ratio
4.3 错误率
卡尔曼滤波器推导出一系列的数学等式,提供过去、现在和未来情况的预测,这一事实非常重要,最优估计量是最常见的。在所有噪声均为高斯噪声的情况下,卡尔曼滤波器使计算参数的均方误差最小是理想的。如果声音不是高斯的,卡尔曼滤波器也很有用,因为它不仅使用了最佳线性估计器,而且还使用了良好的非线性估计器。对于卡尔曼滤波的噪声数据,有最佳的近似结果,提出的ITLCS方法在图像检测中具有较小的误码率。
4.4 平均等待时间
该系统证明可以最大限度地减少车辆的聚集行为,缩短车辆在交通信号灯下的等待时间。为了对现代城市交通进行实时研究,作者建立了真实的交通图像,并将其与微控制和保险公司相结合,论证了信号灯前车辆的平均等待时间低于现有的交通控制网络。对车辆数量进行统计,并对图像分别进行处理。该系统保证了车辆在交通信号灯前的平均等待时间小于现有的交通管理系统,目的是通过本项目所采用的技术或算法,提高系统的效率。
4.5 计算费用
从带有测试标志的图像中,对所提出的计算成本进行估计,每一帧的平均处理时间是37.27ms,测试图像处理计算的时间图。处理时间可以根据图像复杂度在两个区域之间进行划分。由于该算法试图在测试图像中定位圆或椭圆,在非常复杂的背景图像中会有大量潜在区域,需要更多的处理时间。选择这种方法的主要原因是为了降低计算成本,从而使实时实现变得简单。
如上所述,智能交通灯控制系统能有效地处理日常交通,我们将GSM和GPS模块用于救护车、消防车、VIP车辆等紧急车辆。GSM和GPS模块的发射器位于紧急车和接收器的交叉点,当他们在最近的十字路口发送信息时,每个十字路口接收到该信息,并在需要时免费使用这些应急车辆。
5 总结
综上所述,开发的车辆跟踪和计数系统是将开源计算机视觉库作为软件工具,并运用了卡尔曼滤波算法和背景差分算法。该系统基于图像处理技术,将背景减法应用于运动车辆检测,然后使用卡尔曼滤波算法对车辆进行连续监测。系统使用评估十字路口道路密度的单数码相机,我们将该装置在不同环境下进行了测试,与其他传感器相比该装置具有较高的效率。这使得作为存储和更新数据库的系统为整个城市提供高效交通流成为可能,该系统通过给予应急车最高优先级,并从应急车处获得数据后对其进行持续监控,从而进一步处理紧急情况,这意味着所提出的系统比其他系统能提供更好的性能。
引用
[1] 张雨.大数据背景下的城市道路交通拥堵问题研究[J].机电信息,2019(29):162-163.
[2] 刘君.银川市城市交通拥堵问题及对策研究[J].工程技术研究, 2021(11):277-278.
[3] 于海宾.城市交通拥堵问题的分析与对策——以沈阳市为例[J].城市道桥与防洪,2020(4):11-13.
[4] 林基艳,张慧,张雅琼.基于RFID的交通信号灯智能控制系统的研究[J].河南科学,2017(8):1214-1220.
[5] 常铮,李晓艺,刘丹丹,等.基于视频识别的智能交通信号灯配时优化[J].自动化技术与应用,2018(11):139-142.
[6] Pranjali B Patil,Atul A Jadhav.Adaptive Traffic Control System Based on Embedded Linux Board and Image Processing[J].Journal of Electronics and Communication Engineering,2015(10):87-96.
[7] Auranuch Lorsakul,Jackrit Suthakorn.Traffic Sign Recognition for Intelligent Vehicle/Driver Assistance System Using Neural Network on OpenCV[C]//The 4th International Conference on Ubiquitous Robots and Ambient Intelligence.USA:IEEE,2007:22-28.
[8] Saili Shinde,Sheetal Jagtap.Intelligent Traffic Management Systems:A Review[C]//International Journal for Innovative Research in Science & Technology,2016,2(9):293-298.
[9] GHAZAL B,ELKHATIB K,CHAHINE K,et al.Smart Traffic Light Control System[C]//2016 Third International Conference on Electrical,Electronics,Computer Engineering and Their Applications (EECEA).IEEE,2016:140-145.
[10] SURATEKAR A G,BOMBALE U L.WSN Based Cost Effective Intelligent Traffic Light Control System Based on Image Processing[J].International Journal of Computer Applications,2015 (7):47-50.