上帝之眼(BEVSee):多相机间无需标定,将各自目标统一到同一坐标系下(代码开源,提供数据集)

上帝之眼(BEVSee):多相机间无需标定,将各自目标统一到同一坐标系下(代码开源,提供数据集)

Abstract

我们解决了一个新的问题,即在鸟瞰视角(BEV)中无需预先给定相机校准的多视角相机和目标注册问题。这将多视角目标注册问题提升到一个新的无需校准的阶段,从而极大地缓解了许多实际应用中的限制。然而,这是一个非常具有挑战性的问题,因为其唯一的输入是来自不同第一人称视角first-person views(FPVs)的多个RGB图像,没有BEV图像和FPVs的校准,而输出是从所有视角聚合到一个统一平面的图像,包含目标和相机在BEV中的位置和方向。为此,我们提出了一个端到端的框架,通过利用相机和目标的相互依赖性来共同解决相机和目标注册问题,其主要思路如下:

  1. 创建一个目标视角变换模块(VTM)将每个行人从FPV投影到虚拟BEV。
  2. 推导一个基于多视角几何的空间对齐模块(SAM)来估计统一BEV中的相对相机位姿。
  3. 在统一BEV中选择并细化目标和相机的注册结果。
    我们收集了一个具有丰富标注的大规模合成数据集用于训练和评估。此外,我们还收集了一个真实数据集用于跨领域评估。实验结果显示了我们方法的显著效果。代码和提出的数据集可以在BEVSee中获得。

github.com/zekunqian/B...

Introduction

注册是计算机视觉中的一个重要任务。在这项工作中,我们研究了一个新的具有挑战性的问题,即在鸟瞰视角(BEV)中无需相机校准的相机和人物注册问题。如图1所示,具体来说,给定多视角的多人场景图像,我们的目标是生成每个人物(在本文中称为目标)和相机在BEV中的位置和方向。

Method

我们首先概述了所提出的方法,主要包含三个阶段,如下图所示。

  1. 给定从不同视角同时捕获的多个人体场景的多张图像,我们应用视角变换目标检测模块(VTM)来获取每个人在鸟瞰图(BEV)中的位置和面部朝向估计。
  2. 我们应用基于几何变换的空间对齐模块(SAM)来估计BEV中的相对相机位姿候选。
  3. 接下来,我们使用基于质心距离的候选选择策略,从SAM获得的候选中选择最终的相机位姿估计结果(相机注册)。对于目标注册任务,我们结合空间和外观信息,在BEV中聚合同一个人的多视角目标注册结果。

一、视图变换检测模块 (View-Transform Detection Module)

对于在多人场景中捕获的多张图像的输入,我们首先获取每个人在鸟瞰视角(BEV)中的位置和面部朝向。为此,我们开发了一个使用轻量级全连接(FC)结构并具有三个头部的LocoNet。在此之前,我们首先应用一个现有的人体姿态检测器PifPaf从原始RGB图像中预测每个人的2D骨骼关节,这些骨骼关节将作为输入传入LocoNet,其结构如下图所示。在LocoNet的末端,我们使用一个由简单的多层感知器(MLP)层组成的人体3D定位头部来预测每个人的位置和面部朝向。

二、空间对齐模块(Spatial Alignment Module )

我们通过目标定位对齐来展示相对相机位姿估计(在鸟瞰视角中)。为方便起见,我们首先介绍两个视角的情况。我们的基本思想是,人体的位置和面部朝向在真实世界的3D坐标系中是唯一的,可以用于对齐相机以生成多个2D图像。在从不同第一人称视角(FPV)图像生成的鸟瞰图(BEV)地图中,通过对齐相应的人体位置和面部朝向(作为对齐点),可以在BEV中获得相机位姿。为此,第一步是从不同视角中找到相同的目标。我们通过人体外观特征在输入图像中识别目标,然后在不同视角的BEV中匹配相应的目标。我们使用ResNet-50网络提取每个人的特征,并应用欧几里得距离和Sigmoid函数来创建相似度矩阵(M_pred),该矩阵表示两个视角中目标之间的相似度。然后,我们对每对目标的相似度进行排序,并选择前K对作为匹配对。之后,我们应用几何变换对齐两个BEV(包含所有目标和相机),它们分别表示参考BEV地图和未注册的BEV地图。具体而言,对于一对匹配点,我们应用几何变换,如图4所示,将未注册BEV中的相机位置和朝向旋转和移动到参考BEV中的相机位置和朝向。

三、相机与目标进行配准

1、相机配准。基于前面中获得的相对相机姿态

(δ x k , δ y k , δ θ k ),我们得到了参考和未配准 BEV 之间的相对相机姿态估计的 K 个候选。这里我们将参考 BEV 上的相机姿态表示为 (0, 0, 0)。然后,我们在参考 BEV 的坐标系上得到未配准 BEV 的相机姿态。

2、目标配准

2.1、目标匹配

为了匹配来自多个视图的目标,我们在统一的 BEV 中创建了一个人的空间距离矩阵 M_dis 和角度差异矩阵 M_ang,它们测量来自不同视图的所有目标的距离和角度差异。然后,我们将其与前面中提供相似性矩阵 M_pred 结合起来。我们首先使用三个阈值作为过滤器来选择潜在的匹配目标对,只有落在距离和角度阈值内且超过相似性阈值的对会被识别为同一个目标。此外,我们进一步考虑了两个约束条件以确保准确匹配。第一个是循环一致性,这意味着来自所有视图的同一个目标的连接应该形成一个环路。第二个是唯一性,这意味着一个目标在另一个视图中不应该连接到多于一个的目标。对于上述约束,首先,我们使用经典的数据结构,即联合查找(union-find),来聚合传递关系,这使得在联合查找的联合中的所有目标,通过直接和间接连接,被聚集成一个子图,如下图b所示,这解决了所有目标连接成环的循环一致性问题。其次,我们将问题定义为分层最大生成子图问题,逐层(视图对视图)的扩展限制了每个视图中一个目标最多连接一个节点,以避免唯一性冲突,如下图c所示。为了解决这个问题,我们提出了一个参考 Prim 算法的算法。我们在补充材料中提供了上述策略的更多细节和算法流程。
2.2、目标融合。使用上述目标匹配方法,来自多个视图的目标被视为同一个人,然后我们使用方程中相同的策略来估计目标的最终配准结果。具有最小质心距离的目标的位置和方向将被保留,而其他相同的目标将被移除。特别是,如果只有两个视图,我们使用两个目标之间的平均位置和方向作为融合结果。最终,我们可以得到一个统一的 BEV,其中包含了来自多个视图的相机和目标的配准信息。

Experiments

1、相机配准的效果比较
2、目标物的配准的效果比较

总结

文章的主要贡献包括:

1.首次研究了无需预给定相机校准或真实 BEV 图像的多视图多人体场景的相机和人体配准。

2.提出了一个新颖的解决方案,集成了基于深度网络的 VTM 和基于多视图几何的 SAM。

3.构建了一个新的大规模合成数据集,并通过关键模块的实验结果展示了所提方法的优越性和有效性。跨域研究在真实数据集上验证了他们方法的泛化能力。

引用:

From a Bird's Eye View to See: Joint Camera and Subject Registration without the Camera Calibration

关注我的公众号auto_driver_ai(Ai fighting), 第一时间获取更新内容。

相关推荐
Ezekiel Mok19 分钟前
基于路径长度的样条插补算法(自动驾驶和路径跟踪控制适用)
算法·matlab·自动驾驶·路径跟踪·插补
mana飞侠41 分钟前
代码随想录算法训练营第59天:动态[1]
开发语言·数据结构·算法·动态规划
zengy51 小时前
代码随想录打卡第十三天
数据结构·c++·算法·leetcode
yannan201903132 小时前
【算法】(C语言):二分查找
c语言·算法
zhangbin_2372 小时前
【Python机器学习】处理文本数据——将文本数据表示为词袋
人工智能·python·算法·机器学习·分类
孑渡2 小时前
【LeetCode】每日一题:跳跃游戏
python·算法·leetcode·游戏·职场和发展
liulanba2 小时前
leetcode--二叉树中的最长交错路径
linux·算法·leetcode
Puppet__2 小时前
【康复学习--LeetCode每日一题】3115. 质数的最大距离
学习·算法·leetcode
dc爱傲雪和技术3 小时前
卡尔曼滤波Q和R怎么调
python·算法·r语言
Neituijunsir3 小时前
2024.06.28 校招 实习 内推 面经
c++·python·算法·面试·自动驾驶·汽车·求职招聘