当前位置: 首页 > news >正文

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

Abstract

我们解决了一个新的问题,即在鸟瞰视角(BEV)中无需预先给定相机校准的多视角相机和目标注册问题。这将多视角目标注册问题提升到一个新的无需校准的阶段,从而极大地缓解了许多实际应用中的限制。然而,这是一个非常具有挑战性的问题,因为其唯一的输入是来自不同第一人称视角first-person views(FPVs)的多个RGB图像,没有BEV图像和FPVs的校准,而输出是从所有视角聚合到一个统一平面的图像,包含目标和相机在BEV中的位置和方向。为此,我们提出了一个端到端的框架,通过利用相机和目标的相互依赖性来共同解决相机和目标注册问题,其主要思路如下:
1. 创建一个目标视角变换模块(VTM)将每个行人从FPV投影到虚拟BEV。
2. 推导一个基于多视角几何的空间对齐模块(SAM)来估计统一BEV中的相对相机位姿。
3. 在统一BEV中选择并细化目标和相机的注册结果。
我们收集了一个具有丰富标注的大规模合成数据集用于训练和评估。此外,我们还收集了一个真实数据集用于跨领域评估。实验结果显示了我们方法的显著效果。代码和提出的数据集可以在BEVSee中获得。

https://github.com/zekunqian/BEVSee

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), 第一时间获取更新内容。

相关文章:

  • C++编程(五)单例模式 友元
  • 如何寻找一个领域的顶级会议,并且判断这个会议的影响力?
  • SpringBoot学习04-[定制SpringMVC]
  • 在Qt中,直接include <moc_xxxxx.cpp> 为什么不会出现符号冲突的错误?
  • UTONMOS:探索未来区块链与元宇宙的游戏奇妙融合
  • linux的常用系统维护命令
  • Linux的一些杂项函数总结
  • rabbitmq消息队列提出的问题(个人想法)
  • 有哪些好的 Stable Diffusion 提示词(Prompt)可以参考?
  • hive零基础入门
  • QT5:在窗口右上角显示图标
  • 天猫商品列表数据接口(Tmall.item_search)
  • VSCode中常用的快捷键
  • Opencv学习项目6——pyzbar
  • Linux 静态库和动态库
  • #Java异常处理
  • 【技术性】Search知识
  • JAVA 学习IO流
  • Java到底能干嘛?
  • Just for fun——迅速写完快速排序
  • maven工程打包jar以及java jar命令的classpath使用
  • nginx 配置多 域名 + 多 https
  • Redis 中的布隆过滤器
  • Vue小说阅读器(仿追书神器)
  • 不上全站https的网站你们就等着被恶心死吧
  • 实习面试笔记
  • 实现菜单下拉伸展折叠效果demo
  • 微服务核心架构梳理
  • 7行Python代码的人脸识别
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 通过调用文摘列表API获取文摘
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #Linux(权限管理)
  • #WEB前端(HTML属性)
  • (2022 CVPR) Unbiased Teacher v2
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (6)设计一个TimeMap
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (独孤九剑)--文件系统
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (十八)用JAVA编写MP3解码器——迷你播放器
  • (五)c52学习之旅-静态数码管
  • (一)插入排序
  • (原創) 未来三学期想要修的课 (日記)
  • (转)【Hibernate总结系列】使用举例
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)一些感悟
  • .NET delegate 委托 、 Event 事件,接口回调
  • .NET Micro Framework 4.2 beta 源码探析
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET Remoting学习笔记(三)信道
  • .net web项目 调用webService