司机违章行为在日常生活中屡见不鲜,为解决在移动端上高精度、实时监测司机的驾驶行为的问题,基于一种轻量级的目标检测算法YOLOv4-tiny,通过引入跨通道部分的连接机制,减少了模型的参数,在YOLOv3-tiny的基础上改进残差的思想,并在损失函数上将定位损失替换为CIOU损失实现更精确的边框,最后通过知识蒸馏的手段,利用教师模型YOLOv4指导tiny训练进一步提升其性能。通过在公开数据集和自建数据集上的多项实验对比结果显示,YOLOv4-tiny达到了更高的精度(分别提升7%和10%),实现了对算力较低的嵌入式设备或移动端的实时检测。
随着计算机和人工智能的飞速发展,深度神经网络已经成为计算机视觉领域近年来最为热门的研究方向,并且在机器视觉、语言识别和文本处理等诸多应用领域中取得了重大突破。
目标检测是计算机视觉领域的一个经典的任务,是进行场景内容分析和理解等高级视觉任务的基本前提。现有的目标检测算法的框架主要分为两大类:一阶段算法和二阶段算法。二阶段算法,如Faster R-CNN [1]利用选择性搜索算法从图像提取候选框, 对图像进行一次特征提取, 通过空间金字塔池化映射为固定长度的特征向量,再通过全连接层进行分类来预测边界框的坐标,从而对候选框进行修正。基于候选区域的算法在主流数据测试集中达到了非常高的检测精度。但是二阶段算法处理速度较慢,没有先进的硬件设备使得该类算法很难在实时的场景中落地。而一阶段算法的性能达到实时性要求且精度满足大部分需求。典型的一阶段算法如YOLO 系列算法,通过将候选区域与分类合二为一,利用整张图的特征来预测多个类别的概率和和每个边界框的置信度。YOLO 系列经过v1~v4 [2] [3] [4] [5]多个版本的迭代,已经在精度方面逐渐逼近二阶段算法,由于极高的实时性可以轻松在应用在各个类型的场景中。
司机违章行为检测是目标检测的一个重要的应用场景。在行车途中,司机的驾驶行为是否符合安全规范直接关系到全车人的人身安全,所以对司机进行视频监控是一项重要的安防措施。一般的车辆行驶中,在特定路段设置的抓拍系统只能对固定范围进行监控,仅能在一定程度上约束司机的违章行为。而日常的大部分时间里,在司机行驶过程中,通常会出现打电话、抽烟及喝水等违章行为,这些属于违章行为。在未被监控的时段,司机的行为仅靠个人的自觉遵守,很难对其进行监管。特别在公交系统, 出租车、客运车、货车、冷链车等大型交通工具中,这些违章行为存在极大的风险系数,危害着公共安全。
安全驾驶监督系统离不开目标检测技术的发展。当前国内外大多数智能司机行为检测集中于汽车行业,由于驾驶舱内部狭小,司机人脸和手部等有明确的特征,可以达到实时行为检测的目标。而对于机车来说,现有的系统一般搭载于昂贵的远程大型服务器上,只能在列车运行结束后收集运行保存的监控视频检测,无法实现实时和随车检测,只能进行司机非安全行为发生后的追查和定责。因此,采用一种低成本,可随车一起运行的嵌入式设备,在其上部署可以实时运行的监控系统,以便实时传回违章信息