论文部分内容阅读
汽车,作为18世纪以来最为重要的发明之一,极大地提升了人们的生活节奏并促进了文明的发展进程,现如今,汽车行业的发展水平,俨然已经成为了一种科技进步的标杆。但是,人们在享受汽车带来便利的同时,也饱受着交通事故的折磨。据不完全统计,全球每年因为交通事故伤亡的人不少于1000万。为了预防交通事故的发生,行驶车辆必须与前方行人车辆保持安全距离。及时感知交通环境和测量前方行人车辆的距离作为自动驾驶系统的重要组成部分,对于提高自动驾驶系统的可靠性和安全性也是至关重要的。目标检测是目标测距的基础,本文针对自动驾驶场景提出了基于轻量化YOLOv3的行人检测算法;结合行人检测结果,提出了一种包含pitch(俯仰角)、yaw(偏航角)的相似三角形测距算法。随着对深度估计任务的深入研究,提出了基于深度感知协同网络的单目深度估计与检测算法(Monocular Depth Detection Network,MDDN)。针对当前目标检测算法达不到实时性且准确率较低等问题,本文结合行人检测的场景,基于通用目标检测算法YOLOv3,提出了轻量化的、高精度的行人检测算法。讨论了现有网络输入尺寸设计的局限性,提出了有效的非形变网络输入策略;采用模型压缩和轻量化的网络两种方式来减少模型的计算量和参数量;结合特征金字塔模块来进一步增强网络的特征表达能力;改变网络输出层的Anchor分配机制来消除数据集标签存在的长尾分布偏差,并有效提升了目标检测精度。最终轻量化网络在BDD100K的验证集上,行人检测的AP50(Average Precision)达到了70.32%,mAP(Mean Average Precision)为51.5%,比YOLOv3算法的mAP提高了5.9%,具有更好的检测鲁棒性,模型参数量和计算量分别为5.32M、7.12GFloaps,测量一张图片的时间大约为10毫秒。自动驾驶场景下的行人目标在形态和大小等方面具有多样性,无法采用回归建模的方法来拟合一个通用模型并对所有行人进行测距,目前使用最广的距离测量模型是基于相机成像模型和几何透视关系的几何推导方法。因此,本文对常用的相似三角形测距算法进行了详细分析,提出了一种包含pitch、yaw的改进相似三角形测距算法,在行人检测基础上,实现了基于轻量化检测模型的行人测距系统,90米以内的平均误差小于6%,在FPGA上的帧率为20左右,满足了实时行人测距。传统视觉测距算法均采用先检测再测距的串联方式,测距结果极大地受到了检测结果的影响。因此,本文创新性地将目标检测任务与深度估计任务相结合,提出了一个端到端的实时单目深度估计与检测的多任务模型,同时对给定的单张图片进行行人车辆检测和深度估计,最终实现目标测距。参考HRNet模型结构,设计了轻量级多层互联骨干网,用于保留高分辨率特征图;通过横向共享单元以动态路由方式自动学习共享策略;并分别设计了目标检测子网络和深度估计子网络。该算法实现了基于深度估计的行人车辆测距,在KITTI数据集上,车辆检测和行人检测的AP分别取得了81.41%、60.07%,并且深度估计指标取得了比最新算法略高的准确度,80米内的相对误差为13.4%,该测距系统在50米内的平均误差为12.54%。