基于JetsonXavierNx的智能驾驶员行为检测系统设计

known 发布于 2025-08-24 阅读(499)

郭小玉,杨蕾,鹿德源

(中原工学院电子信息学院,河南 郑州 450007)

0 引 言

驾驶员的行为变化关系着整个交通系统运行状态的变化。事实上,大多数交通事故的发生往往都与驾驶/驾驶员行为密切相关。随着交通工具的更新换代及其数量的逐年递增,每年的交通事故发生数量也随之增加。每年因交通事故而导致死亡的人数不低于50万。欧美各国的交通事故统计分析表明,交通事故中有80%~90%是由人为因素造成的。根据美国国家公路交通安全署的统计,在美国的公路上,每年由于司机在驾驶过程中陷入睡眠状态而导致大约10万起交通事故,约有1 500起事故直接导致人员死亡,因驾驶员低头玩手机、双手离开方向盘而导致的交通事故近年来以40%的速率增长,711万起事故导致人员伤害。欧洲的情况也大致相同。根据2020年中国交通部的统计,我国有90%的车祸是由驾驶员疲劳驾驶、玩手机、低头、未目视前方引起的,直接经济损失达数十万美元。有关汽车驾驶员的驾驶安全问题,随着交通载具的发展和电子产品的介入,目前已成为交通安全研究的重要一环。由此可见,危险驾驶行为导致的危害非常严重,深入研究对驾驶员危险驾驶行为进行识别的检测系统是非常有必要的。

1 系统总体设计方案

在智能驾驶员行为检测系统的设计中,信息处理载体与运算系统的稳定性决定了整个系统的稳定程度,运算速度的快慢直接关系到系统反馈的实时性。根据对整个检测系统的功能需求以及对系统实际使用场景的分析,在搭载平台时着重关注图像处理性能、所支持AI框架、功耗以及尺寸。在保证强大算力的前提下,尽可能选用尺寸小、功耗低的硬件载体。

本次系统设计以智能驾驶行为检测分析为主线,涉及对驾驶员检测、驾驶行为分析、预警等功能。考虑到系统落地使用场景,最后选择英伟达Jetson Xavier NX作为系统的载体。以ubuntu16.04操作系统作为整个智能驾驶员行为检测系统的开发平台,采用1 080 p摄像头进行视频数据的录入,结合训练过后的YOLOv5框架进行驾驶人员驾驶行为的检测,随后依赖Opencv图像处理库对视频数据进行压缩处理并将处理过后的数据同步上传至百度AI智能平台进行处理,可针对驾驶员未系安全带、看手机、抽烟、双手离开方向盘、视线未朝向前方、闭眼、打哈欠、低头等八种危险驾驶行为进行检测并返回数据,通过百度语音技术合成提示音进行语音播报及预警,避免意外发生。同时在系统设计之初,考虑到疫情状况,加入口罩检测功能,助力疫情防卫。

1.1 系统硬件设计

人工智能驾驶员行为检测系统硬件主要包括:英伟达Jetson Xavier NX智能计算板、高清摄像头等。整个系统部署在英伟达Jetson Xavier NX智能梳理平台上,基于此平台运行系统所需的驱动程序、应用程序,调用相对应的接口函数。英伟达Jetson Xavier NX配备了六核心的Carmel ARM 64位处理器,拥有6 MB二级缓存、4 MB三级缓存,同时搭配NVIDIA Volta架构的GPU,集成384个CUDA核心、48个Tensor张量核心、2个NVDLA深度学习加速引擎,并提供从高速CSI、PCIe到低速I2C、GPIO的一套丰富I/O。英伟达Jetson Xavier NX是外形小巧的模组系统(SOM),可为边缘系统提供超级计算机性能,如图1所示。借助高达21 TOPS的加速计算能力,可以并行运行现代神经网络并处理来自多个高分辨率传感器的数据。

图1 Jetson Xavier NX实物图

高清摄像头选用与英伟达计算平台适配的Up to 6 cameras(24 via virtual channels)摄像头,像素达到1 080 P,支持最大30 GB/s的传输速度,如图2所示。

图2 高清摄像头实物

在实际的场景搭载中,要求设备能够获取驾驶位全景,因此最终选择将摄像头固定在汽车B柱上方,将Jetson Xavier NX处理板放置在副驾驶台上方,具体实景如图3所示。

图3 设备位置-车内视角

1.2 系统软件设计

出于对Jetson Xavier NX搭载平台属性及系统稳定性的考虑,此次设计选择的系统环境为Ubuntu16.04.5LTS。Ubuntu系统作为使用最为广泛的linux系统发行版本,具有功耗低、稳定性高、系统兼容性好等优点,具体环境配置如表1所示。

表1 系统环境配置

1.3 YOLOv5检测框架

驾驶行为是一系列的连贯动作,因此对整个驾驶行为的分析及结果反馈也是需要实时进行的,而视频数据文件过大,对于实时处理所需的内存及运算能力有较高的要求;YOLOv5检测模型及百度AI平台均对硬件设备的内存和算力有较高的要求。针对以上要求,对现有三种检测算法进行内存占比的比较。在同等环境配置(台式工作站内存为16 GB)下,使用公共数据集VOC2007进行了模型的性能测试,得到相关参数结果如图4所示。结合实际需求,最终选择内存消耗较低的YOLOv5检测算法。

图4 不同检测算法内存占比情况

1.4 百度AI智能平台

百度AI智能平台提供在线编程环境,免费的GPU算力。本次设计中使用百度AI平台人体分析中的驾驶行为分析。在完成驾驶员检测后,系统开始调用接口进行驾驶行为分析。对于数据获取要求车内摄像头分辨率在720 P以上。摄像头获取数据后通过Http协议中的post方式进行数据传输,保证数据传输的安全性。所有输入图像的格式均保证为1 920×1 080 P,驾驶行为及驾驶员参数均使用默认参数。

考虑到实际应用场景中,可能会有多种危险驾驶行为同时发生的情况出现,该系统按照安全驾驶威胁的轻重程度,对九种行为进行等级划分,以便在进行预警提示时选择优先级较高的行为进行预警提示。第一等级:未系安全带、双手离开方向盘、闭眼、打哈欠、低头;第二等级:视线未朝向前方、抽烟、使用手机、未佩戴口罩。若多种危险驾驶行为同时发生,则按照以上优先级划分进行实时预警提醒。

1.5 系统检测流程

图5显示了整个系统的检测流程。首先,系统通过外置精度为1 080 P的摄像头对汽车驾驶位的视频数据进行采集;其次,将采集的视频实时传输到Jetson Xavier NX计算平台。接收到视频数据后平台开始调用YOLOv5框架对驾驶位进行检测,判断驾驶位是否有驾驶员存在,若无驾驶员存在则返回YOLOv5检测框架持续检测,检测到驾驶员后,将视频数据实时传输到百度AI平台进行危险驾驶行为检测并返回检测结果,系统接收到返回的检测数据后,使用百度语音技术合成提示音,进行实时播报提醒。

图5 系统流程图

2 测试2.1 驾驶员检测测试

驾驶员检测测试的前置条件是设备运行正常,摄像头获取视频数据正常。实际场景分为驾驶位无人与有人两种状态。当驾驶位处于无人状态,接收返回数据0,系统持续进行目标检测。当驾驶位处于有人状态,接收返回数据1,系统进入下一步驾驶行为检测。

2.2 行为检测测试

行为检测测试主要是检测系统能否及时正确地反馈数据信息。本次测试共计10类,分别是驾驶员处于正常状态、看手机、抽烟、未系安全带、双手离开方向盘、视线未朝向前方、未佩戴口罩、闭眼、打哈欠、低头。针对十种类别情况分别进行测试,测试结果如表2所示。

表2 十种类别情况测试结果

2.3 语音播报测试

语音播报测试是针对在获取到危险驾驶行为的数据时,进行实时语音播报是否正常的测试,具体测试如表3所示。

表3 语音播报测试结果

3 结 论

在交通载具快速发展、智能交通普及的当下,通过对智能计算平台Jetson Xavier NX的二次开发并结合深度学习和百度AI智能平台,设计并实现了智能驾驶员行为检测系统。该系统适用于多种交通载具,可在多种环境下完成对驾驶员驾驶行为的监测,做到防患于未然。有效避免部分人为原因造成的交通事故,对公共交通驾驶安全的解决方案提出了新的思路。

标签:  行为 

免责声明

本文来自网络,不代表本站立场。如有不愿意被转载的情况,请联系我们。

iidomino cuppor