室内室外双SOTA!OpenIns3D—3D开放世界场景理解新思路

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

今天自动驾驶之心很荣幸邀请到黄哲宁来分享3D开放世界场景理解新思路——OpenIns3D,如果您有相关工作需要分享,请在文末联系我们!

>>点击进入→自动驾驶之心【Transformer】技术交流群

论文作者 | 黄哲宁

编辑 | 自动驾驶之心

607b55b5187cb796aab711d05142fd3e.png

主页:https://zheninghuang.github.io/OpenIns3D/

视频:https://www.youtube.com/watch?v=kwlMJkEfTyY

文章:https://arxiv.org/abs/2309.00616

代码:GitHub - Pointcept/OpenIns3D: OpenIns3D: Snap and Lookup for 3D Open-vocabulary Instance Segmentation

背景

3D 开放世界场景理解是一项有趣又重要的任务。任务的定义如下:对于一个给定的3D场景(可以是点云或者mesh模型),模型能够找到未见过的,随意描述的物体。和closed-set场景理解相比,这个任务会在真实生活中更加有用,因为它更贴近我们与这个世界的交流方式。

在图片领域,开放世界的理解已经取得了很多进展,这主要得益于丰富的数据集。我们可以通过爬虫轻松地生成互联网级别的图像文本对("text-image-pair")。目前,2D开放世界不仅拥有出色的分割和检测模型,例如ODISE和GroundingDINO,还有与大型语言模型(LLM)结合的方法,例如LISA,能够理解非常复杂的文本输入,包括需要高难度推理或世界知识才能理解的文本。然而,在3D领域,开放世界的理解仍处于早期阶段,并且发展相对较慢。

目前现状和相关工作

3D开放世界场景理解目前仍然处于早期阶段,其发展速度相对较慢的主要原因有以下几点。首先,与2D图像相比,获取3D数据更加困难,尤其是互联网级别的3D-text 配对数据更加具有挑战性。此外,不同传感器采集的3D数据之间存在较大的领域差距(domain gap),增加了统一数据的难度。因此,构建统一的大规模3D数据集一直是一个具有挑战性的问题。

目前,关于3D开放世界场景理解的工作可以总结为以下三大类:

  1. 3D特征蒸馏(3D Feature Distillation):例如OpenScene和Clip2point等工作采用了以下方法:它们借助2D开放世界模型来学习每个像素的特征,然后通过像素和点的对应关系将2D模型中学到的与语言对齐的优秀特征迁移到3D网络中。

  2. 3D-text对(3D-text pair):PLA系列的作品(如PLA、Lowis3D和RegionPLC等)采用了如下方法:它们借助2D成熟的图像描述模型,将3D场景对应的2D图像转化为文本描述,从而建立了不同层级的3D-text对。然后,利用这些对来进行特征学习。

  3. 2D-CLIP+projection类方法:比如OV-3DET以及与我们同时期的作品OpenMask3D等,采用了以下策略:首先,学习检测到边界框或实例的位置,然后在原始的2D图像上截取相关的图像片段,通过CLIP模型进行处理,最后将CLIP的结果映射到3D网络中以进行识别。

其中一些工作取得了良好的实验结果,但这些框架都存在一个共同的适用性缺陷:它们需要使用与3D对齐的2D原生图像进行训练,这限制了它们在没有2D图像的场景下的应用。需要强调的是,"对齐整齐"指的是具备以下两个要素:1. 2D图像具备完整的相机模型(包括内参和外参);2. 每张2D图像都有对应的深度图。借助这两个信息,可以无缝地将2D像素与3D点进行关联。

基于这一考虑,我们提出了OpenIns3D框架,它完全不依赖于任何原生的2D图像,只需要3D输入即可实现这一开放世界场景理解的新范式,如下图所示。

5738162f0f7b365b8d1bc406708a6a1e.png
OpenIns3D 与其他框架的对比

why 3D-Input only

我们认为有两个原因,让这种纯3D-input的框架很有意义。

原因一:原生的高清2D图片,或者精准的2D-3D对应关系,在很多情况下,并不一定存在。

实际应用中,有许多3D数据缺乏对应的2D图像或者准确的2D-3D对应关系。例如:

a. 通过激光雷达得到的点云,经常没有对应的2D图片。示例数据集:Semantic3D, Toronto3D, paris-carla-3d

b. Photogrammetry 得到的点云,很多时候是没有深度图的。示例数据集:Campuse3D, STPLS3D, SensatUrban

c. 一些从3D 的 simulation,或者是CAD 模型里转化出来的点云,很多时候没有2D图片。示例数据集:SynthCity

d. 如果这个3D模型的点云是通过配准不同的传感器的点云得到的,那么完美对应的2D图片就很难弄到。

e. 在实际工程中,2D图像通常会占用大量存储空间。例如,在ScanNetv2数据集中,一个3D点云或网格的大小通常为3MB,而相应的2D图像总体积达到3GB(即使仅使用其中的一部分,存储要求仍然很高)。

在这些情况下,OpenIns3D仍然可以完全适用,而其他网络可能会面临适应性问题。

原因二:如果3D+2D+相机参数+深度图都是知道的,那么3D 的开放世界场景理解就是一个比较ill-posed的问题。

因为如果这些数据都有,3D的开放世界场景理解,可以通过以下2D理解+3D投影完成:

从2D 图片里面进行所有的开放世界理解,然后利用完整的相机参数和深度图,把检测结果投影到3D。

2D 开放世界理解发展的更快,这样的效果也会很好。这个思路的已经被一些工作证明会有不错的效果,比如SAM3D,如下图。

f4d1ca2c601dbe024c6a17f9e361d74c.png
SAM3D Yang et al. 2023

因此,我们认为,如果3D开放世界场景理解网络在训练和推断时都需要2D图像的辅助,那么它们的motivation可能会显得有些牵强。

OpenIns3D 框架:

我们提出了一个很简单的三步走战略:mask-snap-lookup。

87c92f1d5eb5e2a9d8a073faf0542a79.png
OpenIns3D的pipeline
  1. “MASK”:基于Mask3D,我们提出了Mask Proposal Module (MPM)。对于给定的3D 点云,MPM生成class-agnostic mask proposals。由于我们的MPM目标是一个class-agnostic的的设计,所以我们去掉了Mask3D里面所有的跟classification labels相关的module,并且引进了mask scoring 和 mask filtering module,用来筛掉低质量的mask proposals,为接下来的mask understanding 步骤提供一个高质量,精简的基础。

  2. “Snap”: 由于我们既要摆脱对于原生图片的依赖,也要用2D的开放世界模型来辅助感知。鉴于此,我们提出了一个 名为“snap”的拍照技术。”Snap”的关键就是,我们进行全场景图片的拍摄,而不是对于每个生产mask proposal单独拍照。我们提出了优化相机外参和内参的简单思路,来获取最高效的图片。有了这些全场景照片后,我们将它们交给2D的开放世界场景理解框架来检测感兴趣的物品。我们把检测到的感兴趣的物品,连同他们的类别名词和精确的像素位置,都储存在一个Class Lookup Table里面。

4ab0326bdaf7158ddb7a7afa83965b69.png
Snap module 场景级别的照片,和mask2pixel映射
  1. “Lookup”: 我们开始进行精确的查表法, 来给第一步得到的masks,都附上一个类别名词。如何建立精确的查找呢?我们引入了Mask2pixel 映射。这个概念就是我们把全部的mask proposals,都按照同样的相机内外参,投影到相同大小的图片里(需要考虑遮挡问题)。这样子就是,每个Snap得到的图片里面,每个mask proposal精确的pixel信息,都是知道的。

然后,我们将这些投影到2D平面上的mask proposal 与2D开放世界场景理解框架检测到的物体进行匹配。我们使用IoU来选择最佳的对应关系。经过全局搜索后,我们引入了局部查找以进一步提高匹配的完整性。在完成全局和局部查找之后,我们再一次优化MPM里所得的 mask proposals,筛选掉未匹配任何检测结果的proposals,从而生成最终的检测结果。

d59138c17b23605fe44732dc31ded68e.png
Mask2pixel guided lookup

MASK-SNAP-LOOK 的独特优点:

除了不需要2D原生图片之外,这套Mask-Snap-Lookup 框架,还具有以下三个优点:

  1. 快速迭代:由于我们将开放世界理解这任务完全交给了2D网络,并且直接利用他们的检测结果,使得我们在切换2D网络的时候也不需要重新进行训练。因此OpenIns3D能够与最新的2D框架无缝结合,使整个网络能够跟上2D进步的步伐。

  2. 加速渲染和推断速度:相对于单独渲染每个mask或object的方法(如pointclip、openmask3d、pointclipv2、OV-3DET),我们的全场景图片渲染策略不仅加速了渲染速度(因为渲染任务减少了),还提高了2D推断速度(因为需要推断的图像数量减少了)。

  3. 推理分割能力:由于2D模型的选择非常灵活,如果我们引入具有强大能力的LLM-based 2D 模型作为检测器,比如LISA, OpenIns3D就可以直接将他们强大的推理分割能力转移到3D. 这使得OpenIns3D能够处理高度复杂的文本输入,这是目前其他3D方法无法实现的。

量化结果

为了公平比较OpenIns3D与当前其他工作的结果,我们采用了每个工作提出的衡量标准。例如,在与PLA-系列工作的比较中,我们根据它们的base-novel类别比较了这些novel-class的结果。尽管OpenIns3D没有使用2D图片,也没有使用base-class进行监督,但在S3DIS数据集上,我们仍然取得了非常高的成绩(高于17.2%)。在开放世界目标检测任务中,与OV-3DET和pointclip等工作进行比较,虽然我们没有使用预训练的模型来提取边界框,但OpenIns3D的性能提升超过了17%,这证明了OpenIns3D的高效性和可行性。在室外数据集上,OpenIns3D也表现出色。

40d9ddf2618ee388cf2c252a6e0355e3.png
量化结果总览
fdac380b4ec9386ec30c5a6ebab0ff15.png
与PLA-系列的比较。S3DIS有非常大的提升
7a6be262c0496151c55772803968a159.png
与主流的OVOD比较,有显著及的提升
92879de92abeb6cbab680ef1efe98184.png
室外数据集也有很好的表现

我们接下里展示一下OpenIns3D的推理分割能力, 以下的OpenIns3D (LISA) 的结果。它能够理解复杂的描述,并在3D世界进行示例分割。

33454c4bd6649c7f2ea9a951c0d8aed4.png
OpenIns3D(LISA)的demo

下面我们展示OpenIns3D 在三个数据集上zero-shot performance 的结果

e95d3adf215df7172d52a55a7e64dec5.png
S3DIS demo
3664d84799787511c45e3bc7a731474a.png
STPLS3D demo
98e6fbe1a587cc75479bcc0ead3e6079.png
ScanNetv2 Demo

更多结果可以在我们的project page上看到:OpenIns3D

其他尝试:

在进行这项工作时,我们进行了大量的渲染思路测试,包括类似于NIPS2022工作look around and refer的思路、mesh渲染思路,甚至包括OpenMask3D的思路,我们从头到尾都进行了尝试。然而,我们认为最后提出的这个场景级渲染的思路,在各个方面都有更多的优势。有关其他尝试的详细信息,请参阅原文。最后:

我们希望OpenIns3D能够为领域的研究者提供一种崭新的3D开放世界感知思路,并显著提升大家对几个benchmark SOTA 结果的期望值。我们将尽快在点云感知领域的专门GitHub组Pointcept上发布我们的代码。

GitHub链接:https://github.com/Pointcept/OpenIns3D

如果您对我们的工作感兴趣,或者想亲自测试OpenIns3D的性能,请给这个项目加星(star),以便随时关注和参与我们的进展。我们非常感谢您的支持和关注!

投稿作者为『自动驾驶之心知识星球』特邀嘉宾,如果您希望分享到自动驾驶之心平台,欢迎联系我们!

① 全网独家视频课程

BEV感知、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署协同感知语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

5cc67eb3fad9de97f48aefc87900462f.png 视频官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

近2000人的交流社区,涉及30+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(2D检测、分割、2D/3D车道线、BEV感知、3D目标检测、Occupancy、多传感器融合、多传感器标定、目标跟踪、光流估计)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!

fec48d76570e5e34ecbd6015130465f3.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、点云处理、端到端自动驾驶、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

66cb9860f1cbe6fc28f7d53ec8d90b3a.jpeg

④【自动驾驶之心】平台矩阵,欢迎联系我们!

b42243fb0a91733f211858f573bc0356.jpeg

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值