PivotNet:Vectorized Pivot Learning for End-to-end HD Map Construction

文章介绍了一种改进的MapTR算法,通过预测车道线的关键点来解决原有模型对复杂道路和简单道路适应性不足的问题。方法包括修改车道线查询、增强拓扑感知和提出动态规划匹配算法。实验结果展示了算法在车道线建模方面的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考代码:BeMapNet。PS:代码暂未放出,关注该仓库动态

动机和主要贡献
在MapTR系列的算法中将单个车道线建模为固定数量的有序点集(对应下图Evenly-based),这样的方式对于普通道路场景具备一定适应性。但是却存在对复杂道路建模能力不足,对简单道路建模冗余的问题,针对这样的问题解决思路便是网络依据车道线具体情况预测关键点(对应下图Pivot-based),也就是像下图这样使用关键点描述车道线元素:
在这里插入图片描述
为了使得网络能够依据具体场景动态输出车道线关键点数量,文章做了以下几个方面的工作:

  • 1)对laneline的query做了修改,使用对每个关键点(point-query)采用学习的方式,这样可以使的点与点之间表达可以独立,这样更有利于这样动态点的表示
  • 2)将lane-query和bev下的车道线分割建立关联,使得网络对车道线拓扑结构感知更清晰,同时收敛速度变快
  • 3)对于关键点匹配提出一种代价最小化动态规划算法,加快匹配速度

方案流程与框图
在这里插入图片描述
从上图的框图可以看到算法分为如下几个部分:

  • 1)BEV query构建BEV特征
  • 2)按照点建模的方式构建车道线表达,并通过mlp获得车道线实例表征,之后通过矩阵乘法得到车道线分割结果,这样车道线具有了对位置和车道结构感知能力
  • 3)使用提出的动态匹配算法建立预测和真值之间的关联,实现车道线预测

车道数据预处理
在数据预处理中,需要对车道线中的关键点进行抽取,如下图所示:
在这里插入图片描述
对这样的问题可以采用距离阈值类的方法实现,如Douglas-Peuker。

车道线实例化表达
在初始的时候使用一堆点的方式构建车道线query,它的维度是 Q m , n ∈ R M ∗ N ∗ C Q_{m,n}\in R^{M*N*C} Qm,nRMNC,其中 M , N M,N M,N分别代表车道实例数和车道线线上最大点数。注意由于每条车道线中关键点的位置是不一致的,则使用share方式构建的point-query会存在一定歧义(也就是文中说的Hierarchical Query),这种share方式构建的index-dependent,而对于动态预测车道线关键点则需要index-independent。它们两者的对车道线的建模方式对比见下图:
在这里插入图片描述

自然在文章算法所需要的场景下这两种建模方式的性能比较:
在这里插入图片描述

query确定之后,其经过几层全联接得到车道线的表达 I m ∈ R C I_m\in R^C ImRC,再与BEV特征 F b ∈ R C ∗ H ∗ W F_b\in R^{C*H*W} FbRCHW做矩阵乘法得到分割结果 M m ∈ R H ∗ W \mathcal{M}_m\in R^{H*W} MmRHW,也就是下图表述的过程:
在这里插入图片描述
这里涉及到分割损失:
L L A = L b c e ( M ^ l i n e , M l i n e ) + L d i c e ( M ^ l i n e , M l i n e ) \mathcal{L}_{LA}=L_{bce}(\hat{M}_{line}, M_{line})+L_{dice}(\hat{M}_{line}, M_{line}) LLA=L

### 结构化建模与学习方法用于在线矢量化高清地图构建 对于MAPTR系统的在线矢量化高清地图构建,结构化建模和学习方法主要涉及数据收集、特征提取以及模型训练等多个方面。这些过程旨在提高地图更新的速度和准确性。 #### 数据收集与预处理 为了实现高效的在线矢量化高清地图构建,系统需要持续获取来自多个传感器的数据流,包括但不限于激光雷达(LiDAR)、摄像头和其他环境感知设备。通过融合多源异构传感信息,可以增强对周围环境的理解能力[^1]。 ```python import numpy as np def preprocess_sensor_data(sensor_inputs): """Preprocess raw sensor inputs.""" processed_data = [] for data in sensor_inputs: cleaned = clean_noise(data) normalized = normalize(cleaned) processed_data.append(normalized) return np.array(processed_data) def clean_noise(raw_data): pass def normalize(data): mean_val = np.mean(data, axis=0) std_dev = np.std(data, axis=0) norm_data = (data - mean_val) / std_dev return norm_data ``` #### 特征表示与选择 在完成初步的数据清洗之后,下一步是对采集到的信息进行有效的特征表达。这通常涉及到几何形状描述子的选择及其参数优化等问题。例如,在道路边缘检测任务中,Hough变换能够很好地捕捉直线段;而对于更复杂的场景,则可能需要用到卷积神经网络(CNNs)来自动抽取高层次的空间模式。 #### 模型架构设计 针对特定应用场景下的需求特点,合理搭建适合于该类问题求解的人工智能框架至关重要。考虑到实时性和鲁棒性的双重考量,一种常见的做法是采用轻量级的目标检测算法作为基础组件,并在此之上叠加专门定制化的模块以适应具体业务逻辑的要求。比如YOLOv5因其快速推理速度而被广泛应用于移动平台上的物体识别任务当中。 #### 训练策略制定 最后但同样重要的是如何有效地指导整个机器学习流程朝着预期方向发展。除了常规意义上的超参调优之外,还可以引入迁移学习机制充分利用已有领域内积累的知识资源加速新模型收敛进程;另外就是强化学习技术的应用可以帮助探索未知空间内的最优决策路径从而进一步提升性能表现水平。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值