论文部分内容阅读
近年来自动驾驶技术引起了人们广泛的关注,自动驾驶汽车需要通过行车视频进行实时的目标检测,再联合其他信息在行驶过程中做出及时的决策。因此,一个适用于行车视频下的鲁棒性较强的目标检测算法具有很重要的实际意义。传统检测算法泛化能力不够好,大多数都不能适应复杂多变的环境和实时性的要求。而利用深度学习进行目标检测可以避免传统算法的诸多问题,并获得远优于传统方法的检测效果。目前大多数行车视频检测只针对车辆,事实上如交通灯、行人、骑车人等信息对于环境感知也是必要的。因此,本文使用基于深度学习的目标检测算法,并改进其特征提取器,将其应用于行车视频下多个类别的目标检测。本文的主要工作如下:针对传统算法有鲁棒性不好、准确率不高和实时性差等缺陷,本文使用深度学习算法来构建行车视频的多目标检测模型,并进行改进以增加检测精度。YOLOv2算法的实时性好,检测准确率高;而更深的网络层数有助于算法中的特征提取器提取特征。本文在YOLOv2算法的基础上,将主干的darknet19神经网络替换为含有残差块的网络,通过增加特征提取器的网络层数获得更高的检测精度,达到更好的检测效果。对改进的算法进行一系列的验证实验以及应用。在带有GPU的PC上配置TensorFlow等深度学习框架和CUDA计算架构;处理KITTI目标检测数据集和Udacity汽车检测数据集;使用CIFAR-10数据集评估网络的分类能力,将本文改进的神经网络与darknet19和VGG16网络分别进行训练比较分类性能,本文的改进模型得到的准确率和召回率分别为0.934和0.872(top-5),并且两个指标都高于后两个网络;使用KITTI数据集评估改进算法的检测性能,一共有1106个测试样本参与评估,训练得到的模型检测汽车平均精度为75.36%,综合行人得到的mAP为65.27%,比原YOLOv2算法训练的模型高4个百分点;训练拥有更多类别和更多小目标的udacity数据集用于行车视频的目标检测,整体效果也好于原YOLOv2算法训练的模型。最后,使用本文训练得到模型用于实际的视频测试得到了很好的检测效果。实验结果表明,通过改进特征提取器(神经网络)有助于提取特征,改进网络的YOLOv2算法相比于原YOLOv2算法具有更高的检测精度,将其用于行车视频下的目标检测有很好的效果。