端到端实现高精地图重建(TopoNet解读和横评)

news2024/11/15 15:31:12

论文出处

[2304.05277] Graph-based Topology Reasoning for Driving Scenes (arxiv.org)https://arxiv.org/abs/2304.05277

TopoNet

TopoNet的目标是从车辆上安装的多视角摄像头获取图像,感知实体并推理出驾驶场景的拓扑关系,实现端到端预测,下图是TopoNet的整体设计

765443d2ecb9448c8a85fce4f6259480.png

模块解读

  1. 特征编码:多视角图片作为输入,特征提取器生成多尺度的图像特征,单独提取前视图特征。然后通过view transformerm模块生成BEV特征。前视图特征和BEV特征在后面被分成两个分支来做处理,因为在前视图中更容易学习到交通元素的特征在BEV中不容易学习,而在BEV空间中更容易学习中心线的特征

  2. 可变注意力解码:这里设计了是多层的解码器堆叠,两个特征分别传入两个都是基于可变注意力的decoder,前视图特征做Q查询是学习交通元素的信息,而BEV特征Q查询是为了学习中心线的中心线。

  3. SGNN模块:

    1. 因为在透视图中的交通要素的位置特征很难利用,但是语义特征很重要,所以先利用嵌入网络来提取交通元素的语义信息,然后转换为统一的特征空间和中心线匹配。

    2. 分别构建两个有向图来传播特征(直接构建一个全连接图计算成本高,会学习到非必要的信息),一个用于车道图估计Gll,一个代表交通要素分配Glt。分别对两个图做GNN学习。因为Ql和Qt代表不同的查询对象,语义有差异,引入适配器层组合信息增益R,流程如下图。(融合学习信息的操作,生成下一级decoder的查询Q)f964f51e88a7401e98c7e69b606792ea.png

    3. 在一个场景知识图中,不同类别的交通要素的权重矩阵是独立的,会为不同走向的车道带来不同的信息。所以接下来是用了一个改造过的图卷积网络GCN(被拆分成了两块),查询交通要素聚合信息。7adf5585b9584fc7902074267e0e2294.png

          这是一个在场景知识图上更新查询LC1的例子。计算过程:中心线部分根据学习权重矩阵的情况结合前向和后向的权重去计算(因为车道的结构是彼此依赖的,车道位置信息可以很好指示邻居的信息),每个节点的新特征都是受到它的邻居影响的。而交通要素之间的特征更新是特征查询和特征类别做矩阵乘法更新

  4. 检测头部分:模型对应出三个检测头,直接交通元素decoder产生的检测头做用于检测指示牌,信号灯等,而根据SGNN得到的检测头可分为拓扑关系检测头和中心线的洁厕头,拓扑关系的检测头是交通元素和中心线共同作用的结果

损失函数

模型中用到了多种损失函数,匈牙利算法生成真实值和预测值之间的匹配

交通要素:Focal loss分类损失,L1 loss回归损失 ,IOU loss位置损失

中心线:Focal loss分类损失,L1 loss回归损失

其他三种技术

STSU

论文出处:

[2203.17270] BEVFormer: Learning Bird's-Eye-View Representation from Multi-Camera Images via Spatiotemporal Transformers (arxiv.org)https://arxiv.org/abs/2203.17270

遵循 DETR 的做法,使用稀疏查询进行对象检测。STSU也是使用两组查询向量,一组用于中心线,一组用于交通对象元素。他的transformer有两个分支,车道分支和目标分支。

车道分支:检测头预测是否存在由某个查询向量编码的车道,控制头预测 R 贝塞尔曲线 控制点的位置,关联头预测用于聚类的嵌入向量,关联分类器判断关联性。贝塞尔曲线非常适合中心线,可以使用固定数量的 2D 点对任意长度的曲线进行建模

目标分支:处理transformer的提议,包含检测头, MLP + sigmoid 层,后处理网络:将实例转换为语义分割0cffa9a5299e413cab69eb31aafe3664.png

VectorMapNet

论文出处:[2206.08920] VectorMapNet: End-to-end Vectorized HD Map Learning (arxiv.org)https://arxiv.org/abs/2206.08920

用矢量来构建高精度语义地图,设计思路是将该问题构建为稀疏点集预测问题,每个语义元素由N_v个有序二维点列构成的折线表示。

主要由三部分组成:BEV特征提取、地图元素检测:利用transformer的decoder,polyline生成:基于BEV特征。预测头是一个分类分支和一个回归分支。2e8fddd9f9ab454ca208844978716200.png

MapTR

论文出处: 

[2208.14437] MapTR: Structured Modeling and Learning for Online Vectorized HD Map Construction (arxiv.org)https://arxiv.org/abs/2208.14437

MapTR是一个基于排列的HD Map构造方法,它将每个地图元素视为有着一组等价排列方式的点集。封闭形状被描绘为多边形polygon,开放形状被描绘为线段polyline,通过这样的方式避免地图元素定义上的歧义。

具体工作流程是先做2D to BEV的encoder,得到BEV特征,然后用transformer的decoder,其中query查询的就是点集特征,最后是分类头和预测头输出。3c4a0bd3b30f47bbb0741c8258ab6c46.png

 

TopoNet会表现出优势的原因

其实这些模型的构建思路都很相似,区别在于他们对问题做了不同的抽象,把模型学习特征要素的表示方式不一样,STSU是贝塞尔曲线,VectorMapNet是矢量集合来表示,MapTR就更加精细一点,提出了等价排列点集的思路。

TopoNet的优势在于作者思考后把问题转化到了图的拓扑关系问题。作者设计了模型专门学习图的拓扑关系,利用了可变注意力和图神经网络区学习。学习到了节点之间的邻接关系,中心线和交通要素间的关系。

还有就是对交通要素和中心线先是分别提取特征学习,然后再融合更新查询矩阵Q这个思路和STSU相似,看起来也很有效。交通要素头和中心线预测头都很好学习到了自身的特征。拓扑关系预测头则是两者的融合,这个设计也很巧妙,是前面分别做特征提取和decoder的思路延续。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1430951.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2017年苏州大学837复试机试C/C++

2017年苏州大学复试机试 要求 要求用C/C编程;对程序中必要的地方进行注释。上机规则 请在电脑桌面上新建一个文件夹文件夹名为考试姓名(中文);考试完毕后,将所编写的文件放在上述文件中。 第一题(20分&…

Node.js-1

Node.js 简介 定义:Node.js 是一个跨平台 JavaScript 运行环境,使开发者可以搭建服务器端的 JavaScript 应用程序 为什么 Node.js 能执行 JS 代码: Chrome 浏览器能执行 JS 代码,依靠的是内核中的 V8引擎(即&#x…

react 使用react-seamless-scroll实现无缝滚动

文章目录 1. 实现无缝滚动效果2. react-seamless-scroll 无缝滚动案例介绍3. react 项目集成3.1 项目引入 cssSeamlessScroll 滚动组件3.2 完整代码3.2.1 newBet.tsx 代码3.2.2 index.module.scss 1. 实现无缝滚动效果 实现单步向下滚动点击更多展开,收起&#xff0…

[Angular 基础] - Angular 渲染过程 组件的创建

[Angular 基础] - Angular 渲染过程 & 组件的创建 之前的笔记为了推进度写的太笼统了(只有功能没有其他),当时学的时候知道是什么东西,但是学完后重新复习发现有些内容就记不清了,所以重新用自己的语言总结一下 …

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--强化学习、模仿学习、机器人

专属领域论文订阅 关注{晓理紫},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 如果你感觉对你有所帮助,请关注我,每日准时为你推送最新论文。 为了答谢各位网友的支持,从今日起免费为3…

基于YOLOv8算法的照片角度分类项目实践

目录 一、任务概述二、YOLOv8算法简介2.1 算法改进2.2 算法特点2.3 网络结构2.4 性能比较 三、工程实践3.1 安装算法框架库ultralytics3.2 库存照片预处理3.2.1 提取所有图片3.2.2 去除冗余的相同照片3.2.3 去除无车辆照片3.2.4 随机提取指定数量的图片 3.3 照片朝向分类3.3.1 …

项目02《游戏-06-开发》Unity3D

基于 项目02《游戏-05-开发》Unity3D , 接下来做 背包系统的 存储框架 , 首先了解静态数据 与 动态数据,静态代表不变的数据,比如下图武器Icon, 其中,武器的名称,描述&#xff…

宠物空气净化器哪个牌子好?除猫毛好的猫用空气净化器牌子推荐

大家都知道,宠物掉毛的情况有多么严重。特别是在换毛的季节,简直就是毛发遍地飞。这给家里有小孩和老人的人带来了很多困扰,他们可能会流鼻涕、过敏等等。而且,宠物有时候也会随地大小便,那个味道真的很难闻。家里的人…

【揭秘】JMeter JDBC脚本实战,让你的性能测试更高效!

Jmeter使用jdbc的场景: 1、接口功能测试时,需要查询验证码 2、通过数据库查询已经注册的手机号码 3、性能测试时,直接对某个SQL做性能测试,快速的发现性能问题 添加一个jdbc的配置元件 配置jdbc连接信息 配置说明: 1…

如何看待敏捷

局部清晰,循序渐进,整体清晰增量型 考试要么预测(传统,瀑布),要么敏捷,要么就用混合方法 项目生命周期两种:预测型、敏捷型 开发生命周期四种:预测型、迭代型、增量型、…

JVM工作原理与实战(三十四):解决GC问题的方法

专栏导航 JVM工作原理与实战 RabbitMQ入门指南 从零开始了解大数据 目录 专栏导航 前言 一、常见的垃圾回收(GC)模式 二、解决GC问题的方法 1.优化基础JVM参数 2.更换垃圾回收器 3.优化垃圾回收器的参数 总结 前言 JVM作为Java程序的运行环境&a…

龙龙送外卖pta[代码+讲解]

题目 题解 代码 题目 龙龙是“饱了呀”外卖软件的注册骑手,负责送帕特小区的外卖。帕特小区的构造非常特别,都是双向道路且没有构成环 —— 你可以简单地认为小区的路构成了一棵树,根结点是外卖站,树上的结点就是要送餐的地址…

钓鱼攻击:深度解析与防范策略

一、引言 在当今的网络世界中,钓鱼攻击已经成为一种日益猖獗的威胁。这种攻击方式利用电子邮件、社交媒体或其他在线平台,伪装成可信赖的来源,诱导受害者点击恶意链接或下载恶意附件,进而窃取个人信息或实施其他恶意行为。本文将…

关于Clone

关于Clone 一般情况下,如果使用clone()方法,则需满足以下条件。 1、对任何对象o,都有o.clone() ! o。换言之,克隆对象与原型对象不是同一个对象。 2、对任何对象o,都有o.clone().getClass() o.getClass()。换言之&a…

VC++中使用OpenCV绘制直线、矩形、圆和文字

VC中使用OpenCV绘制直线、矩形、圆和文字 在VC中使用OpenCV绘制直线、矩形、圆和文字非常简单,分别使用OpenCV中的line、rectangle、circle、putText这四个函数即可。具体可以参考OpenCV官方文档:https://docs.opencv.org/4.x/index.html 下面的代码展…

9、C语言复习

目录 1、位操作 2、define宏定义关键词 3、ifdef条件编译 4、extern变量申明 5、typedef类别别名 6、结构体 7、static关键字 1、位操作 &&#xff1a;按位与 |&#xff1a;按位或 ^&#xff1a;按位异或 ~&#xff1a;取反 <<&#xff1a;左移 >>…

JAVA Web 学习(四)RabbitMQ、Zookeeper

十、消息队列服务器——RabbitMQ RabbitMQ是使用Erlang语言开发的开源消息队列系统&#xff0c;基于AMQP协议来实现。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、 安全。AMQP协议更多用在企业系统内&#xff0c;对数据一致性、稳定性和可靠性要求…

会声会影2024破解版如何下载?

要下载会声会影2024&#xff0c;您可以按照以下步骤进行操作&#xff1a; 会声会影2024安装包下载如下: https://wm.makeding.com/iclk/?zoneid55677 1. 访问会声会影官方网站&#xff1a;在您的网络浏览器中&#xff0c;输入"会声会影2024官方网站"进行搜索&…

前后端数据校验

前端校验内容 前端开发中的必要校验&#xff0c;可以保证用户输入的数据的准确性、合法性和安全性。同时&#xff0c;这些校验也有助于提供良好的用户体验和防止不必要的错误提交到后端。 1、必填字段校验&#xff1a; 对于必填的字段&#xff0c;需确保用户输入了有效的数据…

图论练习1

内容&#xff1a;&#xff0c;拆点&#xff0c;分层&#xff0c;传递&#xff0c;带限制的最小生成树 [HNOI2015]菜肴制作 题目链接 题目大意 有个限制&#xff0c;号菜肴在号前完成在满足限制的条件下&#xff0c;按照出菜( 是为了满足的限制 ) 解题思路 由限制&#xf…