深度学习大火!它是怎样运用到自动驾驶中去的?

在进一步阐述深度学习之前,我们需要了解什么是机器学习(Machine Learning)。机器学习是人工智能的一个分支,在很多时候,几乎成为人工智能的代名词。简单来说,机器学习就是通过算法,使得机器能从大量历史数据中学习规律,从而对新的样本做智能识别或对未来做预测。

深度学习又是机器学习研究中的一个新的领域,其动机在于建立可以模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如,图像、声音和文本。

自动驾驶主要分为几大技术模块:感知技术,高精度地图和决策技术。就MINIEYE 最熟悉的感知技术来说,目标定位、目标分割、目标回归都涉及到了深度学习,具体到功能上,包括车道线检测、可行驶区域判定,前车测距中的车辆边缘精细回归等等,解决这些视觉问题都离不开深度学习。

自动驾驶为什么需要深度学习?

在视觉感知方面,深度学习对于提升识别精确性有明显的提升。

例如利用视觉技术判定和前车的碰撞时间,在不依赖雷达的情况下,我们可以利用的信息只有前车在摄像头中的宽度随时间的变化率。

然而,对于这类较远的车辆,一个像素的边缘偏差都会带来米级的距离估计误差,例如 60 米远的车辆,在图像中可能就只有 40 像素的宽度,这就对算法本身提出了挑战,基于深度学习的车辆检测算法可以利用回归方法,精确定位前车的边沿,在短时间内根据前车边缘的变化率判断两车的碰撞时间。

目前,在 MINIEYE 的视觉解决方案中,深度学习运用到了车辆、行人检测,车道线检测,以及之前提到的碰撞预警相关的技术上。同时在DMS(Driver Monitoring System)中,几乎所有技术都采用了基于CNN的解决方案,包括人脸检测、特征点回归,人脸识别验证,打手机,抽烟等不良动作的识别。

运用深度学习进行车辆分类与特征点回归

深度学习难在哪儿?

在开发深度学习技术中,MINIEYE遇到过许多难题。首先,最大的难题在于场景的多样性与复杂性,这要求我们能够在离线条件下,对各种场景有丰富的数据积累。满足自动驾驶条件的深度学习算法不但要能够处理正常情况,也要能够处理极端情况,为了积累足够多极端情况下的数据,产品可能随着车跑上千万公里。

第二,自动驾驶环境受到天气影响很大,需要正常处理各种天气下的视频数据,雨、雾天经常会影响成像清晰度,雪天地面反光非常强,车道线会被大雪遮盖,场景发生剧烈改变;

第三,自动驾驶需要处理各种大动态范围的光照场景,比如白天进隧道,正午的树荫、夜晚对向车的大灯,会造成成像的严重退化,眩光、反光等等;

第四,使用过程中摄像头被污染,成像严重退化;

第五,深度学习技术对计算复杂度的要求与车载环境下的低能耗要求是一个技术难点,深度学习技术大都是计算量消耗比较大的,如何在低能耗,有限的计算能力下解决问题,是比较大的挑战。

MINIEYE是如何运用深度学习的?

为了克服这些困难,MINIEYE 在创业 5 年来,已经积累了上千万公里的数据,这些数据让我们有能力收集到各种极端情况,让我们可以对雨、雪、雾天的数据进行专门的研究,设计专门的模型应对不同的天气;

对于光照变化剧烈的场景,我们从系统设计的角度,让深度学习技术控制摄像头,实现自适应曝光处理,就像司机正午会带墨镜,晚上会开大灯一样;

对于感光成像不佳时,也能自动学习识别,然后向用户报警;

对于深度学习效率的问题,我们在网络结构的优化,网络的压缩、网络的定点化、网络的稀疏化方面都开展了研究。同时,我们在嵌入式方案上做了专门的优化,针对 ARM、 CPU、FPGA 以及 ASIC 都有专门的硬件团队进行优化,确保在各个平台上,深度学习算法移植完毕,性能都不会有损失,并且硬件效率都能得到最大的发挥。

深度学习场景下的车辆检测

深度学习在自动驾驶领域铺开应用是一种趋势。随着研发的迭代不挺的改进,深度学习和数据形成闭环会越来越完美,深度学习算法会精度越来越高。同时,硬件性能的加强和成本的降低,以及深度学习领域的研究进展,未来应会有越来越多的自动驾驶场景会采用深度学习的解决方案。

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();