[图像和LiDAR点云的可微分配准]

news2024/11/24 9:09:29

文章目录

    • 概要
    • 主要贡献
    • 内容概述
    • 实验
    • 小结

概要

不同模态之间的配准,例如来自摄像机的2D图像和LiDAR的3D点云之间的配准,是计算机视觉和机器人领域中至关重要的任务。

以往的方法通常通过匹配神经网络学习到的点和像素模式来估计2D-3D对应关系,并在后处理阶段使用 Perspective-n-Points(PnP)方法来估计刚性变换。然而,这些方法在将点和像素鲁棒地映射到共享的潜在空间方面存在困难,因为点和像素具有非常不同的特征,并且它们无法直接在变换上构建监督,因为PnP是不可微分的,导致配准结果不稳定。为了解决这些问题,我们提出了一种通过可微分的概率PnP求解器学习结构化的跨模态潜在空间的方法,以表示像素特征和3D特征。

具体而言,我们设计了一个三元网络来学习VoxelPoint-to-Pixel匹配,其中我们使用体素和点来表示3D元素,以通过像素学习跨模态潜在空间。我们基于CNN设计了体素和像素分支,以在表示为网格的体素/像素上执行卷积,并集成了额外的点分支,以在体素化过程中丢失的信息。我们通过在概率PnP求解器上直接施加监督来端到端地训练我们的框架。

为了探索跨模态特征的独特模式,我们设计了一种具有自适应权重优化的新型损失来描述跨模态特征。在KITTI和nuScenes数据集上的实验结果显示,与最先进的方法相比,我们的方法取得了显著的改进。

论文地址:https://arxiv.org/abs/2312.04060
项目地址:https://github.com/junshengzhou/VP2P-Match

主要贡献

• 提出了一个新颖的框架,通过学习一个结构化的跨模态潜在空间,通过自适应权重优化,通过可微的PnP求解器进行端到端训练,从而学习图像到点云的配准。

• 提出将3D元素表示为体素和点的组合,以克服点云和像素之间的模态差距,其中设计了一个三元网络来学习体素点到像素的匹配。

• 通过在KITTI和nuScenes数据集上进行广泛实验,展示了我们在最先进技术上的卓越性能。

内容概述

该方法的框架主要包括以下几个步骤:

VoxelPoint-to-Pixel匹配框架:该框架用于学习结构化的跨模态潜在空间。它由三个分支组成:体素分支、像素分支和点分支。体素分支和像素分支使用卷积神经网络在表示为网格的体素和像素上执行操作,以学习它们之间的对应关系。点分支用于补充体素化过程中丢失的信息。

新颖的损失函数:为了学习独特的跨模态模式,该方法引入了一种自适应加权优化的损失函数。该损失函数能够根据样本之间的差异性动态调整权重,从而更好地捕捉跨模态特征之间的相关性。

可微分的概率PnP求解器:为了实现端到端的学习,该方法引入了可微分的概率PnP求解器。这个求解器用于估计刚性变换,将学习到的跨模态特征映射到共享的潜在空间中。通过直接在求解器上施加监督,可以端到端地训练整个框架。

总体而言,该方法的框架通过学习VoxelPoint-to-Pixel匹配和使用可微分的概率PnP求解器来实现跨模态配准。新颖的损失函数加权优化能够提高特征学习的质量和稳定性。通过在KITTI和nuScenes数据集上进行实验,该方法相比最先进的方法展现了显著的改进。
在这里插入图片描述
图1:我们方法的概述。给定一对未正确配准的图像I和点云P作为输入,(a) 我们首先对稀疏体素进行操作以生成稀疏体素V,然后应用三元网络从三个模态中提取模式。我们将2D模式表示为像素特征,将3D模式表示为体素和点特征的组合,分别使用自适应加权损失来学习独特的2D-3D跨模态模式。(b) 我们使用跨模态特征融合检测2D/3D空间中的交集区域。© 我们根据交集检测的结果去除异常区域,并使用2D-3D特征匹配建立2D-3D对应关系,然后应用概率PnP来预测外参姿势的分布,通过与真值位姿一起进行端到端的监督。

VoxelPoint-to-Pixel匹配框架是一个用于跨模态特征匹配的三分支网络。它包括Voxel、Point和Pixel分支,用于获取2D和3D特征。

在Voxel分支中,采用稀疏卷积来有效地捕捉空间模式。这个分支主要处理体素化后的数据,以学习3D特征。

为了恢复在体素化过程中丢失的详细3D模式,引入了Point分支。受PointNet++启发,该分支用于提取点云数据的局部特征。

Pixel分支基于卷积U-Net结构,用于提取全局的2D图像特征。它主要处理图像数据,用于学习2D特征。

在2D-3D特征匹配方面,将3D元素表示为voxels和points的组合。通过将它们映射到共享的潜在空间中,实现了2D和3D特征的匹配。这种VoxelPoint-to-Pixel匹配创建了一个结构化的跨模态潜在空间,提供了均匀的特征分布。

为了处理不同模态之间的异常值,引入了交叉检测方法。通过将LiDAR点云使用地面实况相机参数的2D投影与参考图像进行重叠,定义了交叉区域。通过检测策略,预测每个2D/3D元素位于交叉区域的概率,从而有助于在推断2D-3D对应关系之前去除两个模态上的离群区域。这样可以提高匹配的准确性和稳定性。

在这里插入图片描述
图2 使用点对像素(P2P)和体素点对像素(VP2P)匹配学习的潜在空间的 t-SNE 可视化

3.1 自适应加权优化策略
自适应加权优化旨在解决2D和3D任务中的特征匹配问题。通常情况下,传统的对比损失和三元损失等优化方法在处理2D-3D特征匹配时存在问题,提出了一种自适应加权的优化策略,该策略针对一组2D-3D配对样本,通过自适应权重因子对正对和负对进行加权,以更灵活地进行优化。
在这里插入图片描述
3.2 可微分 PnP
建立2D-3D的对应关系首先通过交叉区域检测,在两个模态中去除离群区域,然后利用交叉模态潜在空间的最近邻原则进行2D-3D特征匹配。为了建立对应关系,使用 arg max 操作在交叉模态潜在空间中搜索具有最大相似度的点坐标。这一操作是非可微的,但通过 Gumbel 估计器获得梯度以实现端到端训练。概率 PnP 方法将输出解释为概率分布,用于解决非可微的 PnP 问题,通过计算 KL 散度损失最小化预测姿态分布与地面真实姿态分布之间的距离,进行监督。此外,通过基于 Gauss-Newton 算法的迭代 PnP 求解器求解精确的姿态,并计算姿态损失。姿态损失也参与优化,因为 GN 算法的迭代部分是可微分的。

实验

我们在两个广泛使用的基准数据集KITTI和nuScenes上评估我们在图像到点云配准任务上的性能。在两个数据集上,图像和点云是通过2D相机和3D激光雷达同时捕获的。
4.1 定量与定性比较实验
定量比较:我们的方法在KITTI和nuScenes数据集上展现出卓越性能,尤其在RTE方面比最新的CorrI2P方法提高了大约4倍。我们的方法通过端到端训练框架,结合概率PnP求解器,能够学习稳健的2D-3D对应关系,实现了更准确的预测,如表1。
在这里插入图片描述
视觉比较:图5中的视觉比较显示,我们的方法在不同道路情况下实现了更好的配准精度。与其他方法相比,尤其是在调校困难的情况下,如第1行和第2行,我们的方法能够更准确地解决配准问题,而其他方法(如DeepI2P和CorrI2P)无法正确匹配树木和汽车的投影与图像中相应的像素。
在这里插入图片描述
4.2 特征匹配的精度
图6展示了特征匹配的可视化,通过计算两个模态上的匹配距离生成双侧误差图。对于2D到3D的匹配,我们在交叉区域的每个2D像素上寻找相似度最大的点,计算投影匹配点与2D像素之间的欧拉距离,结果显示我们的方法在2D到3D和3D到2D匹配中均明显优于CorrI2P。我们的方法在大多数匹配中能够实现小于2像素的轻微错误,表明我们学到的共享潜在空间能够准确区分交叉模态模式,实现准确的特征匹配。在图像和点云边缘处可能存在相对较大的错误,因为在边缘区域完美执行交叉区域检测通常是困难的。
在这里插入图片描述
4.3 运行效率
与其他方法在NVIDIA RTX 3090 GPU和Intel® Xeon® E5-2699 CPU上进行了效率比较。在表2中,我们的方法参数更少,性能显著更好。此外我们的方法仅需0.19秒进行网络推断和一个帧的姿态估计,比先前的方法快了大约50倍(或更多)。
在这里插入图片描述
4.4 消融实验
进行了消融研究以验证我们方法中每个设计的有效性以及一些重要参数的影响,报告了在KITTI数据集下RTE/RRE/Acc.的性能。
框架设计验证:我们通过四种变体验证了框架中每个设计的有效性,包括去除体素分支、去除点云分支、替换自适应加权优化损失以及去除可微PnP驱动的端到端监督。结果如表3,显示了全模型在所有变体中表现最佳,证明了每个设计在框架中的有效性。特别是,相较于去掉点云分支,体素分支在框架中扮演更重要的角色,表明体素模态更适合学习图像到点云的配准。
在这里插入图片描述
输入分辨率影响:我们进一步研究了输入图像分辨率和点云密度的影响。结果如表4显示,在两个模态上使用更高分辨率会带来更好的效果,因为低分辨率图像可能丢失一些视觉信息,而低密度点云则可能失去详细的几何结构,我们选择在性能和效率之间找到平衡的适当设置。
在这里插入图片描述

小结

这项工作提出了一种新颖的框架,名为VoxelPoint-to-Pixel匹配,旨在学习图像与点云之间的配准。该框架采用了自适应加权损失学习结构化的跨模态潜在空间的方法。

在这个框架中,我们将3D元素表示为体素和点的组合,以克服点云和像素之间的域差异。这种组合表示方法能够更好地捕捉图像和点云之间的对应关系。

此外,我们还引入了可微的PnP求解器来直接监督预测的姿态分布,从而实现了端到端的训练。通过这种方式,我们的框架可以更有效地学习和优化配准过程。

我们在KITTI和nuScenes数据集上进行了广泛的实验证明,证明了我们的框架具有卓越的性能。这项工作对于解决图像与点云之间的配准问题具有重要的实际意义。

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

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

相关文章

听GPT 讲Rust源代码--src/tools(15)

File: rust/src/tools/rust-analyzer/crates/mbe/src/token_map.rs 在Rust源代码中,rust/src/tools/rust-analyzer/crates/mbe/src/token_map.rs文件的作用是实现了一个能够将输入的文本映射为标记的结构。具体来说,它定义和实现了几个结构体&#xff08…

PolarDB-X、OceanBase、CockroachDB、TiDB二级索引写入性能测评

为什么要做这个测试 二级索引是关系型数据库相较于NoSQL数据库的一个关键差异。二级索引必须是强一致的,因此索引的写入需要与主键的写入放在一个事务当中,事务的性能是二级索引性能的基础。 目前市面上的分布式数据库中,从使用体验的角度看…

178. 第K短路(A*启发式算法)

178. 第K短路 - AcWing题库 给定一张 N 个点(编号 1,2…N),M 条边的有向图,求从起点 S 到终点 T 的第 K 短路的长度,路径允许重复经过点或边。 注意: 每条最短路中至少要包含一条边。 输入格式 第一行包…

Istio 社区周报(第一期):2023.12.11 - 12.17

欢迎来到 Istio 社区周报 Istio 社区朋友们,你们好! 我很高兴呈现第一期 Istio 社区周报。作为 Istio 社区的一员,每周我将为您带来 Istio 的最新发展、有见地的社区讨论、专业提示和重要安全新闻内容。 祝你阅读愉快,并在下一期中…

❀My虚拟机上的ftp服务器搭建(centos)❀

❀My虚拟机上的ftp服务器搭建(centos)❀ 在CentOS上搭建FTP服务器可以使用vsftpd软件,下面是详细的搭建教程: ①安装vsftpd软件 在终端中输入以下命令进行安装: sudo yum install vsftpd ②配置vsftpd 打开vsftpd的配置文件,…

Java_集合进阶Set集合

少年没有乌托邦,心向远方自明朗 集合进阶(Set、Map集合) 一、Set系列集合 1.1 认识Set集合的特点 Set集合是属于Collection体系下的另一个分支,它的特点如下图所示 下面我们用代码简单演示一下,每一种Set集合的特…

城市里的“蛋壳运动空间”

近年来,秉承"发展群众体育,服务健康中国”的理念,全国各地持续推进全民健身与全民健康的融合发展。越来越多的口袋公园、户外运动设施出现在城市各个角落,一定程度上提升了全民运动的便利性和幸福感。 但是,遇到…

数说故事荣登胡润“全球猎豹企业榜”,彰显大数据与AI融合的创新力

昨日,2023 胡润全球猎豹企业大会暨《2023 胡润全球猎豹企业榜》发布活动在广州市南沙区金茂万豪酒店圆满举办。胡润研究院与广州南沙联合发布《2023胡润全球猎豹企业榜》,这是胡润研究院首次发布“全球猎豹企业榜”。榜单列出了全球成立于2000年之后&…

固态硬盘的基本知识

1.硬盘分为SSD(solid state drive)和 H(hard desk drive) 2.SSD数倍于HDD机械硬盘的传输性能,让普通用户和发烧玩家的体验均成倍提升。 三.SSD主要从如下3个方面来介绍(3个方面匹配好才是速度的关键&…

C#线程的定义和使用方法

引言 在C#编程语言中,线程是一种并发执行的机制,允许程序同时执行多个任务。线程的使用使得我们能够利用计算机的多核处理器,实现程序的并行执行,提高系统的性能和响应能力。本文将详细介绍C#中线程的定义和使用方法,涵…

代码随想录27期|Python|Day21|二叉树| 530.二叉搜索树的最小绝对差| 501.二叉搜索树中的众数| 236. 二叉树的最近公共祖先

特别需要注意题目中给的隐藏信息(比如这里的BST) 530. 二叉搜索树的最小绝对差 前两个是BST的经典递归模版解法,后面一个迭代的解法可以当作BST的一般迭代规则。 转换成数组 根据一般的递归模版 def traversal(self, root):if not root:r…

用23种设计模式打造一个cocos creator的游戏框架----(二十三)中介者模式

1、模式标准 模式名称:中介者模式 模式分类:行为型 模式意图:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 结构图&#xff…

基于SSM框架的电脑测评系统论文

基于 SSM框架的电脑测评系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,作为一个一般的用户都开始注重与自己的信息展示平台,实现基于SSM框架的电脑测评系统在技术上已成熟。本文介绍了基于SSM框架的电脑测评系统的开发全过程。通过分析用户对于…

【小黑嵌入式系统第十一课】μC/OS-III程序设计基础(一)——任务设计、任务管理(创建基本状态内部任务)、任务调度、系统函数

上一课: 【小黑嵌入式系统第十课】μC/OS-III概况——实时操作系统的特点、基本概念(内核&任务&中断)、与硬件的关系&实现 文章目录 一、任务设计1.1 任务概述1.2 任务的类型1.2.1 单次执行类任务(运行至完成型&#…

ai学习笔记-入门

目录 一、人工智能是什么?可以做什么? 人工智能(Artificial Intelligence): 人工智能的技术发展路线: 产业发展驱动因素:数据、算力、算法 二、人工智能这个工具的使用原理入门 神经网络⭕数学基础 1.神经网络的生物表示 …

成都爱尔蔡裕主任提醒眼前有条状黑影飘动,该治疗吗?

眼前有好多影子,有的看起来是黑色有的仿佛透明,呈现条状、点状,它们还跟随脑袋的移动而移动,仿佛在眼前打转,尤其在阳光明媚的时候或者注视白墙壁时尤为明显。 这是病吗?需要治疗吗? 飞蚊症 飞蚊症在医学上称为“玻璃…

JavaScript系列-循环语句

文章目录 1. JavaScript 函数常用的循环语句有以下1 打遍所有可循环对象的 for 循环2 for in :遍历对象3 for of :遍历有迭代器对象,如数组4 while 循环5 do while6 switch case 2.各循环方法的使用场景和方法for 循环第一种用法(…

Java-Secruity-2

可以先看这篇文章 Secruity-1👈 1、授权 1.1 权限管理 在日常使用的系统中都会涉及到权限相关的操作,管理员有管理员的操作,用户有用户的操作,不同的用户可以使用不同的功能,这需要使用到权限管理。 所以在写接口…

openGauss学习笔记-168 openGauss 数据库运维-备份与恢复-导入数据-使用gs_restore命令导入数据

文章目录 openGauss学习笔记-168 openGauss 数据库运维-备份与恢复-导入数据-使用gs_restore命令导入数据168.1 操作场景168.2 操作步骤168.3 示例 openGauss学习笔记-168 openGauss 数据库运维-备份与恢复-导入数据-使用gs_restore命令导入数据 168.1 操作场景 gs_restore是…

PyQt6 信号与槽

锋哥原创的PyQt6视频教程: 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计51条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版…