车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022

分享一篇今年CVPR车道线检测方向的新工作——CLRNet: Cross Layer Refinement Network for Lane Detection,是自动驾驶创业公司飞布科技和浙江大学合作完成的,代码已经开源。关于车道线检测任务,小汤之前也分享过几篇文章:

相关链接(点击进入):

车道线检测综述及近期新工作
https://blog.csdn.net/qq_41590635/article/details/117386286

车道线检测新工作VIL-100: A New Dataset and A Baseline Model for Video Instance Lane Detection ICCV2021
https://blog.csdn.net/qq_41590635/article/details/120335328

CVPR2022车道线检测Efficient Lane Detection via Curve Modeling
https://blog.csdn.net/qq_41590635/article/details/124144880?spm=1001.2014.3001.5501

CVPR2022车道线检测SOTA工作CLRNet在Tusimple数据集测试demo,助力自动驾驶早日落地
https://blog.csdn.net/qq_41590635/article/details/124903793

端到端的多任务感知网络HybridNet,性能优于YOLOP
https://blog.csdn.net/qq_41590635/article/details/125070914

车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第1张图片

论文链接:

https://arxiv.org/pdf/2203.10350.pdf

代码链接:

https://github.com/Turoad/CLRNet

简介

车道线检测是无人驾驶系统感知模块的重要功能,主要由搭载在车身上的视觉摄像头来完成,感知结果常用来进行辅助定位。对于车道线检测任务,CNN网络的高层次语义信息具有较强的抽象表达能力,可以更加准确判别是否为车道线。而低层次特征中包含较为丰富的纹理信息,可以帮助车道线进行精确定位。使用不同的特征级别对于准确的车道检测非常重要,但这方面的研究仍然不足。

并且在港口、城市道路等真实场景中,车道线经常存在破损、被遮挡等情况。

为此,文章提出了跨层优化网络(CLRNet),首先检测具有高级语义特征的车道,然后基于低级特征进行细化,充分利用车道检测中的高级和低级特征。提出了ROIGather来收集全局上下文信息,进一步增强了车道的特征表示。此外,设计了整体维度的Lane IoU loss来约束整体车道线的回归精度。
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第2张图片
Illustrations of hard cases for lane detection

如上图所示,车道线检测任务中常常存在被遮挡、光照等各种困难场景。其中,a)车道线与landmark存在干扰歧义;b)车道线的偏移量回归不准确,导致在上采样的过程中存在偏移;c) 和 d) 由于遮挡、光照条件、车道线磨损等情况导致车道检测困难;

针对上述场景的问题,a)、c)、d)可以通过高层次的语义信息进行解决,而b) 中的细节信息可以通过使用低层次信息进行细致优化。

CLRNet正是通过完善使用高层次和低层次跨层优化与优势互补实现车道线的高精度定位,在车道线检测基准数据集LLAMAS、TuSimple和CULane数据集上取得了新的SOTA表现。

车道线检测相关工作

当前的基于CNN的车道线检测方案主要分为以下三类:基于分割的车道线检测、基于anchor的车道线检测、基于曲线参数化拟合的车道线检测

  • Segmentation-based methods

基于分割的方案由于需要在整张图上进行逐像素的预测且没有将车道线当做一个完整单元,所以往往比较ineffective and time-consuming。

  • Anchor-based methods

基于anchor的方案中,在一些复杂场景中的起点很难识别,这造成相对欠佳的性能表现。

  • Parameter-based methods

基于参数化拟合的方案虽然回归更少的参数,但对于预测的参数较为敏感,如高阶系数的错误预测可能造成车道线形状的变化。尽管基于参数化的方案有更快的推理速度,但在精度上有一定的瓶颈。

The Proposed Architecture

车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第3张图片

对于输入的RGB图像,CLRNet通过一个FPN网络去提取图像特征,随后在每个特征stage上去优化车道线的回归结果,而当前stage的回归结果会被下一阶段的跨层细致优化所采用,从而实现车道线的级联优化。

车道线建模

本文的车道线建模是采用的点集的形式:
在这里插入图片描述
其中,纵坐标y是在Y轴上进行均匀采样的形式:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第4张图片

其中,H为图片的高度,文章中N=72,表示将输入图片在高度上进行72等分,当然这里的N可是改变。

此外,加上车道线与X轴的夹角 θ(初始化时可通过数据分析确定),便得到了文章提出的 Lane Prior(类似于anchor box)。

因为,网络最后回归的参数包含4个部分:

是否为车道线的类别概率;

车道线的长度;

车道线的起始点坐标 (x, y) 和车道线prior与X轴的夹角 θ;

与划分点数量N相对应的位置回归量;

ROIGather

在给定Lane Prior(会根据回归所在的不同stage,θ会相应变化)下参考RoIAlign操作使用双线性差值的方式在Lane Prior上均匀采样得到 Np=36个采样点,采样点的集合为:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第5张图片
同时,对应stage的特征会经过维度变换得到Xf:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第6张图片
将Xf与采样点集合进行attention权重计算(获取上下文信息):
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第7张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第8张图片

Overall Loss

Line IoU loss
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第9张图片
借鉴目标检测和语义分割任务中的IoU计算方式,CLRNet对车道线预测在row-wise进行IoU扩展。也就是计算在一定列范围内的重叠度,示意图如上图所示,具体计算公式如下:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第10张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第11张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第12张图片

其中,e为lane segment左右延伸的半径。

Positive samples selection

训练过程中,每一个lane ground truth对应好多个预测结果,文中通过计算几何相似度和分类成本进行匹配,其匹配成本为:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第13张图片
其中,结构相似性是车道线起始点差异、车道线角度差异、车道线上采样点平均距离差异的结合。

最后,总损失由是由3个损失函数组合得到,如下所示。同时,和其他几篇工作一样,可以在训练的时候增加一个额外的二值分割loss,这个是可选的。
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第14张图片

Experiments

车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第15张图片
Results on test set of CULane
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第16张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第17张图片

ablation studies
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第18张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第19张图片

可视化示例:
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第20张图片

文章给出的是效果比较好的结果,但是在匝道、大拐弯、十字路口、复杂场景等场景效果还是存在一定问题,感兴趣的朋友可以自己跑一下代码看看。

车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第21张图片

车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第22张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第23张图片
车道线检测新SOTA CLRNet: Cross Layer Refinement Network for Lane Detection CVPR2022_第24张图片

视频demo(自己训练的模型测试):

CVPR2022车道线检测SOTA工作CLRNet在Tusimple数据集测试demo,助力自动驾驶早日落地
https://blog.csdn.net/qq_41590635/article/details/124903793

最后,由于自己对车道线看的不多,写作能力也有限,有不对的地方欢迎大家批评指正,也参考了一些网络资料,表示感谢。

你可能感兴趣的:(计算机视觉,自动驾驶,深度学习,自动驾驶,计算机视觉,深度学习,车道线检测,目标检测)