文章目录
前言
算法名称:Ultra-Fast-Lane-Detection
论文地址:https://arxiv.org/abs/2004.11757
开源代码:https://gitcode.net/mirrors/cfzd/Ultra-Fast-Lane-Detection?utm_source=csdn_github_accelerator
一、 算法介绍
1.车道检测现状和难点
1.现状
对于车道线检测任务,目前主流的两种方法有:
• 传统图像处理的方法
• 深度分割的方法
早期已有很多基于传统图像处理实现的车道线检测算法,但随着大家研究的深入,车道线检测任务所应对的场景越来越多样化,逐步已经脱离了对于“白、黄色线条”这种低阶理解。
目前更多的方式是寻求对于语义上车道线存在位置的检测。深度分割方法自然比传统的图像处理方法具有更强的语义表示能力,所以现代车道线检测最主要的方法是将其视为像素级分割的问题。但深度分割处理车道线检测也具有一定的局限性。
2.局限性
速度慢
因为分割是逐像素分类的,要对图像中每一个像素点进行分类。为了分割车道线要进行非常密集的计算,导致的结果就是速度比较慢。
局部感受野
分割的另一个问题是感受野问题。因为分割一般是全卷积得到分割结果,而卷积基本上是比较局部的,所以每个像素的感受野有限。在其他分割问题中可能问题不大,但在车道线检测中,问题就很大了。
3.难点
为什么局部感受野的问题对于车道线检测任务中,影响较大呢?这也是目前车道线检测的一大难点。因为车道线检测目前的一大难点就是寻找语义上的线,而不是局限于表观存在的线。如下图所示:

图中车道线受光照影响和周围车辆的遮挡,已经完全识别不出车道线所在位置。而在这种严重遮挡和极端光照条件下,车道线识别主要是基于背景信息和全局信息。故对于上图这种语义线的检测,需要对全局有很好的感知才能实现良好的定位。也就是需要我们对车道线有更高级别的语义分析。
2.超快速车道线检测算法
1.算法结构

蓝线上是辅助分支,蓝线下是主要分支。特征提取器显示在蓝框中,分类预测显示在绿色框中,辅助分割任务显示在橙色框中。
需要注意的是,为了获取全局的上下文信息,作者在网络训练过程中加入了一个语义分割的分支,从而实现全局和局部信息的聚合,在测试阶段删除。这样,即使我们增加了额外的分割任务,该算法的运行速度也不会受到影响。
最终的total loss是:

2.算法定义
将车道线检测定义为寻找车道线在图中某些行位置的集合,即基于行方向上的位置选择、分类。如下图所示:

anchors我们称之为行锚,它是预定的行位置,在每个行锚上,位置被划分为许多单元格。车道线检测就被描述为在预定义的行锚上选择某些单元格。
3. 创新点
为了解决深度分割的两个问题,也为了简单建模车道线,提出了一个全新的车道线检测算法。该论文的创新点:
1.增加先验条件,增加几何约束
利用车道线先验,设计structural loss给网络输出增加几何约束,解决上面提到的问题
首先,我们要明确对于没有视觉线索的问题就是意味着在目标位置没有信息。如下图所示:

从图中我们可以看出,一条车道被一辆车挡住了,但该算法仍然可以通过其他车道、道路形状甚至汽车方向的信息确定该车道的位置。所以解决无视觉线索问题的关键就是利用其他地点的信息。
本论文通过两个角度去解释该算法是如何解决“没有视觉线索”这个问题的。
• 感受野的角度
由于该算法不是分割的全卷积形式,是一般的基于全连接层的分类,所以它使用的特征是全局特征。所以,该方法在检测某一行的车道线位置时,感受野就是全图大小。那么来自图像其他位置的上下文信息可以用来解决无视觉线索的问题。
• 学习的角度
使用平滑性和刚性
2万+




被折叠的 条评论
为什么被折叠?



