基于黑匣子的行车安全监控系统及方法



1.本技术涉及智能交通、车联网技术领域,尤其是涉及到一种基于黑匣子的行车安全监控系统及方法。


背景技术:



2.汽车黑匣子是一种应用于汽车的电子记录装置,能完整、准确地记录汽车行驶状态下的有关情况。它对遏制疲劳驾驶、分心驾驶、车辆超速等交通违章,约束驾驶人员的不良驾驶行为、保障车辆行驶安全以及道路交通事故分析鉴定具有重要作用。目前,传统汽车黑匣子主要涉及车辆内置信息系统与本地存储,没有重视记录数据的安全性且功能较为单一,未充分发挥设备边缘计算能力。


技术实现要素:



3.有鉴于此,本技术提供了一种基于黑匣子的行车安全监控系统及方法,解决了现有的汽车黑匣子未充分发挥设备边缘计算能力的问题。
4.根据本技术的一个方面,提供了一种基于黑匣子的行车安全监控系统,包括:参数采集子系统、运算及存储子系统、通信子系统;
5.所述参数采集子系统用于获取车辆的行驶信息,并将所述行驶信息发送至所述运算及存储子系统,其中,车辆行驶信息包括行驶姿态数据以及行驶速度;
6.所述运算及存储子系统用于根据所述行驶信息确定当前行驶状态,和/或根据所述行驶信息确定驾驶员是否分心,得到监控结果;
7.所述运算及存储子系统还用于存储所述行驶信息;
8.所述通信子系统用于连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器。
9.可选地,所述运算及存储子系统包括驾驶行为判定模块;
10.所述驾驶行为判定模块用于获取所述行驶姿态数据,若所述行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定所述变化值大于所述第一预设阈值的时刻为起始时刻,若所述变化值小于所述第一预设阈值且所述持续时长大于或等于所述第二预设阈值,则确定所述变化值小于所述第一预设阈值的时刻为终止时刻,所述起始时刻与所述终止时刻之间的时段对应一个候选事件
11.根据所述行驶信息,确定每个所述候选事件对应的子行驶信息,其中,所述子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;
12.若相邻的所述候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个所述候选事件为一个基本行为,分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,并将所述候选事件对应的行驶状态作为所述当前行驶状态,其中,所述候选事件对应的行驶状态为转向或紧急制动;
13.若相邻的所述候选事件之间的时间间隔小于所述第三预设阈值,则确定所述相邻
的所述候选事件属于一个组合行为,根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,并将所述组合行为对应的行驶状态作为所述当前行驶状态其中,所述组合行为的行驶状态为掉头、变道以及避障中的一个;
14.将所述当前行驶状态写入所述监控结果。
15.可选地,所述驾驶行为判定模块用于:若所述候选事件转向角度属于转向角度区间,则确定所述候选事件对应的行驶状态为转向;
16.若所述候选事件水平加速度大于制动加速度阈值,则确定所述候选事件对应的行驶状态为紧急制动;
17.所述根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,包括:
18.所述驾驶行为判定模块还用于:在相邻的所述候选事件中,分别确定每个所述候选事件对应的行驶状态;
19.若相邻的所述候选事件中,有多个候选事件对应的行驶状态为转向,且所述多个候选事件的转向角度的和值属于掉头角度区间,且所述多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定所述组合行为对应的行驶状态为掉头;
20.若相邻的所述候选事件中,有两个候选事件对应的行驶状态为转向,且所述两个候选事件的转向角度的和值属于变道角度区间,且所述两个候选事件的侧向位移的和值属于变道位移区间,则确定所述组合行为对应的行驶状态为变道;
21.若相邻的所述候选事件中,有三个候选事件对应的行驶状态为转向,且所述三个候选事件的转向角度的和值属于避障角度区间,且所述三个候选事件的侧向位移的和值属于避障位移区间,则确定所述组合行为对应的行驶状态为避障。
22.可选地,所述运算及存储子系统包括分心检测模块;
23.所述分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的人脸关键点,并根据所述人脸关键点构建人脸模型;
24.所述分心检测模块根据所述人脸模型,确定所述驾驶员的头部姿态欧拉角,根据所述头部姿态欧拉角确定头部姿势向量,并根据所述头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入所述监控结果。
25.可选地,所述通信子系统包括移动数据模块、usb-wifi模块以及云端通信模块;
26.所述移动数据模块用于产生热点;
27.所述usb-wifi模块与所述移动数据模块连接,用于利用所述移动数据模块产生的热点连接互联网;
28.所述云端通信模块用于通过所述usb-wifi模块连接所述云服务器,并每隔预设时长将与所述监控结果对应的目标数据发送至所述云服务器;
29.所述云端通信模块用于接收所述云端服务器下发的消息,并将所述消息输出为文件;
30.若在所述文件中读取到密钥过期信息,则启动发送密钥程序;
31.若在所述文件中读取到更新程序信息,则在所述文件中读取升级资源地址,并获取与所述升级资源地址对应的升级资源,利用所述升级资源执行升级操作。
32.根据本技术的另一方面,提供了一种基于黑匣子的行车安全监控方法,所述方法用于上述基于黑匣子的行车安全监控系统,所述方法包括:
33.所述参数采集子系统获取车辆的行驶信息,并将所述行驶信息发送至所述运算及存储子系统,其中,所述行驶信息包括行驶姿态数据以及行驶速度;
34.所述运算及存储子系统存储所述行驶信息;根据所述车辆行驶信息确定当前行驶状态,和/或根据所述行驶信息确定驾驶员是否分心,得到监控结果;
35.所述通信子系统连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器。
36.可选地,所述运算及存储子系统包括驾驶行为判定模块;所述根据所述行驶信息确定当前行驶状态,包括:
37.获取所述行驶姿态数据,若所述行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定所述变化值大于所述第一预设阈值的时刻为起始时刻,若所述变化值小于所述第一预设阈值且所述持续时长大于或等于所述第二预设阈值,则确定所述变化值小于所述第一预设阈值的时刻为终止时刻,所述起始时刻与所述终止时刻之间的时段对应一个候选事件;
38.根据所述行驶信息,确定每个所述候选事件对应的子行驶信息,其中,所述子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;
39.若相邻的所述候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个所述候选事件为一个基本行为,分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,并将所述候选事件对应的行驶状态作为所述当前行驶状态,其中,所述候选事件对应的行驶状态为转向或紧急制动;
40.若相邻的所述候选事件之间的时间间隔小于所述第三预设阈值,则确定所述相邻的所述候选事件属于一个组合行为,根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,并将所述组合行为对应的行驶状态作为所述当前行驶状态其中,所述组合行为的行驶状态为掉头、变道以及避障中的一个;
41.将所述当前行驶状态写入所述监控结果。
42.可选地,所述分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,包括:
43.若所述候选事件转向角度属于转向角度区间,则确定所述候选事件对应的行驶状态为转向;
44.若所述候选事件水平加速度大于制动加速度阈值,则确定所述候选事件对应的行驶状态为紧急制动;
45.所述根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,包括:
46.在相邻的所述候选事件中,分别确定每个所述候选事件对应的行驶状态;
47.若相邻的所述候选事件中,有多个候选事件对应的行驶状态为转向,且所述多个候选事件的转向角度的和值属于掉头角度区间,且所述多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定所述组合行为对应的行驶状态为掉头;
48.若相邻的所述候选事件中,有两个候选事件对应的行驶状态为转向,且所述两个候选事件的转向角度的和值属于变道角度区间,且所述两个候选事件的侧向位移的和值属于变道位移区间,则确定所述组合行为对应的行驶状态为变道;
49.若相邻的所述候选事件中,有三个候选事件对应的行驶状态为转向,且所述三个
候选事件的转向角度的和值属于避障角度区间,且所述三个候选事件的侧向位移的和值属于避障位移区间,则确定所述组合行为对应的行驶状态为避障。
50.可选地,所述运算及存储子系统包括分心检测模块;所述根据所述行驶信息确定驾驶员是否分心,包括:
51.所述分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的人脸关键点,并根据所述人脸关键点构建人脸模型;
52.所述分心检测模块根据所述人脸模型,确定所述驾驶员的头部姿态欧拉角,根据所述头部姿态欧拉角确定头部姿势向量,并根据所述头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入所述监控结果。
53.可选地,所述通信子系统包括移动数据模块、usb-wifi模块以及云端通信模块;所述连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器,包括:
54.所述移动数据模块产生热点;
55.所述usb-wifi模块利用所述移动数据模块产生的热点连接互联网;
56.所述云端通信模块通过所述usb-wifi模块连接所述云服务器,并每隔预设时长将与所述监控结果对应的目标数据发送至所述云服务器;
57.所述云端通信模块接收所述云端服务器下发的消息,并将所述消息输出为文件;
58.若在所述文件中读取到密钥过期信息,则启动发送密钥程序;
59.若在所述文件中读取到更新程序信息,则在所述文件中读取升级资源地址,并获取与所述升级资源地址对应的升级资源,利用所述升级资源执行升级操作。
60.借由上述技术方案,本技术融合多种传感器采集、并实现数据的本地保存、分析与及时上报服务器,增强数据移动性、可扩展性,便于监控与统筹规划,也为后续云端大数据分析提高数据支持,同时也充分发挥了汽车黑匣子设备的边缘计算能力。实现轻量化深度学习模型用于分心检测,适合于通用中低端嵌入式设备,另外设备实时联网上报信息,做到数据备份,便于交通管理者随时监控所有运行车辆,降低人力成本,为汽车的科研、生产、日常维护以及对于及时查突发性交通事故的原因,减少车辆故障提供有效的测试手段,为产品设计与故障分析提供依据。对深入研究各类车辆的完善设计、故障分析、降低成本和交通管理具有重要的实际作用及意义。
61.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
62.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
63.图1示出了本技术实施例提供的一种基于黑匣子的行车安全监控系统的系统结构图;
64.图2示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的参数采集子系统的系统结构图;
65.图3示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的嵌入式
软件采集模块的工作流程图;
66.图4示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的运算及存储子系统的系统结构图;
67.图5示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的驾驶行为判定模块的工作流程图;
68.图6示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的分心检测模块的工作流程图;
69.图7示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的云端通信模块的系统结构图;
70.图8示出了本技术实施例提供的另一种基于黑匣子的行车安全监控系统的云端通信模块的工作流程图;
71.图9示出了本技术实施例提供的另一种基于黑匣子的行车安全监控方法的流程示意图。
具体实施方式
72.下文中将参考附图并结合实施例来详细说明本技术。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
73.在本实施例中提供了一种基于黑匣子的行车安全监控系统,如图1所示,系统包括:参数采集子系统、运算及存储子系统、通信子系统;
74.参数采集子系统用于获取车辆的行驶信息,并将行驶信息发送至运算及存储子系统,其中,车辆行驶信息包括行驶姿态数据以及行驶速度;
75.运算及存储子系统用于根据行驶信息确定当前行驶状态,和/或根据行驶信息确定驾驶员是否分心,得到监控结果;
76.运算及存储子系统还用于存储行驶信息;
77.通信子系统用于连接云服务器并将与监控结果对应的目标数据发送至云服务器。
78.在该实施例中,参数采集子系统用于获取车辆在行驶过程中的多种信息参数,用于后续处理。
79.具体地,如图2所示,参数采集子系统包含arm核心板、嵌入式软件采集模块及外围电路,所述外围电路包含接口涉及uart(universal asynchronous receiver/transmitter,通用异步收发传输器)获取gps数据、can获取车辆obd总线数据、iic(inter-integrated circuit,集成电路总线)获取六轴传感器车辆行驶姿态数据、无线摄像头获取图像与视频数据、usb接口、spi接口、sd卡槽。还可包含rgb-lcd模块,用于显示行车参数以及摄像头视频。
80.进一步地,如图3所示,嵌入式软件采集模块运行linux,开启uart、iic、can接口,新建三个定时器分别用于gps、六轴传感器、obd(on-board diagnostic,车载诊断系统)总线的数据获取。其中,gps数据包含车辆当前经纬度、卫星时间;六轴传感器数据包含车辆俯仰角、方位角、航向角以及加速度消息;obd总线信息包含引擎负载,发动机冷却液温度,发动机转速,车辆速度,发动机启动时间,行驶里程数,控制模块电压等行车参数。此外,嵌入式软件采集模块还新建子线程,通过rtmp(real time messaging protocol,实时消息传输
协议)协议获取无线摄像头推流,利用ffmpeg工具转化数据流为一段视频。
81.运算及存储子系统用于实时处理数据,具体可实现本地存储、行驶状态判定、分心检测等功能。
82.在该实施例中,如图4所示,运算及存储子系统(也即图中边缘计算及存储系统)包含参数存储模块、驾驶行为判定模块、分心检测模块、图像与视频存储模块。
83.其中,参数存储模块用于将获取到的车辆经纬度、俯仰角、方位角、航向角、obd总线数据拼接为文本,并存储至sd卡中;驾驶行为判定模块用于对转向、掉头、变道、避障以及紧急制动等驾驶行为判定,并存储至sd卡中;分心检测模块利用适合于嵌入式设备部署的轻量化深度学习模型实现驾驶员分心检测,并根据判断结果生成提醒信息以及记录数据;图像与视频存储模块用于将无线摄像头数据以视频或图片的形式存储在sd卡中,其中,视频或图片可按摄像头采集时间命名。
84.在该实施例中,通信子系统用于连接云服务器并将与监控结果对应的目标数据发送至云服务器,实现云端信息同步。此外,通信子系统还可接收云端发送的消息,并基于云端发送的消息实现ota升级。
85.在具体的应用场景中,可选地,运算及存储子系统包括驾驶行为判定模块;
86.驾驶行为判定模块用于获取行驶姿态数据,若行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定变化值大于第一预设阈值的时刻为起始时刻,若变化值小于第一预设阈值且持续时长大于或等于第二预设阈值,则确定变化值小于第一预设阈值的时刻为终止时刻,起始时刻与终止时刻之间的时段对应一个候选事件;
87.根据行驶信息,确定每个候选事件对应的子行驶信息,其中,子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;
88.若相邻的候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个候选事件为一个基本行为,分别根据每个候选事件的子行驶信息确定候选事件对应的行驶状态,并将候选事件对应的行驶状态作为当前行驶状态,其中,候选事件对应的行驶状态为转向或紧急制动;
89.若相邻的候选事件之间的时间间隔小于第三预设阈值,则确定相邻的候选事件属于一个组合行为,根据候选事件的子行驶信息确定组合行为对应的行驶状态,并将组合行为对应的行驶状态作为当前行驶状态其中,组合行为的行驶状态为掉头、变道以及避障中的一个;
90.将当前行驶状态写入监控结果。
91.在该实施例中,驾驶行为判定模块用于确定车辆的当前行驶状态。首先进行候选事件边界的划分。具体地,分析六轴传感器获取的行驶姿态数据,若行驶姿态数据的数值变化大于第一预设阈值并持续一定时间(也即第二预设阈值),则以此刻为一段行为起始;判定数据变化小于阈值并持续一定时间(也即第二预设阈值),则以此刻为一段行为终止。分别将起始时刻以及终止时刻作为候选事件的边界,即可得到起始时刻与终止时刻之间的一个候选事件。
92.在确定每个候选事件后,根据行驶信息,分析候选事件边界内的六轴数据及车辆速度,得到每个候选事件对应的子行驶信息,其中,子行驶信息包括:转向角度、转弯半径、
侧向位移以及水平加速度;
93.然后根据相邻的候选事件之间的事件间隔,判断候选事件属于基本行为还是组合行为,并根据其行为类型,进一步确定该行为对应的行驶状态作为当前行驶状态。
94.具体地,如果相邻的候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个候选事件为一个基本行为,反之则确定相邻的候选事件属于一个组合行为。其中,第三预设阈值可根据历史经验设置。
95.例如,设置第三预设阈值为8s,对于两次候选事件划分间隔小于8s的看作一次关联动作划分为组合动作,否则为基本动作。
96.此外,若存在多个候选事件,并且每两个候选事件之间的时间间隔均小于8s,则可将多个候选时间划分为同一个组合行为。
97.在确定了候选事件的行为类型后,根据行为类型进行进一步的行驶状态判断,并将判断得到的行驶状态写入监控结果中,实现行驶状态的记录。其中,针对基本行为,其行驶状态可能为转向或紧急制动;针对组合行为,其行驶状态可能为掉头、变道或避障。
98.图5示出了本技术一个实施例的驾驶行为判定模块的工作流程图,如图所示,首先获取传感器数据,然后进行候选事件划分,并提取每个候选事件的特征也即子行驶信息。然后判断候选事件是否是基本行为,如果是,则根据提取到的特征判断基本行为是转向还是紧急制动状态;如果否,则根据提取到的特征,判断候选事件组成的组合行为是掉头、变道,还是避障。
99.在具体的应用场景中,可选地,驾驶行为判定模块用于:若候选事件转向角度属于转向角度区间,则确定候选事件对应的行驶状态为转向;
100.若候选事件水平加速度大于制动加速度阈值,则确定候选事件对应的行驶状态为紧急制动;
101.根据候选事件的子行驶信息确定组合行为对应的行驶状态,包括:
102.驾驶行为判定模块还用于:在相邻的候选事件中,分别确定每个候选事件对应的行驶状态;
103.若相邻的候选事件中,有多个候选事件对应的行驶状态为转向,且多个候选事件的转向角度的和值属于掉头角度区间,且多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定组合行为对应的行驶状态为掉头;
104.若相邻的候选事件中,有两个候选事件对应的行驶状态为转向,且两个候选事件的转向角度的和值属于变道角度区间,且两个候选事件的侧向位移的和值属于变道位移区间,则确定组合行为对应的行驶状态为变道;
105.若相邻的候选事件中,有三个候选事件对应的行驶状态为转向,且三个候选事件的转向角度的和值属于避障角度区间,且三个候选事件的侧向位移的和值属于避障位移区间,则确定组合行为对应的行驶状态为避障。
106.在该实施例中,针对基本行为,驾驶行为判定模块可其行驶状态可能为转向或紧急制动。
107.具体地,若候选事件转向角度属于转向角度区间,则确定候选事件对应的行驶状态为转向;若候选事件水平加速度大于制动加速度阈值,则确定候选事件对应的行驶状态为紧急制动,其中,转向角度区间以及制动加速度阈值均可根据历史经验设置。由于基本行
为包含一个单独的候选事件,因此该候选事件对应的行驶状态即为基本行为的行驶状态,也即基本行为对应的时间段的车辆当前行驶状态。
108.例如,转向角度区间可设置为0
°
~145
°
,此时若单次转向角度属于0
°
~145
°
,则可判定为转向行为;制动加速度阈值可设置为10m/s2,此时若水平加速度大于10m/s2,则可判定为紧急制动行为。
109.此外,针对组合行为,驾驶行为判定模块可其行驶状态可能为为掉头、变道或避障。
110.具体地,首先分别判断每个候选事件的行驶状态是否为转向,进而得到组合行为中的转向次数,判断方法与前述相同,在此不再赘述。之后根据转向的次数以及每个候选事件的子行驶信息,得到整个组合行为的行驶状态,作为组合行为对应的时间段的车辆当前行驶状态。
111.其中,若转向次数为多次,且多次转向的转向角度的和值属于掉头角度区间,且转弯半径的平均值小于掉头半径阈值,则确定组合行为对应的行驶状态为掉头;若转向次数为两次,且转向角度的和值属于变道角度区间,且侧向位移的和值属于变道位移区间,则确定组合行为对应的行驶状态为变道;若转向次数为三次,且转向角度的和值属于避障角度区间,且侧向位移的和值属于避障位移区间,则确定组合行为对应的行驶状态为避障。其中,掉头角度区间、掉头半径阈值、变道角度区间、变道位移区间、避障角度区间以及避障位移区间均可根据历史经验设置。
112.例如,可设置掉头角度区间为145
°
~225
°
、掉头半径阈值为20m,此时若多次转向角度累计145~225
°
且平均转弯半径小于20m,则可判定为掉头动作;可设置变道角度区间为0
°
~0+δ
°
、变道位移区间为1~2车道宽度,其中δ是一个预先设置的小常量,此时若两次转向角度和接近0
°
且侧向位移1~2车道宽度,则可判定为变道动作;可设置避障角度区间为0
°
~0+δ
°
、避障位移区间为0~0+ε米,其中ε是一个预先设置的小常量,此时若三次转向角度和接近0
°
且侧向位移也接近0m,则可判定为避障动作。
113.在具体的应用场景中,可选地,运算及存储子系统包括分心检测模块;
114.分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的人脸关键点,并根据人脸关键点构建人脸模型;
115.分心检测模块根据人脸模型,确定驾驶员的头部姿态欧拉角,根据头部姿态欧拉角确定头部姿势向量,并根据头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入监控结果。
116.在该实施例中,如图6所示,分心检测模块首先进行人脸检测模型加载,将无线摄像头采集的图片输入人脸检测模型,在模型中实现人脸检测与关键点标定,然后进行头部姿态估计,根据其结果进行分心检测判定,若驾驶员在一定时间偏离正视方向,则判定为分心驾驶,此时做出提醒与记录;若判定为正常驾驶,则继续抓取新的图片进行分心检测。
117.具体地,分析监测模块首先抓取无线摄像头采集的图片,并输入mobilenet-yolo模型,该网络模型是google为了移动端和嵌入式设备设计的模型,同时保证了准确性和运算速度。在模型中进行人脸识别以及关键点标定,输出得到标注的106个人脸关键点。然后在106个人脸关键点中选择特定关键点并利用特定关键点建立3d标准人脸模型,其中,特定关键点包括左右额角、左右眼角、左右鼻角、左右嘴角、嘴角中心以及下巴。
118.在建立3d标准人脸模型后,进行2d人脸至3d人脸模型perspec-n-point求解。具体地,对于某个空间点p,令p=k[r|t]p=k[r|t],其中k为相机内参矩阵,[r|t]为增广矩阵。得到下式:
[0119][0120]
其中,r是3
×
3旋转矩阵,p是平移向量,[xw,yw,zw,1]是世界坐标系下的坐标。
[0121]
将上式展开得到:
[0122][0123]
推导得出:
[0124][0125]
在根据上式得出旋转矩阵r后,可利用下式求得x、y以及z轴对应的欧拉角,也即俯仰角θ
x
、方位角θy以及翻滚角θz:
[0126]
θ
x
=atan2(r
32
,r
33
)
[0127][0128]
θz=atan2(r
21
,r
11
)
[0129]
其中,atan2(x,y)函数返回的是原点(0,0)至点(x,y)的方位角,具体计算过程如下:
[0130][0131]
在此基础上,由于围绕y轴的roll角度对分心检测的影响较小,因此仅关注绕z轴的yaw角以及绕x轴的pitch角。具体地,确定头部姿势向量以及摄像头放置位置向量利用下式判断驾驶员是否分心:
[0132][0133]
若判断出头部在一定时间偏离正视方向,则做出提醒并图片记录。
[0134]
在具体的应用场景中,可选地,通信子系统包括移动数据模块、usb-wifi模块以及
云端通信模块;
[0135]
移动数据模块用于产生热点;
[0136]
usb-wifi模块与移动数据模块连接,用于利用移动数据模块产生的热点连接互联网;
[0137]
云端通信模块用于通过usb-wifi模块连接云服务器,并每隔预设时长将与监控结果对应的目标数据发送至云服务器;
[0138]
云端通信模块用于接收云端服务器下发的消息,并将消息输出为文件;
[0139]
若在文件中读取到密钥过期信息,则启动发送密钥程序;
[0140]
若在文件中读取到更新程序信息,则在文件中读取升级资源地址,并获取与升级资源地址对应的升级资源,利用升级资源执行升级操作。
[0141]
在该实施例中,如图7所示,云端通信子系统包含移动数据模块、usb-wifi模块、云端通信模块;移动数据终端产生热点;usb_wifi模块连接移动数据终端实现设备联网功能;云端通信模块实现获取网络时间、获取无线摄像头数据、云端通信模块mqtt(message queuing telemetry transport,消息队列遥测传输)定时发送参数至mqtt服务器,并通过mqtt服务器发送至云服务器,以及通过mqtt服务器接收云服务器下发消息、https从特定url链接下载文件,实现程序远程更新。其中,mqtt服务器可实现数据存储、数据监控以及数据显示功能。
[0142]
其中,如图8所示,云端通信模块与云服务器之间的通信包括消息接收以及消息发送。
[0143]
对于消息接收,首先按新建子线程,订阅mqtt服务器主题,并将接收消息输出为文件。例如,订阅主题为/device/__id__/update/code,接收云服务器端下发消息,其中__id__为设备唯一id,由设备出厂设置。
[0144]
然后对接收到的消息进行解析并处理。具体地,读取接收文件,接收到“密钥过期”则重发密钥;接收到“更新程序”,则从附加内容中读取url地址并下载征集资源,实现ota升级。
[0145]
对于消息发送,可开启定时器,周期性地将加密后的消息发送至云服务器中。其中,发送的消息可存储为json格式,并以xxtea方法加密,消息中包含数据个数、数据以数组排列,单个数据包含有参数名称、单位、数值等。
[0146]
此外,云服务器包括多个主题,可确定要发送的消息属于哪个主题,并将其发送至该主题中。
[0147]
例如,消息主题为/device/__id__/info,报警主题为/device/__id__/alarm,其中__id__为设备唯一id,由设备出厂设置。可将与监控结果对应的报警信息发送至报警主题。
[0148]
根据本技术的另一方面,提供了一种基于黑匣子的行车安全监控方法,方法用于上述基于黑匣子的行车安全监控系统,如图9所示,方法包括:
[0149]
s101,参数采集子系统获取车辆的行驶信息,并将行驶信息发送至运算及存储子系统,其中,行驶信息包括行驶姿态数据以及行驶速度;
[0150]
s102,运算及存储子系统存储行驶信息;根据车辆行驶信息确定当前行驶状态,和/或根据行驶信息确定驾驶员是否分心,得到监控结果;
[0151]
s103,通信子系统连接云服务器并将与监控结果对应的目标数据发送至云服务器。
[0152]
可选地,运算及存储子系统包括驾驶行为判定模块;根据行驶信息确定当前行驶状态,包括:
[0153]
s201,获取行驶姿态数据,若行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定变化值大于第一预设阈值的时刻为起始时刻,若变化值小于第一预设阈值且持续时长大于或等于第二预设阈值,则确定变化值小于第一预设阈值的时刻为终止时刻,起始时刻与终止时刻之间的时段对应一个候选事件;
[0154]
s202,根据行驶信息,确定每个候选事件对应的子行驶信息,其中,子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;
[0155]
s203,若相邻的候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个候选事件为一个基本行为,分别根据每个候选事件的子行驶信息确定候选事件对应的行驶状态,并将候选事件对应的行驶状态作为当前行驶状态,其中,候选事件对应的行驶状态为转向或紧急制动;
[0156]
s204,若相邻的候选事件之间的时间间隔小于第三预设阈值,则确定相邻的候选事件属于一个组合行为,根据候选事件的子行驶信息确定组合行为对应的行驶状态,并将组合行为对应的行驶状态作为当前行驶状态其中,组合行为的行驶状态为掉头、变道以及避障中的一个;
[0157]
s205,将当前行驶状态写入监控结果。
[0158]
可选地,分别根据每个候选事件的子行驶信息确定候选事件对应的行驶状态,包括:
[0159]
s301,若候选事件转向角度属于转向角度区间,则确定候选事件对应的行驶状态为转向;
[0160]
s302,若候选事件水平加速度大于制动加速度阈值,则确定候选事件对应的行驶状态为紧急制动;
[0161]
根据候选事件的子行驶信息确定组合行为对应的行驶状态,包括:
[0162]
s401,在相邻的候选事件中,分别确定每个候选事件对应的行驶状态;
[0163]
s402,若相邻的候选事件中,有多个候选事件对应的行驶状态为转向,且多个候选事件的转向角度的和值属于掉头角度区间,且多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定组合行为对应的行驶状态为掉头;
[0164]
s403,若相邻的候选事件中,有两个候选事件对应的行驶状态为转向,且两个候选事件的转向角度的和值属于变道角度区间,且两个候选事件的侧向位移的和值属于变道位移区间,则确定组合行为对应的行驶状态为变道;
[0165]
s404,若相邻的候选事件中,有三个候选事件对应的行驶状态为转向,且三个候选事件的转向角度的和值属于避障角度区间,且三个候选事件的侧向位移的和值属于避障位移区间,则确定组合行为对应的行驶状态为避障。
[0166]
可选地,运算及存储子系统包括分心检测模块;根据行驶信息确定驾驶员是否分心,包括:
[0167]
s501,分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的
人脸关键点,并根据人脸关键点构建人脸模型;
[0168]
s502,分心检测模块根据人脸模型,确定驾驶员的头部姿态欧拉角,根据头部姿态欧拉角确定头部姿势向量,并根据头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入监控结果。
[0169]
可选地,通信子系统包括移动数据模块、usb-wifi模块以及云端通信模块;连接云服务器并将与监控结果对应的目标数据发送至云服务器,包括:
[0170]
s601,移动数据模块产生热点;
[0171]
s602,usb-wifi模块利用移动数据模块产生的热点连接互联网;
[0172]
s603,云端通信模块通过usb-wifi模块连接云服务器,并每隔预设时长将与监控结果对应的目标数据发送至云服务器;
[0173]
s604,云端通信模块接收云端服务器下发的消息,并将消息输出为文件;若在文件中读取到密钥过期信息,则启动发送密钥程序;若在文件中读取到更新程序信息,则在文件中读取升级资源地址,并获取与升级资源地址对应的升级资源,利用升级资源执行升级操作。
[0174]
需要说明的是,本技术实施例提供的一种基于黑匣子的行车安全监控方法的其他相应描述,可以参考图1至图8中的对应描述,在此不再赘述。
[0175]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本技术可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。
[0176]
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的单元或流程并不一定是实施本技术所必须的。本领域技术人员可以理解实施场景中的系统中的单元可以按照实施场景描述进行分布于实施场景的系统中,也可以进行相应变化位于不同于本实施场景的一个或多个系统中。上述实施场景的单元可以合并为一个单元,也可以进一步拆分成多个子单元。
[0177]
上述本技术序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本技术的几个具体实施场景,但是,本技术并非局限于此,任何本领域的技术人员能思之的变化都应落入本技术的保护范围。

技术特征:


1.一种基于黑匣子的行车安全监控系统,其特征在于,所述系统包括:参数采集子系统、运算及存储子系统、通信子系统;所述参数采集子系统用于获取车辆的行驶信息,并将所述行驶信息发送至所述运算及存储子系统,其中,车辆行驶信息包括行驶姿态数据以及行驶速度;所述运算及存储子系统用于根据所述行驶信息确定当前行驶状态,和/或根据所述行驶信息确定驾驶员是否分心,得到监控结果;所述运算及存储子系统还用于存储所述行驶信息;所述通信子系统用于连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器。2.根据权利要求1所述的系统,其特征在于,所述运算及存储子系统包括驾驶行为判定模块;所述驾驶行为判定模块用于获取所述行驶姿态数据,若所述行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定所述变化值大于所述第一预设阈值的时刻为起始时刻,若所述变化值小于所述第一预设阈值且所述持续时长大于或等于所述第二预设阈值,则确定所述变化值小于所述第一预设阈值的时刻为终止时刻,所述起始时刻与所述终止时刻之间的时段对应一个候选事件;根据所述行驶信息,确定每个所述候选事件对应的子行驶信息,其中,所述子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;若相邻的所述候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个所述候选事件为一个基本行为,分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,并将所述候选事件对应的行驶状态作为所述当前行驶状态,其中,所述候选事件对应的行驶状态为转向或紧急制动;若相邻的所述候选事件之间的时间间隔小于所述第三预设阈值,则确定所述相邻的所述候选事件属于一个组合行为,根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,并将所述组合行为对应的行驶状态作为所述当前行驶状态其中,所述组合行为的行驶状态为掉头、变道以及避障中的一个;将所述当前行驶状态写入所述监控结果。3.根据权利要求2所述的系统,其特征在于,所述驾驶行为判定模块用于:若所述候选事件转向角度属于转向角度区间,则确定所述候选事件对应的行驶状态为转向;若所述候选事件水平加速度大于制动加速度阈值,则确定所述候选事件对应的行驶状态为紧急制动;所述根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,包括:所述驾驶行为判定模块还用于:在相邻的所述候选事件中,分别确定每个所述候选事件对应的行驶状态;若相邻的所述候选事件中,有多个候选事件对应的行驶状态为转向,且所述多个候选事件的转向角度的和值属于掉头角度区间,且所述多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定所述组合行为对应的行驶状态为掉头;若相邻的所述候选事件中,有两个候选事件对应的行驶状态为转向,且所述两个候选事件的转向角度的和值属于变道角度区间,且所述两个候选事件的侧向位移的和值属于变
道位移区间,则确定所述组合行为对应的行驶状态为变道;若相邻的所述候选事件中,有三个候选事件对应的行驶状态为转向,且所述三个候选事件的转向角度的和值属于避障角度区间,且所述三个候选事件的侧向位移的和值属于避障位移区间,则确定所述组合行为对应的行驶状态为避障。4.根据权利要求1所述的系统,其特征在于,所述运算及存储子系统包括分心检测模块;所述分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的人脸关键点,并根据所述人脸关键点构建人脸模型;所述分心检测模块根据所述人脸模型,确定所述驾驶员的头部姿态欧拉角,根据所述头部姿态欧拉角确定头部姿势向量,并根据所述头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入所述监控结果。5.根据权利要求1所述的系统,其特征在于,所述通信子系统包括移动数据模块、usb-wifi模块以及云端通信模块;所述移动数据模块用于产生热点;所述usb-wifi模块与所述移动数据模块连接,用于利用所述移动数据模块产生的热点连接互联网;所述云端通信模块用于通过所述usb-wifi模块连接所述云服务器,并每隔预设时长将与所述监控结果对应的目标数据发送至所述云服务器;所述云端通信模块用于接收所述云端服务器下发的消息,并将所述消息输出为文件;若在所述文件中读取到密钥过期信息,则启动发送密钥程序;若在所述文件中读取到更新程序信息,则在所述文件中读取升级资源地址,并获取与所述升级资源地址对应的升级资源,利用所述升级资源执行升级操作。6.一种基于黑匣子的行车安全监控系统方法,其特征在于,所述方法用于权利要求1至5中任一项所述的系统,所述方法包括:所述参数采集子系统获取车辆的行驶信息,并将所述行驶信息发送至所述运算及存储子系统,其中,所述行驶信息包括行驶姿态数据以及行驶速度;所述运算及存储子系统存储所述行驶信息;根据所述车辆行驶信息确定当前行驶状态,和/或根据所述行驶信息确定驾驶员是否分心,得到监控结果;所述通信子系统连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器。7.根据权利要求6所述的方法,其特征在于,所述运算及存储子系统包括驾驶行为判定模块;所述根据所述行驶信息确定当前行驶状态,包括:获取所述行驶姿态数据,若所述行驶姿态数据的变化值大于第一预设阈值且持续时长大于或等于第二预设阈值,则确定所述变化值大于所述第一预设阈值的时刻为起始时刻,若所述变化值小于所述第一预设阈值且所述持续时长大于或等于所述第二预设阈值,则确定所述变化值小于所述第一预设阈值的时刻为终止时刻,所述起始时刻与所述终止时刻之间的时段对应一个候选事件;根据所述行驶信息,确定每个所述候选事件对应的子行驶信息,其中,所述子行驶信息包括:转向角度、转弯半径、侧向位移以及水平加速度;
若相邻的所述候选事件之间的时间间隔大于或等于第三预设阈值,则分别确定每个所述候选事件为一个基本行为,分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,并将所述候选事件对应的行驶状态作为所述当前行驶状态,其中,所述候选事件对应的行驶状态为转向或紧急制动;若相邻的所述候选事件之间的时间间隔小于所述第三预设阈值,则确定所述相邻的所述候选事件属于一个组合行为,根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,并将所述组合行为对应的行驶状态作为所述当前行驶状态其中,所述组合行为的行驶状态为掉头、变道以及避障中的一个;将所述当前行驶状态写入所述监控结果。8.根据权利要求7所述的方法,其特征在于,所述分别根据每个所述候选事件的子行驶信息确定所述候选事件对应的行驶状态,包括:若所述候选事件转向角度属于转向角度区间,则确定所述候选事件对应的行驶状态为转向;若所述候选事件水平加速度大于制动加速度阈值,则确定所述候选事件对应的行驶状态为紧急制动;所述根据所述候选事件的子行驶信息确定所述组合行为对应的行驶状态,包括:在相邻的所述候选事件中,分别确定每个所述候选事件对应的行驶状态;若相邻的所述候选事件中,有多个候选事件对应的行驶状态为转向,且所述多个候选事件的转向角度的和值属于掉头角度区间,且所述多个候选事件的转弯半径的平均值小于掉头半径阈值,则确定所述组合行为对应的行驶状态为掉头;若相邻的所述候选事件中,有两个候选事件对应的行驶状态为转向,且所述两个候选事件的转向角度的和值属于变道角度区间,且所述两个候选事件的侧向位移的和值属于变道位移区间,则确定所述组合行为对应的行驶状态为变道;若相邻的所述候选事件中,有三个候选事件对应的行驶状态为转向,且所述三个候选事件的转向角度的和值属于避障角度区间,且所述三个候选事件的侧向位移的和值属于避障位移区间,则确定所述组合行为对应的行驶状态为避障。9.根据权利要求6所述的方法,其特征在于,所述运算及存储子系统包括分心检测模块;所述根据所述行驶信息确定驾驶员是否分心,包括:所述分心检测模块根据无线摄像头数据中的驾驶员图像,确定与驾驶员对应的人脸关键点,并根据所述人脸关键点构建人脸模型;所述分心检测模块根据所述人脸模型,确定所述驾驶员的头部姿态欧拉角,根据所述头部姿态欧拉角确定头部姿势向量,并根据所述头部姿势向量以及摄像头位置向量,判断是否分心,并将判断结果写入所述监控结果。10.根据权利要求6所述的方法,其特征在于,所述通信子系统包括移动数据模块、usb-wifi模块以及云端通信模块;所述连接云服务器并将与所述监控结果对应的目标数据发送至所述云服务器,包括:所述移动数据模块产生热点;所述usb-wifi模块利用所述移动数据模块产生的热点连接互联网;所述云端通信模块通过所述usb-wifi模块连接所述云服务器,并每隔预设时长将与所
述监控结果对应的目标数据发送至所述云服务器;所述云端通信模块接收所述云端服务器下发的消息,并将所述消息输出为文件;若在所述文件中读取到密钥过期信息,则启动发送密钥程序;若在所述文件中读取到更新程序信息,则在所述文件中读取升级资源地址,并获取与所述升级资源地址对应的升级资源,利用所述升级资源执行升级操作。

技术总结


本申请公开了一种基于黑匣子的行车安全监控系统和方法。系统包括:参数采集子系统、运算及存储子系统、通信子系统;参数采集子系统用于获取车辆的行驶信息,并将行驶信息发送至运算及存储子系统,其中,车辆行驶信息包括行驶姿态数据以及行驶速度;运算及存储子系统用于根据行驶信息确定当前行驶状态,和/或根据行驶信息确定驾驶员是否分心,得到监控结果;运算及存储子系统还用于存储行驶信息;通信子系统用于连接云服务器并将与监控结果对应的目标数据发送至云服务器。本申请提供的系统充分发挥了汽车黑匣子设备的边缘计算能力。分发挥了汽车黑匣子设备的边缘计算能力。分发挥了汽车黑匣子设备的边缘计算能力。


技术研发人员:

徐新民 李健卫 华迎凯 夏王浩 李洋

受保护的技术使用者:

浙江大学

技术研发日:

2022.11.11

技术公布日:

2023/3/27

本文发布于:2024-09-20 19:47:36,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/84186.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   事件   状态   阈值
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议