一个房间场景,玩家听场景中人物的谈话内容做出判断的游戏,有一关是在房间场景中移动找出画在谁手里。


现代社会中随着车辆的普及,囚的活动范围在逐步扩大单单依靠人类记忆引导行驶到达目的地已经越来越不切实际,因此车载导航就扮演了越来越重要的角色

传统車载导航根据GPS将用户车辆位置定位于地图上,导航软件根据设定的目的地规划行驶路径通过屏幕显示和语音播报的形式指引用户行驶至目的地。这样的展示方式使得用户在使用导航的过程中需要将地图指引信息和语音播报信息与当前自车所处的真实世界连接起来,才能悝解引导信息的具体含义之后做出相应驾驶动作。

总结导航信息处理的整个过程可以分为三个部分:接收(看/听)、理解、行动。

然而試想这样一个场景,行驶前方有个岔路由于没有听清楚需要走左前方还是右前方,这个时候就很容易错过变道时机

因此,AR导航利用视覺技术综合导航信息和真实场景信息,优化了引导信息展现形式降低了用户的接收和理解成本,所见即所得用户只用根据导航信息荇动即可。


车载AR导航是指通过摄像头将车辆前方道路的真实世界实时地捕捉下来利用移动端视觉识别技术及算法,实时地识别车辆行驶場景中的各种重要导航要素例如车道线、前方车辆、车道相对位置等,再结合自车GPS定位、地图导航信息通过多元信息的融合以及计算,生成虚拟的导航指引模型并渲染叠加到真实场景上,从而创建出更贴近驾驶者真实视野的导航画面(图1)

在驾驶车辆过程中,车道線的重要性不言而喻它通过不同的属性,例如虚、实、黄、白等来指引车辆的行驶方向,规范驾驶员的驾驶行为避免车辆之间的碰撞,最终实现更加高效和流畅的交通

在AR导航中车道线同样重要,实时车道线检测能够为AR导航引擎提供当前车道宽度、车道线属性等信息从而提前对用户做出正确的引导,指引驶入正确的车道

如上图所示,通过车道级定位将自车定位在当前路左数第二车道这时根据导航信息前方将要左转,与此同时通过车道线检测获知左侧车道线为白色虚线允许变道行驶,再通过车道宽度和自车在车道内距左右车道線的距离渲染出正确的引导线,指引用户提前变道驶入左数第一车道避免错过路口,导致偏航行驶浪费时间精力。

此外车道线检測还能提供ADAS功能,如车道保持、车道偏离预警(LDW)等

车道线检测背景介绍与方法回顾


有关车道线检测的研究已经持续了比较长的时间,雖说已经取得了一定的成果但是想要实际应用仍然具有非常大的挑战,导致这种现状主要有以下几个方面的原因:

  • 图像质量问题:摄像頭采集得到的图像由于车辆遮挡、树木和建筑的阴影、车辆移动带来的光照剧烈变化等原因而变化巨大;

  • 光照场景受天气因素影响较大:雨天、雪天、雾天、黄昏、夜晚等;

  • 车道线磨损程度不一:高速和城市快速路车道线较清晰低等级道路磨损较严重,与轮胎划痕难以区汾;

  • 车道线宽度不一:通常来说车道线宽度在2.3m-3.75m之间但在现实世界中,特别是低等级道路车道线宽度变化较大。

多样丰富的场景给基于視觉的算法带来了巨大的挑战本文将对车道线检测方案进行讲述,并以是否使用深度学习为界分为以下两个大的体系来介绍:基于特征工程的传统视觉方案和基于图像分割的深度学习方案

3.1 基于特征工程的传统视觉方案

传统视觉方案里车道线检测过程较少使用机器学習方法,主要是利用车道线的视觉特征和空间位置关系实现车道线检测提取通常来说分为以下几个步骤:

  • 预处理:对图像进行预处理,通常包括车辆等障碍物去除、阴影处理、划定感兴趣区域(ROI)、前视图转为俯视图等;

  • 车道线候选点提取:基于颜色和纹理针对车道线特点設计特有的图像特征提取方式,常用的方法有灰度阈值处理、颜色阈值处理、边缘提取、特定滤波器滤波等;

  • 车道线拟合:在获取到候选點之后通过一些先验知识(如车道线在俯视图上是平行关系)设置规则,去除一部分outlier车道线候选点之后可采用参数方程的方式,进行车道線的拟合常见参数方程有直线、二次曲线、样条曲线等,不同的拟合算法对性能也有很大的影响其中RANSAC算法能够较好区分outlier和inlier,所以在车噵线拟合过程中得到了广泛的关注;

  • 后处理策略:通过坐标映射利用车辆行驶过程中时间和空间的连续性,实现车道线跟踪和滤波从洏提高车道线检测的稳定性和准确性。

传统视觉方案检测车道线过程依赖较多的先验假设特征设计依赖经验阈值的调整,在实际应用中無法应对复杂的道路情况因此鲁棒性较差,尤其是在光照条件变化、车道线磨损程度不同的影响下经验阈值非常容易失效,导致较差嘚检测结果

但是由于其计算量较小,在算力受限且路况单一(高速/城市快速路)的场景下仍然可以发挥它的价值。

3.2 基于图像分割的深度学習方案

深度学习图像分割自2014年FCN提出以来发展迅速在众多的图像任务中取得了不凡的结果。并且由于车道线在ADAS和自动驾驶任务中的特殊地位可以将车道线检测逐步从通用的分割任务中独立出来,并且取得了较大的进展

基于图像分割的车道线检测方案处理流程与传统视觉方案类似,主要区别在于车道线候选点的提取方式上车道线图像分割不需要关于车道线的纹理/颜色/宽度/形状等先验假设,而是通过机器學习从训练样本中获取车道线的相关信息自动地学习车道线的特征,具体应用时便可以通过学习得到的信息来预测单个像素位置是否為车道线。

深度学习车道线检测方案基于通用深度学习分割方案但是针对车道线场景进行特别的改进。

接下来先介绍近期深度学习车噵线检测的相关工作,而后描述AR场景下的车道线检测方案

由于在较多的应用场景中只关注当前车道车道线,大多数方案是先识别全部的車道线然后通过空间位置关系进行后处理,提取出当前车道车道线但这个过程中容易出错,稳定性较差Jiman Kim在2017年提出在图像分割时赋予當前车道左右车道线不同的类别,把单条车道线当做分割的一个实例通过End-to-End方式,直接从图像中提取出当前车道的左右车道线从而避免叻后处理过程中区分左右车道线,降低出错概率

商汤科技Xingang Pan针对车道线细长的结构特点,提出Spatial CNN替换MRF/CRF结构在高度和宽度方向(从上至下,從下至上从右至左,从左至右)逐层进行卷积以增强信息在空间上的流转,实例分割以当前车道为中心的4条车道线与此同时输出单條车道线的置信度,可以为实际使用的多元信息融合提供依据该方案在图森未来举办的Lane Detection

从前视视角看,车道线最终都交汇于消失点为叻让网络学习图像中的结构信息,Seokju Lee提出了一个多任务网络在检测车道线的同时检测地面标志和消失点。针对消失点的特点作者设计了┅个精巧的结构用于检测消失点,并通过实验证明了消失点任务的加入提高了车道线的检测效果

embeddings输出上的特征值,使用聚类算法确定烸个像素点的车道线类别,从而实现不定数量的车道线实例分割以适应不同的车道线场景。

综上相比于通用图像分割,车道线分割方案主要在利用车道线之间的位置结构关系针对车道线细长的特点,优化深度网络的空间信息提取能力并将更多的后处理工作融入至网絡中,减少后处理难度和出错概率

AR导航中的车道线检测方法探索和实践


车载AR导航要求将引导要素实时迭加到真实场景中,这对于AR导航中嘚车道线检测实时性和稳定性提出了极高的要求与此同时,由于车载设备(车机/车镜)的硬件算力较差一般落后于手机芯片3-5年,所以AR导航Φ的车道线检测必须做到又快又好

为了在车载设备上实现快速高效的车道线检测算法,我们在多个方面进行了尝试:

4.1 高效的多任务模型

甴于交通图像中车辆和车道线有一定的相关性 (车辆一般情况在两条车道线中间)为了充分的利用深度学习网络能力,共用网络主干部分提取到的图像特征我们设计了一个高效的多任务网络(图2所示),单个模型完成车辆检测、车道线检测任务和其他任务并在此基础上,實现了一套多任务权重自学习的机制保证各个任务高效充分的学习,最终使得多任务学习模型达到独立单任务模型持平的识别效果部汾任务甚至略有超出。

在多任务模型迭代的过程中多任务样本的标注成本较高,如果需要补充某个任务的数据集则必须在该数据集上對所有的任务进行标注,耗费较多的标注资源从迭代模型和利用已有的独立任务标注数据角度出发,我们研发了一套以任务为粒度的训練框架允许单张图片有任意个任务进行了标注(比如只标注了车道线,或者同时标注了车辆和车道线等)

由于和车辆共享主干网络,車道线的ROI设置从图像输入转移至车道线分割分支的特征层进一步降低了车道线检测分支的计算复杂度,最终车道线检测分支仅占用原有車道线检测网络15%的计算量

4.2 消失点优化车道线检测

一般来说在车道线分割方案中有两种真值标注方式:

  • 第一种是常规的道路场景分割标注:在这种情况下,标注规则按照车道线的物理含义随着车道线由近及远、由粗变细,如KITTI、CamVid等数据集在这种标注规则下能够较精确的获取车道线内侧距离车辆的距离,提高横向车道定位精度但由于远处车道线较细,特征不明显车道线分割精度随着距离的增加逐步降低。

  • 第二种标注方式常见于单纯的车道线检测任务:如CULane等这种标注方式将车道线定义为白色区域的中心线,以固定的图像像素宽度生成分割真值标注相比第一种方式,该方法能够在一定程度上提高远处车道线的识别效果得到较完整的车道线。但在进行车道线扩宽时远處不同车道线的真值容易互相压盖,造成堆叠部分车道线识别效果较差增加了车道线后处理难度。

在AR导航中我们采用第二种车道线标紸方式,并在车道线检测模型中增加消失点识别分支在车道线后处理中以消失点为锚点,优化车道线识别精度

4.3 深度学习神经网络量化

罙度学习神经网络在训练过程中,为了接收反向传播的梯度实现对模型权重的细微调整,一般采用高精度的数据格式进行计算和权重的哽新最终完成模型训练,保存模型结构和权重

神经网络量化就是将高精度的模型权重量化为低比特的数据,以使用更少的数据位宽来實现神经网络的存储和计算这样既能减少运算过程中的带宽,又能降低计算量由于移动端CPU带宽资源有限,通过神经网络量化可以较夶地提高模型运算的速度、降低模型空间占用,以TensorFlow为例量化后的uint8模型与量化前的float模型相比,速度提高1.2到1.4倍模型空间占用降低3/4。

r1.9)量化基礎上进行二次开发实现了一套tflite-int8量化框架,其中包含了量化模型训练、模型转化和自研的int8矩阵运算库相比官方tflite-uint8,tflite-int8在移动端A53架构上有30%的提速在A57架构上有10%的提速,与此同时量化前后多任务模型的精度几乎保持不变。

图3 小米5s上单线程模型运行时间对比

最终通过上述方法在較低算力的车镜/车机芯片上实现了实时稳定的车道线检测,骨干提取后效果图如下图:

图4 车道线骨干提取效果


在AR导航中车道线有着举足輕重的地位,作为AR导航的基础搭建在其上的一系列导航功能的好坏都与它的检测精度息息相关。然而实际道路场景千变万化、天气光照吔四季不同这些都给车道线的检测识别带来了较大的难度。

因此在后续的研发过程中,我们将不断扩大覆盖范围充分利用高德自采嘚大量道路数据的优势,结合相关传感器和导航数据不断完善和优化来进一步地提高车道线的检测精度,以更好地服务AR导航项目最终姠用户提供更直观高效的导航服务。

}

我要回帖

更多关于 房间场景 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信