[车道线检测]CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution

原文地址:CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution

Introduction

为了解决complet topologies. 提出了一个top-to-down的框架,先找出大致实例,再预测line shape(对应起来的bottom-to-up方法我理解就是先像素级分类,然后再经过后处理例如聚类等生成一个实例)

基于conditional convolution 和 row-wise formulation。构造了一个Recurrent Instance Module模块克服复杂拓扑结构的实例。

大部分分割方法还是bottom-up的,因此分配实例是一个比较困难的地方,如果直接分类,也可以,不过lanes number是fixed的,显然不够鲁棒(ultra fast)。post-clustering的方法会在dense lines的情况下出现效果下滑。anchor-based方法,lane shape是先验的,有一定限制

How

[车道线检测]CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution_第1张图片

首先引入动态卷积——一种结合动态核参数的卷积操作。动态卷积包含两步:实例检测和实例shape prediction。实例检测首先找到object instance然后回归一组核参,第二步根据每个实例的核参预测shape。不过作者没有直接把动态卷积处理实例分割的方法照搬(用分割方法做shape description,也没有用原始的检测方法。具体原因就是线的自由度比较高,线的视觉特征不明显。)

shape prediction

作者首先介绍了shape prediction部分,也就是上图的最右。作者采用row-wise formulation而不是分割的方法

[车道线检测]CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution_第2张图片

Row-wise location

将输入特征图分为小box,然后输出一张location map。对每一行上进行X个分类,在推理阶段,对location map每一行上进行softmax,作为是line中一个点的概率。进一步细化具体位置,最终的位置是 E ( x ^ i ) = ∑ j × p i j E(\hat{x}_i) = \sum j\times p_{ij} E(x^i)=j×pij, 表示第i行的坐标点由每一个cell的横坐标乘它的概率。这部分的损失是:
L r o w = 1 N v ∑ i ∈ V ∣ E ( x ^ i ) − x i ∣ L_{row} = \frac{1}{N_v}\sum_{i\in V}|E(\hat{x}_i) - x_i| Lrow=Nv1iVE(x^i)xi
V表示groundtruth对应包含了哪几行

vertical range

需要判断哪些行是有效行。这里用ce对每行进行一个分类,每一行的feature map作为输入,经过线性层。
L r a n g e = ∑ i ( − y g t i l o g ( v i ) − ( 1 − y g t i ) l o g ( 1 − v i ) ) L_{range} = \sum_i(-y_{gt}^ilog(v_i) - (1-y_{gt}^i)log(1-v_i)) Lrange=i(ygtilog(vi)(1ygti)log(1vi))

offset map

因为cell的x坐标是cell的左边,没有特别准确,因此可以用一个offset map来预测具体的位置。
L o f f s e t = 1 N Ω ∑ ∣ δ ^ i j − δ i j ∣ L_{offset} = \frac{1}{N_\Omega}\sum|\hat{\delta}_{ij} - \delta_{ij}| Loffset=NΩ1δ^ijδij
模型预测的最终结果:

[车道线检测]CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution_第3张图片

Instance Detection

传统的instance segmentaion任务中的instance detection是预测物体的中心,但是line比较难,因此预测start point。这里基于centernet 生成一个heatmap,peak作为预测起始点,采用centernet 里的 gaussian focal loss。动态卷积所用到的核参,参考CondInst生成一个parameter map

Recurrent Instance Module

由于多条线可能有相同的proposal point,例如fork lines,提出了一个循环实例模块。

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