车道线算法合集——各个车道线论文代码地址、算法总结、优劣分析

一、 SCNN

论文地址
torch源码
tf版本

1.1 核心算法

SCNN通过切片的形式,使信息在图像行列中传递,能更有效地学习空间关系,非常有利于细长条物体的分割task。如下图,分别进行down、up、right、left四个方向上的切片叠加。
在这里插入图片描述

以SCNN_D为例,对于三维张量C×H×W,将张量切分成H片。先将第一片送到尺寸为C×W的卷积层,将这片输出与下一片做add操作得到新的一片。接着逐层反复,直到处理完所有slice。作者加了一个线的存在性判断分支,大于0.5认为是线。在prediction heatmap上每隔20行搜索相应值最高的位置,然后通过三次样条函数拟合这些points。

1.2 总结

亮点
(1)公开了新的CULane Dataset

(2)提出了SCNN,将传统的deep layer-by-layer convolutions替换为slice-by-slice convolutions ,这可以使得信息可以在图像的行列之间传递。

(3)将lane detection定义成semantic segmentation的任务,将每一条线通过一个预设的类别去定义,即使省去了LaneNet中cluster这种复杂操作,也可区分出不同线的实例。

局限性
(1)通过线的实例来定义类别会导致必须设一个类别数量的上限值,只能处理车道线条数不大于上限值的情况。

(2)据个人观察,通过线的实例来定义类别,学到的更多是车道线location信息。在应对变道场景、离当前车道两侧较远的线、分割结果不够精确等复杂情况时,会产生不同实例类别的混淆,且实例的混淆会产生扩散效应。

(3)分割采用backbone+SCNN的结构。在paper中backbone选用的是LargeFOV(Deeplabv2),而SCNN能占到整个网络1/3左右的计算量,在实际工程应用中没法达到实时的性能。

二、 LaneNet

论文地址
源码地址

2.1 核心算法

LaneNet将lane detection转化为instance segmentation问题,通过LaneNet网络提取出每条线的实例,再通过HNet输出一个转换矩阵H,将车道线的点坐标通过矩阵H转换后,用最小二乘法拟合,再反向转换到原图中。

2.2 总结

亮点
(1)通过embedding vector与cluster配合使用,能检测不限条数的车道线。
(2)通过HNet学得的perspective transformation,使得lane fitting能够更鲁棒。
缺点
cluster很耗时,实际工程应用上很难满足实时性的要求。

三、 End2end by Least Squares Fitting(CVPR 2019)

论文地址
开源代码

3.1 核心算法

之前的车道线检测方法都是采用分割的思路,找到所有属于同一条车道线实例的mask,再通过曲线拟合的方法去输出车道线。这篇文章的目的就是去探索能否直接去回归每条线的拟合参数,从而实现真正意义上的end to end。

3.2 总结

亮点
将Least-Squares Fitting方法加入到Network中,并利用其可微的性质设计出了area loss实现了back propagation,证明了直接回归拟合参数的可行性,开拓了新的思路。

缺点
(1)只能做固定条数的车道线,文章中提到做少量的车道线效果会更好

(2)拟合结果依赖于上一步的weight maps(即分割)的结果,分割的上限决定了拟合的上限,因此根据拟合参数将线画到原图上并不那么贴合,效果其实不如之前的分割+后处理拟合

(3)文中提到可以尝试用更通用的可微分梯度下降模块取代最小二乘拟合模块。感觉这个方向可以扩展的空间还是很大的。

四、PINet

论文地址
源码地址

文章结合关键点检测与点云实例分割的方法成功实现了新的车道线处理算法,可适用于任意场景、检测任意数量的车道线。结合后处理算法后误检率极低,具有非常强的鲁棒性。由于用的关键点检测方法,相比分割网络而言,模型更小,计算开销也更小。

五、 LaneATT(CVPR 2021 Culane数据集上F1 Score排名第一名)

论文地址
源码地址

5.1 核心算法

输入一幅图像,LaneATT使用Resnet作为特征提取,生成一个特征映射,然后汇集起来提取每个锚的特征。 这些特性与一组由注意力模块产生的全局特征相结合,通过结合局部和全局特征,这在遮挡或没有可见车道标记的情况下可以更容易地使用来自其他车道的信息。最后,将组合特征传递给全连接层,以预测最终的输出车道。

5.1 总结

亮点
(1)提出了一种在大型复杂数据集上比现有最先进的方法更精确的实时车道检测方法;
(2)比其他大多数模型更快,检测速度达到了250FPS;
(3)提出了一种新的基于锚的车道检测注意机制。

可视化结果
在这里插入图片描述
此算法博主也有跑通测试,有兴趣评论区或私信可以交流。

六、SAD

论文地址
源码地址

6.1 核心算法

这篇文章其实提出的是一种语义分割任务的小trick,通过层间的信息流动,使网络可以在深层保留场景的上下文信息。该算法的这一特性刚好匹配车道线检测任务的特点,即车道线长且窄的形态,因此该文在这一应用场景下可以取得不错的效果。

6.2 总结

亮点
(1)提出基于知识蒸馏(Knowledge Distillation)的车道线检测模型SAD,能增强CNN的特征表达能力。由于SAD只参与模型训练,因此不会增加推断时的计算复杂度。
(2)深入调查了SAD的内在机制
(3)尝试把SAD加入多种轻量级车道线检测模型,ENet-SAD可以在多个数据集上取得SOTA效果。

七、车道线相关数据集介绍

可参见博文:车道线数据集

  • 3
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我宿孤栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值