端到端实现高精地图重建(TopoNet解读和横评)
论文出处
[2304.05277] Graph-based Topology Reasoning for Driving Scenes (arxiv.org)
https://arxiv.org/abs/2304.05277
TopoNet
TopoNet的目标是从车辆上安装的多视角摄像头获取图像,感知实体并推理出驾驶场景的拓扑关系,实现端到端预测,下图是TopoNet的整体设计

模块解读
-
特征编码:多视角图片作为输入,特征提取器生成多尺度的图像特征,单独提取前视图特征。然后通过view transformerm模块生成BEV特征。前视图特征和BEV特征在后面被分成两个分支来做处理,因为在前视图中更容易学习到交通元素的特征在BEV中不容易学习,而在BEV空间中更容易学习中心线的特征
-
可变注意力解码:这里设计了是多层的解码器堆叠,两个特征分别传入两个都是基于可变注意力的decoder,前视图特征做Q查询是学习交通元素的信息,而BEV特征Q查询是为了学习中心线的中心线。
-
SGNN模块:
-
因为在透视图中的交通要素的位置特征很难利用,但是语义特征很重要,所以先利用嵌入网络来提取交通元素的语义信息,然后转换为统一的特征空间和中心线匹配。
-
分别构建两个有向图来传播特征(直接构建一个全连接图计算成本高,会学习到非必要的信息),一个用于车道图估计Gll,一个代表交通要素分配Glt。分别对两个图做GNN学习。因为Ql和Qt代表不同的查询对象,语义有差异,引入适配器层组合信息增益R,流程如下图。(融合学习信息的操作,生成下一级decoder的查询Q)

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

这是一个在场景知识图上更新查询LC1的例子。计算过程:中心线部分根据学习权重矩阵的情况结合前向和后向的权重去计算(因为车道的结构是彼此依赖的,车道位置信息可以很好指示邻居的信息),每个节点的新特征都是受到它的邻居影响的。而交通要素之间的特征更新是特征查询和特征类别做矩阵乘法更新
-
-
检测头部分:模型对应出三个检测头,直接交通元素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 层,后处理网络:将实例转换为语义分割
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特征。预测头是一个分类分支和一个回归分支。
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查询的就是点集特征,最后是分类头和预测头输出。
TopoNet会表现出优势的原因
其实这些模型的构建思路都很相似,区别在于他们对问题做了不同的抽象,把模型学习特征要素的表示方式不一样,STSU是贝塞尔曲线,VectorMapNet是矢量集合来表示,MapTR就更加精细一点,提出了等价排列点集的思路。
TopoNet的优势在于作者思考后把问题转化到了图的拓扑关系问题。作者设计了模型专门学习图的拓扑关系,利用了可变注意力和图神经网络区学习。学习到了节点之间的邻接关系,中心线和交通要素间的关系。
还有就是对交通要素和中心线先是分别提取特征学习,然后再融合更新查询矩阵Q这个思路和STSU相似,看起来也很有效。交通要素头和中心线预测头都很好学习到了自身的特征。拓扑关系预测头则是两者的融合,这个设计也很巧妙,是前面分别做特征提取和decoder的思路延续。
相关文章:
端到端实现高精地图重建(TopoNet解读和横评)
论文出处 [2304.05277] Graph-based Topology Reasoning for Driving Scenes (arxiv.org)https://arxiv.org/abs/2304.05277 TopoNet TopoNet的目标是从车辆上安装的多视角摄像头获取图像,感知实体并推理出驾驶场景的拓扑关系,实现端到端预测…...
系统架构20 - 统一建模语言UML(上)
统一建模语言 组成要素事物关系 在目前的软件开发方法中,面向对象的方法占据着主导地位。面向对象方法的主导地位也决定着软件开发过程模型化技术的发展,面向对象的建模技术方法也就成为主导的方法。 公认的面向对象建模语言出现于20世纪70年代中期。从1…...
数据库学习笔记2024/2/4
随笔 1. 为什么学? 认识数据,熟悉数据,掌握数据。 进企业必备技能。 2. 怎么学? 1、MySQL数据库就是存储和管理数据的一个大型软件,这个软件有一个专门的语言叫SQL,主要学的是SQL语言,但想要达到企业用人标准,就还得学会熟练使用MySQL这个软件。 2、学习分三阶段: 一. …...
Apache POI 处理excel文件 记录用法
Apache POI 写excel public static void write() throws IOException {//再内存中创建了一个Excel文件XSSFWorkbook excel new XSSFWorkbook();//创建一个sheet页XSSFSheet sheet excel.createSheet("info");//这里创建行对象,这里的rownum 是从0开始的,类似于数…...
Transformer实战-系列教程2:Transformer算法解读2
🚩🚩🚩Transformer实战-系列教程总目录 有任何问题欢迎在下面留言 Transformer实战-系列教程1:Transformer算法解读1 Transformer实战-系列教程2:Transformer算法解读2 5、Multi-head机制 在4中我们的输入是X&#x…...
python_蓝桥杯刷题记录_笔记_全AC代码_入门3
前言 记录我的解法以及笔记思路,谢谢观看。 题单目录 1.P2141 [NOIP2014 普及组] 珠心算测验 2.P1567 统计天数 3.P1055 [NOIP2008 普及组] ISBN 号码 4.P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here 5.P1308 [NOIP2011 普及组] 统计单词数 6.P1047 […...
STM32 IIC电量计LTC2944
1 描述 LTC2944 可在便携式产品应用中测量电池充电状态、电池电压、电池电流及其自身温度。宽输入电压范围允许使用高达 60V 的多节电池。精密库仑反向积分电流通过电池正极端子与负载或充电器之间的检测电阻器。 电压、电流和温度由内部 14 位无延迟 ΔΣ™ ADC 测量。测量结…...
Linux 链接 GitHub 出现 Connection timed out
问题 安装GIT并完成公钥验证:Linux 系统拉取 Github项目 [rootxxx devtools]# ssh -T gitgithub.com ssh: connect to host github.com port 22: Connection timed out解决方案 进入在存放公钥私钥id_rsa.pub文件里,新建/修改config文本 [rootxxx my…...
vulnhub靶场之Thales
一.环境搭建 1.靶场描述 Description : Open your eyes and change your perspective includes 2 flags:user.txt and root.txt. Telegram: machineboy141 (for any hint) This works better with VIrtualBox rathe than VMware 2.靶场地址 https://www.vulnhub.com/entry/t…...
Qt之使用Qt内置图标
一效果 二.原理 Qt内置图标封装在QStyle中,共七十多个图标,可以直接拿来用,能应付不少简单程序需求,不用自己去找图标并添加到资源文件了。 下面是内置图标的枚举定义: enum StandardPixmap {SP_TitleBarMenuButton,SP_TitleBarMinButton,SP_TitleBarMaxButton,SP_T…...
《计算机网络简易速速上手小册》第10章:未来网络技术趋势(2024 最新版)
文章目录 10.1 边缘计算与网络设计 - 未来网络的速度与激情10.1.1 基础知识10.1.2 重点案例:使用 Python 实现边缘计算的实时视频分析准备工作Python 脚本示例 10.1.3 拓展案例1:智能交通系统Python 脚本示例 - 边缘计算设备上的交通流量分析 10.1.4 拓展…...
Vue引入Axios
1.命令安装axios和vue-axios npm install axios --save npm install vue-axios --save 2.package.json查看版本 3.在main.js中引用 import axios from axios; import VueAxios from vue-axios; Vue.use(VueAxios,axios) 4.如何使用 (初始化方法) 将下列代…...
【git 本地管理版本及与github合并】 Init Push Pull操作解决方案
文章目录 创建本地仓库,并与远程仓库链接更新本地仓库并使用Push推送到远程仓库 1. 几种基础命令介绍:2. git push操作流程 .gitignore删除本地仓库,断开本地与远程的链接设置用于提交commit的用户名,邮箱,以便githu…...
JavaSE-项目小结-IP归属地查询(本地IP地址库)
一、项目介绍 1. 背景 IP地址是网络通信中的重要标识,通过分析IP地址的归属地信息,可以帮助我们了解访问来源、用户行为和网络安全等关键信息。例如应用于网站访问日志分析:通过分析访问日志中的IP地址,了解网站访问者的地理位置分…...
使用最大边界相关算法处理文章自动摘要
一、需求背景 对于博客或者文章来说,摘要是普遍性的需求。但是我们不可能让作者自己手动填写摘要或者直接暴力截取文章的部分段落作为摘要,这样既不符合逻辑又不具有代表性,那么,是否有相关的算法或者数学理论能够完成这个需求呢&…...
ref和reactive, toRefs的使用
看尤雨溪说:为什么Vue3 中应该使用 Ref 而不是 Reactive? toRefs import { ref, toRefs } from vue;// 定义一个响应式对象 const state ref({count: 0,name: Vue });// 使用toRefs转换为响应式引用对象 const reactiveState toRefs(state);// 现在你…...
从源代码看Chrome 版本号
一直以来都是用Chrome 浏览器,但是看到Chrome 点分4 组数据的表达方式,总是感觉怪怪的,遂深入源代码了解她的版本号具体表示的内容 chrome 浏览器中显示的版本号 源代码中的版本号标识 版本号文件位于 chrome/VERSION , 看到源代…...
Vue 图片加载失败处理
Vue 图片加载失败处理 很多人会使用 error 方法在图片加载 失败时替换img.src 的方式 但是这种方式在默认图片加载失败时,error会出现死循环,所以我使用了error v-if的方式。 <template><div><!-- 正常时显示 --><img v-if&quo…...
Quartus IP学习之ISSP(In-System Sources Probes)
一、ISSP IP概要: ISSP:In-System Sources & Probes Intel FPGA IP 作用: 分为In-System Sources与In-System Probesn-System Sources,输入端,等价于拨码开关,通过输入板载FPGA上的拨码开关状态改变…...
Vue组件通信讲解[父子组件通信]
Vue组件通信讲解 在Vue中,父子组件之间的通信可以通过props和emit来实现。props用于从父组件向子组件传递数据,而$emit用于从子组件向父组件触发事件。 以下是一个包含子传父和父传子通信的Vue案例解决方案: 父组件:Parent.vue…...
不止会写脚本,更要会设计系统:从 Python 基础到 Pydantic v2,谈一套真正可靠的工程实践
不止会写脚本,更要会设计系统:从 Python 基础到 Pydantic v2,谈一套真正可靠的工程实践 很多人第一次喜欢上 Python,往往是因为它“好写”。 几行代码就能跑通一个脚本,一个下午就能拼出一个小工具,一周就能…...
Qwen3.5-9B-AWQ-4bitGPU利用率优化:nvidia-smi监控下的显存分配策略
Qwen3.5-9B-AWQ-4bitGPU利用率优化:nvidia-smi监控下的显存分配策略 1. 模型与部署环境概述 Qwen3.5-9B-AWQ-4bit是一个支持图像理解的多模态模型,能够结合上传图片与文字提示词输出中文分析结果。该模型特别适合处理图片主体识别、场景描述、图片问答…...
Fish Speech 1.5语音克隆安全边界:防滥用机制与伦理使用建议
Fish Speech 1.5语音克隆安全边界:防滥用机制与伦理使用建议 你有没有想过,如果有一天,你的声音可以被任何人轻易复制,会发生什么?想象一下,有人用你的声音给家人打电话借钱,或者用你老板的声音…...
软件测试在AI项目中的实践:PyTorch 2.8模型单元测试指南
软件测试在AI项目中的实践:PyTorch 2.8模型单元测试指南 1. 为什么AI项目也需要软件测试? 在传统软件开发中,单元测试早已成为标配。但当项目转向AI领域时,很多开发者却忽略了测试的重要性。这就像造一辆车只关注发动机功率&…...
Open-AutoGLM实战:自动刷抖音关注博主,效果惊艳,小白也能轻松上手
Open-AutoGLM实战:自动刷抖音关注博主,效果惊艳,小白也能轻松上手 你是不是也遇到过这种情况: 刷抖音时看到一个特别有趣的博主,想点个关注,结果手指一滑,视频过去了,再想找回来得翻…...
计算机组成原理启发:优化CasRel模型在GPU上的计算与存储访问
计算机组成原理启发:优化CasRel模型在GPU上的计算与存储访问 最近在部署一个关系抽取模型——CasRel时,遇到了点小麻烦。模型本身效果不错,但推理速度总感觉差那么点意思,尤其是在GPU上跑的时候,总感觉硬件没被“喂饱…...
seo站长论坛讨论哪些SEO热点话题_seo站长论坛如何运营自己的网站
SEO站长论坛讨论哪些SEO热点话题 在当前数字化竞争激烈的市场环境中,SEO(搜索引擎优化)已经成为每个网站运营者必不可少的技能。SEO站长论坛作为交流与分享的重要平台,各类热点话题层出不穷。在SEO站长论坛上,哪些话题…...
【几何之美】莫利定理(Morley‘s Theorem)的视觉化证明与初中数学思维
1. 莫利定理:藏在三角形里的数学奇迹 第一次听说莫利定理时,我正盯着教室墙上的三角板发呆。谁能想到,这个看似普通的几何图形里,竟然藏着如此精妙的规律——把任意三角形的三个内角各分成三等份,靠近每条边的两条三等…...
鸿蒙音频开发避坑指南:用AVPlayer实现音乐App的熄屏播放,这3个权限和配置项别忘了
鸿蒙音频开发实战:熄屏播放的三大核心配置与避坑策略 在移动应用生态中,音频播放功能始终占据重要地位——无论是音乐流媒体、播客平台还是语音社交应用,流畅的后台播放体验都是用户留存的关键指标。鸿蒙系统通过AVPlayer与Media Kit为开发者…...
StepperController:嵌入式步进电机精准控制库解析
1. StepperController:面向嵌入式系统的步进电机驱动控制库深度解析步进电机因其开环定位精度高、响应快、控制逻辑简洁等优势,广泛应用于3D打印机、CNC雕刻机、自动售货机、医疗设备定位平台及工业自动化执行机构中。然而,在资源受限的MCU&a…...
