论文部分内容阅读
近年来因汽车驾驶员注意力分散导致的交通事故占比居高不下,其中使用手持电话的行为是导致驾驶员注意力分散的一个重要原因。尽管全球已有许多国家与地区明确禁止司机在行车途中接打手机,但在执法过程中,存在对汽车司机行车途中接打手机行为难以监管的问题。因此,以视频记录、分析的方式替代人工监控和判断有迫切需求。以视觉分析的方式检测驾驶员是否在驾驶过程中接打电话,顺应道路交通安全监管需求,具有实践意义。本文设计了一种检测系统,即基于视频分析的方式检测驾驶员在行车过程中是否使用手持电话并对该检测系统进行了研究、设计与检验。该检测系统以在驾驶室内安装前置摄像头采集驾驶员图像作为前置条件。检测系统主要包含三个子模块,分别为感兴趣区域定位、模式识别以及运动检测。感兴趣区域定位模块包括人脸和耳部区域定位,采用MTCNN实现人脸检测及人脸对齐并通过人脸区域确定驾驶员的位置,依据人脸“三庭五眼”的几何比例关系可大致确定耳部区域从而确立感兴趣区域。模式识别模块用于分类手持通话和正常驾驶图像,在感兴趣区域内根据人脸特征点位置去除眼睛、鼻子以及唇部非肤色区域,采用单高斯模型作为肤色度量模型动态自适应的计算出概率密度阈值,利用该阈值分割出耳部区域的手部图像,肤色信息作为下一步特征提取的输入。提取脸部及耳部区域内的手部肤色图像的PCA-HOG特征,然后采用到SVM算法分类特征用于判别打电话和非打电话图像。运动检测模块用于检测唇部运动,根据人脸特征点定位确定的唇部位置,通过唇部宽高比计算张合度,再根据张合状态持续时间与频率来分析唇部运动并确定驾驶员是否在说话,最后通过统计连续多帧图像的手持通话行为分类结果以及唇部运动结果从而最终检测出驾驶员是否存在手持通话行为。本文在Linux环境下使用Python基于Tensorflow和Scikit-learn机器学习框架实现了该检测系统,并通过自建的驾驶员打电话行为数据集训练和测试,最终实验结果表明本检测系统具有较好的鲁棒性和实时性可以有效的检测驾驶员手持通话行为。