本发明涉及车路协同、计算机视觉处理技术、大数据技术等领域。
背景技术:
1、大数据时代的到来为交通管理带来了巨大的机遇与挑战,大数据一方面描绘了交通管理的美好愿景,打通多源异构交通数据,为政府管理、公民出行带来便利,提升管理效能与出行体验;另一方面交通大数据也面临着发展的问题,如何汇聚多源异构交通数据、如何进行数据优化处理以实现交通应用。
2、智能交通路口红绿灯调控可以根据实时交通状况和流量情况自动调整红绿灯时间,减少红灯时间和交通等待时间,提高路口的通行能力和交通运行效率,缓解交通拥堵和疏导交通压力。智能调控可以通过对车辆和行人的流量进行分析,合理地分配行车通行时间和行人通行时间,避免车辆和行人交通冲突,降低交通事故的发生率,保障行车和行人安全。智能调控可以减少交通拥堵,降低车辆怠速时间,减少车辆尾气排放和燃料消耗,从而减少环境污染和能源浪费,促进城市绿色出行和可持续发展。智能调控是城市智慧交通的重要组成部分,可以通过云计算、大数据和人工智能等技术手段,实现交通数据的集中管理和分析,为城市交通管理和规划提供科学依据,促进城市智慧化和数字化建设。智能路口碰撞预警系统可以通过车载摄像头监测车辆周围的情况,并在检测到潜在的碰撞风险时向驾驶员发出警告。这有助于提醒驾驶员采取行动来避免碰撞,从而大大减少交通事故的发生。该系统不仅可以保护车内乘客的安全,还可以通过识别和监测行人等非机动车辆,保护行人的生命和财产安全。智能路口数字孪生可视化平台通过实时获取并分析交通数据,交通管理部门可以了解城市交通运行状况,及时调整交通组织,优化道路交通流量,提高城市交通运行效率,减少交通拥堵、缓行等情况的发生。该平台可以分析交通事故发生的原因和规律,及时采取措施,提升城市交通安全水平。同时,通过可视化展示事故热点和事故严重程度等数据,有助于引起公众和相关部门的重视,推动交通安全问题的解决。智能路况导航通过提供准确、全面、实时的地图和交通信息服务,为社会提供了更好的出行体验和服务质量,促进城市交通和城市规划的科学化和智能化,提升城市品质和城市服务水平,为数字经济和智慧城市的发展做出了重要贡献。
3、然而,传统的数据采集工具网络连通性差,传统数据采集设备多为单点式采集,不能即时反馈到信息终端。交通数据分析平台实时性差,不能有效整合各分布式平台收集的原始信息。大数据在交通领域应用不够广泛,传统的交通数据存储和分析只限于“轻体量”的数据集。交通数据信息孤岛丛生,传统交通数据共享开放有待加强,数据管理和治理体系尚未完善,数据应用效果有待提升。传统交通算法在大数据环境下耗费大量算力,灵活性低。以短时交通流规划为例,传统的ha模型arima时间序列预测模型,在小数据量的交通流预测上表现出速度快和灵活性较高的优势,但是在基于大数据平台的智慧交通规划中显得乏力。
4、公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
技术实现思路
1、本发明的目的在于提供一种基于深度神经网络的车路协同实时分析系统,从而克服传统交通信息孤岛丛生、交通数据分析平台实时性差、传统交通算法在大数据环境下灵活性低等缺点。
2、(1)智能碰撞预警
3、碰撞检测主要是由目标检测算法模块以及单目测距算法模块组成。主要原理是通过对车辆和行人的距离检测,在某一特定的距离范围内进行预警。目标检测主要使用yolov5n模型,相比较于此系列之前算法有着更高的准确度,相比较于yolov6,yolov7,拥有更快的速度以及更加稳定的准确度,在速度和精度上都取得了比较好的效果。
4、单目测距算法主要是通过测距模型以及目标检测获取的矩形框进行计算,通过目标在图像中的大小位置信息去估算距离,并且通过后期的调整来纠错。由于现代手机的流行,人们无需购买其他设备也可以完成车辆测距。由于双目摄像头可以获取同一物体在成像平面上的像素的偏移量,因此双目测距相比较于单目测距拥有更高的精度,但是由于使用了两个摄像头,需要购买额外的摄像头,并且需要大量的时间去对双目摄像头进行标定,价格成本以及时间成本有了很大的提升,并且由于计算量的增大,在实际使用限制较大。基于雷达的传统方法无法对车辆和行人进行检测,并且检测距离比较近,无法在高速行驶的环境中使用,成本也比较高,因此不适合在此场景中使用。
5、对于单目测距的原理,本系统做如下定义:
6、
7、我们将像素坐标系转换到世界坐标系,通过目标检测的像素值获取世界的真实距离,其中u,v为像素坐标系的像素点坐标,k1,k2分别为相机外参,内参矩阵深度,zc为,xw,yw,zw分别为世界坐标系坐标。
8、最终,我们使用pytorch框架进行训练,得到yolov5的神经网络模型参数,转换为onnx通用模型,再转换为适配ncnn的专属文件格式。再通过c++进行前后推理,使得模型在速度上有着进一步的提高,最终在安卓手机上取得了不错的效果,通过直接调用手机的摄像头,我们可以得到实时的距离检测。
9、(2)红绿灯调控
10、智能信号灯主要由两个算法模型组成,一是针对车辆以及行人的计数算法,二是对数据进行处理的深度强化学习算法。
11、系统通过使用轻量级目标检测yolov5,对图片中所出现的行人以及车辆进行计数,每秒进行一次计数,通过此方法可以得到马路上车辆以及行人的平均等待时间以及数量。
12、在此模型中我们尝试了多种强化学习算法,在单个场景中对信号灯进行可靠性评估,并移植到复杂场景中,通过使用多智能体强化学习模型,处理大规模信号灯控制。针对此场景,我们使用sumo软件对路口以及红绿灯进行仿真,路口有行人和车辆。
13、dqn算法是一种基于价值的强化学习算法,目标是获得奖励的最高期望。可以通过策略回放的方法对所获取的数据进行多次训练。通过神经网络的方式对价值评估函数进行拟合,获得最接近真实情况的价值评估,但是dqn算法对于实验的收敛性比较差,并且只能处理离散的情况,于是我们需要更好的模型。
14、ddpg全名深度确定性策略梯度算法,是一种基于策略的方法,它使用演员-评论家的架构。经过红绿灯调控实验,我们发现ddpg算法下红绿灯调控有着更好的收敛性能,并且能处理连续的状况,相比较dqn算法有着更好的效果。
15、多智能体强化学习模型用于处理拥有多个信号灯的马路复杂情况,智能信号灯之间属于完全合作关系。在完全合作的关系下,多智能体往往需要通过合作来决定策略,以获得最大期望奖励。通过中心化训练,分布式决策的方式获得最大奖励。
16、(3)车流量预测
17、目前神经网络的研究已经十分深入,各类卷积神经网络频繁地迭代更新,对于普通的图像数据已经达到了95%以上的精度,但是对于具有时间性和空间属性的交通数据流预测,经典的卷积神经网络不能处理这些维度下的数据。交通网络是一个有着节点的图结构,采取图卷积神经网络,可以很好的利用到拓扑特性,成功的将交通网络的数据放入图中处理,极大的加快了处理速度与自由度。交通网络拥有两大特殊属性——时间属性和空间属性,它们都在图卷神经网络上有很高的适应度。在图卷积神经网络中我们不在采取像cnn一样的使用输入层中的数据乘上一个值,而是选择通过相邻数据的直接求和,图神经网络的每一个节点都储存下一层所联通的的数据,并依层次存储下去。上层的节点将储存了相当大的拓扑数据量,可以很轻松的调用并进行进一步运算。
18、为了将交通流数据放入神经网络进行运算,我们对数据进行归一化和标准化以后封装成邻接矩阵+6个预测量和一个预测量,做成数组的形式方便调用。由于我们采用的图神经网络采取层层传递的结构,有上层节点存储下层的时空属性,这种简单的传递就很简单的将一张交通图中的拓扑关系存储到一个高层节点中,极大降低了数据运算的难度。在图卷积内核的选择上,采用了切比雪夫多项式实现(chebnet),再采用标准2维卷积捕获时间维特征,并采用relu激活函数成功将多个时空块被堆叠起来,以进一步提取更在大范围的时空属性。最后,附加一个使用relu作为激活函数的全连接层以确保每个组件的输出与预测目标具有相同的维度和形状。我们的数据置入神经网络后就会通过不断的迭代和循环将数据网络的数据剖析出来进行逐层的运算,随着世代的更替,总体误差也逐渐变小最终达到我们需要的效果。
19、在经典卷积神经网络中就存在注意力机制优化传统的视觉搜索,于是我们引入注意力机制以在更大规模的交通流数据上,使得我们的gcn模型具有竞争力,自注意力层的操作可以并行化到所有的边,输出特征的计算也可以并行化到所有的节点,这样不仅优化了计算的速度,同时减少了对算力的需求。注意力机制是通过学习邻近点的权重已得到优化当前所需计算的次数,即通过探索输入之间的关联性(注意力权重),通过对上下文信息(节点邻居)进行聚合,来获得各个输入(节点)的表示。受益于注意力机制,我们的模型能够过滤邻近噪音,并且能够提升结果的可解释性。
20、在引入图注意力机制以后的图卷积神经网络相对于其他的神经网络已经有了非常大的提升,我们对普通的cnn chebynet gcn以及我们的模型进行了在core数据集的实验。
21、经过批量喂送的改进,图注意力机制的加入,还有团队对于神经网络隐藏层的调整,我们目前的模型已经有了一个相当可观的提升,普通的图卷积神经网络在速度、精度上都本作品完全超越,对于简单的神经网络即使因为他们结构的简单性超越我们,但是在精度上被我们的模型领先一个层次。
22、本模型同时可以在多种时间序列长度下取得不错的运算效果,无论是六个小时亦或者是一整个月的数据,都可以进行一个相对准确的预测,当然所花费的训练时间和所需算力有一定差距。对于未来交通流数据的预测,从5分钟到30分钟都有一个相当可观的精度可以达到90%以上,如果在日后无论是交通规划和普通的地图导航都是极佳的选择。
23、(4)大数据模型
24、本发明在实时同步数据的场景下使用maxwell数据采集框架,而在静态场景下使用sqoop数据采集框架。maxwell是一种实时数据同步工具,可以用于将关系型数据库的数据变更事件实时捕获并发送到消息队列或其他系统中进行处理。maxwell是一个基于mysql二进制日志的开源工具,它可以将mysql的二进制日志解析成易于处理的json格式,然后将这些json消息发送到消息队列中。与传统的数据库日志采集工具canal相比,maxwell的优势显著(见上表所示),因此本发明采用maxwell作为数据库日志采集工具。在本发明中,当摄像头采集到的数据在数据库进行更新时,maxwell捕捉到数据库的变化,将变换信息发送到kafka消息队列中,然后再使用spark streaming进行数据处理,最后再将处理后的数据传到数据库中,供前端页面显示。
25、sqoop是一种用于在apache hadoop和关系型数据库之间传输数据的工具。sqoop支持从关系型数据库(如mysql、oracle、postgresql等)中导入数据到hadoop中,也支持将数据从hadoop导出到关系型数据库中。sqoop可以根据用户提供的条件选择要导入或导出的数据,例如表、列、过滤条件等。因此,sqoop适用于将关系型数据库中的数据导入到hadoop进行大数据处理、数据分析等场景。在本发明中,每日的交通信息先暂存到数据库中,然后将每日的数据库信息利用sqoop将数据从数据库中导入到hive,再将数据库中的数据清空,避免数据堆叠。
26、kafka是由apache软件基金会开发的一个开源消息系统。它是一个分布式的、基于发布/订阅模式的消息队列(如上图所示),可以为大数据系统提供数据缓冲、分布式数据传输、流数据处理等功能,可以帮助企业快速地处理海量数据,并支持多种编程语言和实时数据流处理。在本发明中,kafka主要连接的生产者是maxwell,消费者是sparkstreaming。通过将maxwell的数据发送到kafka中,可以将数据同时传输给多个spark streaming任务,从而实现数据的并行处理和分布式计算。kafka允许在生产者和消费者之间建立一个持久性的消息队列。在这个队列中,所有的消息都会被保留一段时间,以便消费者可以随时获取到它们。通过将maxwell的数据发送到kafka中,可以充分利用kafka的这个特性,缓存和缓冲数据,从而减轻spark streaming的压力,提高系统的可靠性和容错性。
27、spark可以在分布式环境下对大规模数据进行高效处理,包括数据清洗、数据转换、数据聚合、数据挖掘等。与hadoop mapreduce相比,spark采用内存计算技术,可以在内存中快速处理数据,大大提高了计算效率。spark streaming可以对实时数据进行处理,支持流式数据处理、数据窗口计算、累积计算等功能。spark streaming通过将实时数据流划分为一系列小批量数据来实现实时计算,并将批量处理结果输出到外部存储或其他数据处理系统中。在本发明中,spark streaming负责对交通信息数据进行实时计算和处理,以满足实时性和高可靠性的需求,然后将处理好的数据通过spark sql传到目标数据库,供后续分析和应用使用。
28、hive是一种基于hadoop的数据仓库工具,用于处理和查询大规模分布式数据集。hive允许用户通过类sql语言来查询和分析数据,它将sql查询转换为mapreduce任务并在hadoop集群上执行。其主要功能是让用户能够在hadoop集群上进行数据分析和处理,特别是那些对于hadoop的原生mapreduce编程不熟悉的用户。hive提供了一个类sql的查询语言(称为hiveql或hql),使得用户可以使用sql语句来查询和处理数据,而不需要编写mapreduce代码。在本发明中,hive主要接受sqoop从数据库中转换而来的数据,并且hive也将作为kylin的数据源。
29、kylin是一个开源的olap引擎,主要用于处理海量数据和高并发查询。kylin可以将大规模的数据集构建成多维数据模型,并提供快速的多维度查询功能,从而使用户可以方便地在海量数据中进行复杂的分析和挖掘。同时,kylin使用了多种优化技术,如列式存储、压缩、缓存、预聚合等,来提高查询性能,底层是基于spark的分析引擎。kylin还可以将复杂的数据建模过程简化为一个类sql的语法,称为cube build。此外kylin提供了一个web界面,可以方便地浏览数据模型、查询历史和监控kylin运行状态。在本发明中,kylin直接从hive中获得交通数据,在网页端创建cube后,直接在终端进行数据的分析。
30、(5)web数据可视化
31、本发明基于易知微低代码数字孪生可视化平台,结合大数据框架分析数据结果,制作数据可视化大屏。数据分析模块由车速分析、预警分析以及车流量分析三部分组成。结合app定位和导航系统,在可视化大屏上显示车流状态,并且显示路况的拥挤程度。每一个路口都设有视频监控,并将在主网站可以实时查看到视频内容,并且显示路口车流量、平均车速等信息。
32、与现有技术相比,本发明具有如下有益效果:
33、(1)本发明构建完整交通大数据体系,将大数据框架从数据采集再到数据分析灵活运用。例如用sparkstreaming进行数据处理,用kylin进行数据分析。
34、(2)本发明制作数据可视化大屏,将数据分析结果实时展示到前端网站。
35、(3)本发明利用深度学习技术,对传统交通算法进行改进。例如,用强化学习技术进行红绿灯调控,用加入注意力机制的图卷积神经网络进行交通流量预测,用单目测距算法进行距离测算。
1.一种基于深度神经网络的车路协同实时分析系统,其特征在于,包括:
2.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,我们采用一种单目测距算法进行碰撞预警,通过目标在图像中的大小位置信息去估算距离,并且通过后期的调整来纠错。
3.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,碰撞预警中的目标检测模型的训练策略包括:
4.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,我们使用sumo软件对路口以及红绿灯进行仿真,在单个场景中对信号灯进行可靠性评估,同时使用一种基于ddpg的强化学习算法,处理拥有多个信号灯的马路复杂情况,通过中心化训练,分布式决策的方式获得最大奖励。
5.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,我们使用引入图注意力机制以后的图卷积神经网络进行具有时间性和空间属性的交通数据流预测。
6.根据权利要求4所述的基于深度神经网络的车路协同实时分析系统,其特征在于,我们在图卷积内核的选择上,采用了切比雪夫多项式实现(chebnet),再采用标准2维卷积捕获时间维特征,并采用relu激活函数成功将多个时空块被堆叠起来,以进一步提取更在大范围的时空属性。
7.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,当摄像头采集到的数据在数据库进行更新时,maxwell捕捉到数据库的变化,将变换信息发送到kafka消息队列中,然后再使用spark streaming进行数据处理,最后再将处理后的数据传到数据库中。
8.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,每日的交通信息先暂存到数据库中,然后将数据库信息利用sqoop将数据从数据库中导入到hive,再将数据库中的数据清空,避免数据堆叠。
9.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,通过将maxwell的数据发送到kafka中,可以将数据同时传输给多个spark streaming任务,从而实现数据的并行处理和分布式计算,kafka允许在生产者和消费者之间建立一个持久性的消息队列,在这个队列中,所有的消息都会被保留一段时间,以便消费者可以随时获取到它们,通过将maxwell的数据发送到kafka中,可以充分利用kafka的这个特性,缓存和缓冲数据,从而减轻spark streaming的压力,提高系统的可靠性和容错性。
10.根据权利要求1所述的基于深度神经网络的车路协同实时分析系统,其特征在于,在本发明中,hive主要接受sqoop从数据库中转换而来的数据,并且hive也将作为kylin的数据源。
