车道线检测网络-LaneNet(论文简述)

摘要

无论是辅助驾驶还是自动驾驶,车道线识别都是非常重要的。以前的算法需要很多人工的操作或者无法很好的适应不同的车道线场景。本文主要是使用semantic segmentation的方式来对车道线进行划分,可以适应变化的车道环境,并且速度可以达到50FPS。

一介绍

现在的自动驾驶主要集中在计算机视觉和机器人领域的研究,还处于学术和工业水平,并没有大众化使用。研究的目的就是希望通过各种sensor和控制模块来完全明白汽车周围的环境。基于摄像头的车道线检测就是很重要的一步,能够知道汽车所在的车道位置。对车道偏移检测和轨迹规划都很重要。所以基于摄像头的车道线事实检测是实现自动驾驶中很重要的一个点。传统的车道线识别方法需要使用精心设计的特征来识别车道,然后结合霍夫变换和卡尔曼过滤器。识别出车道后还需要使用后处理的技术过滤识别错误的部分,将分割的组合并起来做为最后的车道。事实上这些传统不能很好的适应多样变化的道路情况。

最近的一些算法开始摈弃手工设计feature的检测器而使用上了深度学习的算法去预测车道,比如基于像素的车道分割。但是论文[11]和[19]的算法中只有路面状况复杂的时候才会使用CNN做图片增强。而论文[16][13][22][21]尤其是[16]可以估计出车道哪怕没有车道标记,但是在识别出车道的基础上,我们还需要将不同车道划分为不同实例。

为了解决这个问题,有些算法比如[19][12]依据几何性质进行后处理,但是这种处理比较消耗计算量并且对路面变化不太鲁棒。另外一种方法[20]直接将车道分成不同的实例分割问题,这种算法可以端到端训练,把不同车道分成不同实例,但是必须预先确定车道数量,不同适应不同车道数量的情况。

在这篇文章里面,超越了上面提到的限制,把车道检测问题转化成了实例分割问题,每一条车道都属于自己的车道类别。作者设计了一个多任务的网络,一个车道分割分支和一个车道嵌入分支,可以进行端到端的训练。车道分割分支的输出是两类,背景或者车道,车道嵌入分支进一步将分割出来的车道像素划分为不同的车道实例。通过把车道识别的问题转化为两个任务,我们可以完全利用车道分割分支的强大能力,而不用将不同的类直接分配给不同的车道,取而代之的是使用车道嵌入分支,通过聚类的损失函数为每个pixel分配一个车道id并且可以忽略属于背景的pixel,因此可以处理不同车道数量的问题。

知道每个pixel属于哪个车道后,最后一个步骤,将每一个车道实例转化为参数化描述,最后使用在论文中广泛使用的曲线拟合算法。常见的曲线拟合算法有cubic polynomials [32], [25], splines [1] or clothoids [10]。为了在保证计算效率的情况下提升拟合质量,一般会把图片转换为鸟瞰图的形式并且在它的基础上进行曲线拟合。在鸟瞰图的模式下拟合的曲线可以通过矩阵转换到原始图片上。转换矩阵基于一张图片计算并且保持固定,但是如果地平面发生变化这个转换矩阵就不再有效。车道靠近地平线的点可以投射到无限远,以负面方式影响线条拟合。

为了解决这个问题,我们还是在曲线拟合之前进行图像视野转换,但是与以前固定的转换矩阵不一样,我们使用神经网络训练输出转换系数。这个神经网络以图片作为输入,使用loss函数进行优化车道拟合问题。这样可以根据路面平面的变化进行自动适应,可以更好的拟合车道。下图是一个示意图

从上图可以看出LaneNet这边有两个分支,一个是车道分割,一个是车道嵌入,另一边还有一个Hnet用来预测转换视图的矩阵。

总结这篇文章的贡献有两点:

  1. 使用分支的多任务架构,车道分割分支+车道嵌入分支
  2. 使用网络预测图片和视图的变换参数,可以更好的适应路面变化,比如上下坡

二方法

本文是针对车道分割问题而设计的可以端到端训练的神经网络,主要为了解决之前的算法不能自动适应车道数量的变化的情况。实现的方法就是把车道检测问题看成实例分割问题来解决。这部分的网络叫做LaneNet,结合了车道实例二分割和聚类方法进行一次性实例分割,LaneNet的输出是每个车道pixel分配了车道ID。第II-A节会详细介绍。

在LaneNet输出每个车道的像素集合后,我们还需要通过这些像素拟合曲线才能获得最终信息。 通常,车道像素会投射到“鸟瞰图”使用固定变换矩阵。 但是,由于这一事实对于所有图像,转换参数是固定的,这引起了遇到非平坦地平面时的问题,例如 在
连续下坡。 为了缓解这个问题,作者训练了一个网络叫做H-Net,估计“理想”的参数变换,以输入图像为条件。这种转变不一定是典型的“鸟瞰”视图”。 相反,它是车道可以进行的转换最佳拟合低阶多项式。 第II-B节会详细介绍。

A.LANENET

上图是lanenet的网络模型,可以看到是两个分支加一个聚类。

二分分割

是上图的分割分支,训练后输出是一个二分分割图,表明pixel是背景还是车道。将标记的gt中每个车道的点连接起来形成每条车道线,需要注意在标记这些车道线的时候如果遇到了汽车等物体遮挡也应该通过遮挡物,这样训练出来的网络可以学会对这当初进行车道线预测。分割网络使用标准的crossentropy,但是正负样本非常不平衡&

  • 8
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值