
# CNOS：基于CAD的新颖物体分割的强大基准

Van Nguyen Nguyen $^{1}$ Thibault Groueix $^{2}$ Georgy Ponimatkin $^{1}$ Vincent Lepetit $^{1}$ Tomas Hodan $^{3}$

$^{1}$LIGM、巴黎高等桥路学校 $^{2}$Adobe $^{3}$Meta旗下的Reality Labs

源代码：<https://github.com/nv-nguyen/cnos>

## 摘要

我们提出了一种简单却强大的方法，能够利用CAD模型从RGB图像中分割出新颖物体。借助最新的基础模型——Segment Anything和DINOv2，我们在输入图像中生成分割候选区域，并将其与预先利用CAD模型渲染的物体模板进行匹配。匹配过程通过比较候选区域和模板的DINOv2类别标记来实现。该方法的输出是一组分割掩码，以及由匹配得分定义的每个物体的置信度。实验表明，在BOP挑战赛的七个核心数据集上，所提方法在基于CAD的新颖物体分割任务中取得了最先进的结果，其平均精度（AP）比Chen等人提出的最新方法高出19.8%。

### 1. 引言

物体姿态估计在机器人技术和增强现实应用中发挥着关键作用。尽管监督式深度学习方法取得了显著性能，但它们依赖针对每个目标物体的大量训练数据[^16] [^23] [^24]。因此，要对训练期间未见过的物体进行姿态估计，就需要投入大量精力来合成或标注数据并重新训练模型，这限制了监督式方法在工业领域的应用。例如，在物流仓库中，为每种新产品重新训练姿态估计方法显然是不切实际的。

物体姿态估计通常包含两个主要步骤：（1）在输入图像中检测/分割目标物体；（2）根据检测到的区域估计6D物体姿态[^23]。template-pose[^19]和MegaPose[^17]等近期研究提出了有效的基于CAD的物体姿态估计方法。不过，这些方法主要聚焦于第二步，且需要输入的2D边界框，这就限制了它们在能获取精确2D边界框的场景中的应用。

为了填补这一空白，我们提出了一种简单的物体检测与分割方法，该方法仅需目标物体的CAD模型即可实现。

![Image](images/94c61987cdc00d5b9dd10de912fd2dab61a08fcacb05e4c37961008d0a808f3d.jpg)

<div style="text-align: center;">Figure 1. Performance on the seven core BOP datasets [^23]. Our method, CNOS, relies on FastSAM [^28] for generation of segmentation proposals and on DINOv2 [^20] for visual description. CNOS outperforms the unsupervised method of Chen et al. [^2] and even the supervised method Mask R-CNN [^10], which was trained on tens of thousands of images per BOP dataset and used in CosyPose [^16]. Similarly to Mask R-CNN [^10], the runtime of CNOS is dominated by the proposal stage.</div>

该方法被命名为CNOS，即基于CAD的新颖物体分割。

在CNOS中，新物体的接入是通过渲染其CAD模型来实现的，并且每个渲染模板都由DINOv2 cls token [^20]来描述。给定一个RGB输入图像后，可以通过Segment Anything (SAM) [^15]或Fast Segment Anything (FastSAM) [^28]从图像中提取分割建议，再根据这些建议与模板之间DINOv2 cls token的相似度进行匹配。渲染每个CAD模型的模板所需时间不到2秒，这比重新训练监督式方法要快得多——后者通常需要数小时。选择DINOv2来衡量模板与建议之间的相似度，主要是因为它能够有效解决真实图像与合成图像之间的域差异问题。我们还证明，BlenderProc [^3]所采用的照片级真实感渲染技术（渲染一张图像大约需要1秒）可以被用来进一步缩小这种域差异并提高准确率。在BOP挑战赛的七个核心数据集上进行的实验 [^23]

---

证明了CNOS的顶尖性能。

如图1所示，CNOS的表现优于Chen等人提出的基于CAD的无监督分割方法 [^2]，甚至也优于Mask R-CNN [^10]——这是一种在BOP数据集的每个类别上用数万张图像训练而成的监督式方法，还被应用于CosyPose [^16]中。

### 2. 相关工作

本节简要概述了6D物体姿态估计流程中常用的现有物体检测与分割方法。

已知物体的分割。许多物体姿态估计方法 [^16] [^24] 会采用Mask R-CNN [^10]等物体分割方法，通常还需针对每个目标物体在特定的大量训练数据上进行微调 [^23]。这类监督式方法在存在严重遮挡和光照变化的复杂场景中已被证明具有鲁棒性。然而，这些方法在没有重新训练的情况下无法处理新物体，这对许多应用场景而言是致命缺陷。在本研究中，我们针对这一局限展开探索：无需重新训练，仅利用CAD模型即可对此前未见过的物体进行分割。

未知物体的分割。物体分割方法传统上聚焦于所谓的“封闭世界”场景，即训练集与测试集共享相同的物体类别。不过，Du等人 [^6] [^7] 的最新研究指出，类无关的实例分割网络能够有效泛化到此前未见过的物体类别。基于这一发现，Zhao等人 [^29] 利用显著性检测模型来解决二维分割中的新类别发现任务。Nguyen等人 [^18] 则基于这些观察结果提出了一种两阶段的6D跟踪方法。他们的方法假设已有初始边界框，可借助 [^6] 对物体进行分割，随后利用光流将边界框传递到后续帧中。之后，再基于预测的物体掩码对新颖物体进行6D跟踪。相比之下，我们的目标仅仅是基于CAD模型生成的图像来分割物体，且无需初始边界框。

UOIS-Net [^27]常用于机器人领域，它采用两阶段方法来分割新物体。该方法利用采集到的RGB-D图像的深度通道来生成物体实例中心投票，并将其组合成粗略的初始掩码；随后再利用RGB通道对这些掩码进行细化。Xiang等人 [^26]也提出了一种基于RGB-D的方法，该方法利用学习到的特征嵌入，并应用均值漂移聚类算法来发现并分割未见过的物体。为避免使用深度信息，Durner等人 [^8]利用水平相关性来提取基于视差的RGB特征，从而从立体RGB图像中分割新物体。值得注意的是，UOIS-Net [^27]、Xiang等人 [^26]以及Durner等人 [^8]均采用RGB-D或立体RGB方法，而我们的方法旨在仅通过单张RGB图像和CAD模型来实现未见物体的分割，实用性更强。

近期，Segment Anything (SAM) [^15]推出了一种强大的图像分割基础模型，能够对给定RGB图像中的所有物体进行分割。Chen等人 [^2]利用SAM提取物体候选区域，再将其与ImageBlind [^9]提取的视觉线索相结合；随后通过特征匹配来实现基于CAD的新物体分割。本文的实验结果表明，CNOS在AP指标上比Chen等人的方法高出19.8%。

### 3. 方法

在本节中，我们将详细介绍基于CAD的新物体分割的三阶段方法。首先在第3.1节介绍导入阶段，该阶段会从CAD模型的渲染图中提取视觉描述符；第3.2节将阐述候选区域生成阶段，即获取所有可能的掩码及其描述符；最后在第3.3节讨论匹配阶段，根据CAD模型的视觉描述符来检索并标记物体掩码。

#### 3.1. 导入阶段

在导入阶段，我们渲染一组RGB合成模板，并利用DINOv2 [^20]提取其视觉描述符。为确保在不同视角下都能实现稳健的物体分割，我们按照图3所示，从42个视角对CAD模型进行渲染。这42个视角由Blender中的球体原语定义 $^1$，正如[^19]中所展示的，这种定义方式能为CAD模型提供分布良好的视角覆盖，从而实现稳健的模板匹配。此外，我们还将球体上的每个三角形划分为四个更小的三角形，以尝试获取更密集的视角。渲染过程最终会生成N $_o$V个模板，其中N $_o$表示CAD模型的数量，V表示视角数量。随后我们利用真实边界框对模板进行裁剪，并将DINOv2的c1s令牌作为其视觉描述符D $_r$，其大小为N $_o$ $\times$ V $\times$ C。默认情况下，我们取V = 42，C = 1024。

#### 3.2. 候选区域生成阶段

对于每张测试用的RGB图像，我们使用默认配置的SAM [^15]或FastSAM [^28]来生成一组$N_p$个未标记的候选区域，其中每个候选区域i由一个掩码$M_i$定义。$N_p$的数值并非固定，会根据输入的RGB图像内容而变化。

为了计算每个候选区域i的视觉描述符，我们首先利用对应的掩码$M_{i}$去除输入图像中的背景，随后对图像进行裁剪。

---

![Image](images/1437a594b1a7dcbea8176010827007728cd4e8727e4d34d02a3dcd154ab01f12.jpg)

<div style="text-align: center;">Figure 2. CNOS overview. Given CAD models of the target objects, the objects are onboarded by (i) rendering a set of templates showing the models from different viewpoints, and (ii) describing the templates by the DINOv2 cls token (Section 3.1). At inference time, segmentation proposals are generated from the input RGB image using SAM or FastSAM (Section 3.2), and the proposals are matched against the templates by comparing their DINOv2 cls tokens (Section 3.3).</div>

我们使用从 $M_i$ 得到的模型边界框。由于每个候选掩码 $M_i$ 的边界框大小不同，因此无法并行处理。为解决这一问题，我们增加了一个简单的图像处理步骤，包括缩放和填充，以便将所有候选对象调整为统一的大小 $224 \times 224$。这种标准化处理使得能够在一个批次中高效地对候选对象进行并行处理。接着，我们从处理后的候选对象中提取 DINOv2 分类标记，并将其作为大小为 $D_p$ 的视觉描述符 $N_p \times C$。

#### 3.3. 匹配阶段

匹配阶段的目标是为每个候选对象 i 分配一个物体 ID $o_i$ 和置信度分数 $s_i$。为此，我们使用余弦相似度将 $\mathbf{D}_p$ 中的每个候选描述符与 $\mathbf{D}_r$ 中的每个模板描述符进行比较。这一比较步骤会生成一个大小为 $N_p \times N_o \times V$ 的相似度矩阵。

视图聚合。通过对每个 CAD 模型的所有 V 个模板的相似度分数进行聚合，我们得到一个大小为 $N_p \times N_o$ 的矩阵。该矩阵表示了每个候选对象 $p_i$ 与每个 CAD 模型之间的相似度。我们尝试了不同的聚合函数，如均值、最大值、中位数以及前 k 个最大值的均值（记为 $Mean_k$），结果发现 $Mean_k$ 能产生最佳结果。

物体 ID 分配。为了给每个候选对象分配物体 ID $o_i$ 和置信度分数 $s_i$，我们只需在包含 $N_p \times N_o$ 个物体的相似度矩阵 $N_o$ 上应用 argmax 和 max 函数。这样就能得到一个大小为 $N_p$ 的相似度矩阵，用于定义 $N_p$ 个候选对象的置信度分数。

输出。在匹配阶段结束时，我们会得到一组已标注的候选对象，每个候选对象被定义为 $\{M_i, o_i, s_i\}$，其中 $M_i$ 是模态掩码（即覆盖物体表面可见部分的掩码 [^23]），$o_i$ 是物体 ID，$s_i$ 是置信度分数。其中一些候选对象可能仍被错误标注。为解决这一问题，可以对置信度分数设置阈值 $\delta$。第 4.2 节中的图表展示了采用 $\delta = 0.5$ 时 CNOS 的分割结果。

### 4. 实验

在本节中，我们将介绍实验设置（第 4.1 节），在 BOP 挑战赛的七个核心数据集 [^2] 上将我们的方法与以往工作 [^10] [^22] [^23] 进行比较（第 4.2 节），并针对不同聚合函数及不同渲染视点数量下的准确性以及运行时间开展消融研究（第 4.3 节）。最后，我们将探讨 CNOS 在新物体 6D 位姿估计流程（第 4.4 节）或无 CAD 的新物体分割中的应用。

#### 4.1. 实验设置

数据集。我们在BOP挑战赛的七个核心数据集测试集上评估我们的方法 [^23]：LineMod Occlu-

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2" colspan="2">Method</td><td rowspan="2">Rendering</td><td colspan="7">BOP Datasets</td><td rowspan="2">Mean</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LM-O</td><td style='text-align: center; word-wrap: break-word;'>T-LESS</td><td style='text-align: center; word-wrap: break-word;'>TUD-L</td><td style='text-align: center; word-wrap: break-word;'>IC-BIN</td><td style='text-align: center; word-wrap: break-word;'>ITODD</td><td style='text-align: center; word-wrap: break-word;'>HB</td><td style='text-align: center; word-wrap: break-word;'>YCB-V</td></tr><tr><td rowspan="4">Supervised</td><td style='text-align: center; word-wrap: break-word;'>1 Mask R-CNN [^10] (Synth)</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>37.5</td><td style='text-align: center; word-wrap: break-word;'>51.7</td><td style='text-align: center; word-wrap: break-word;'>30.6</td><td style='text-align: center; word-wrap: break-word;'>31.6</td><td style='text-align: center; word-wrap: break-word;'>12.2</td><td style='text-align: center; word-wrap: break-word;'>47.1</td><td style='text-align: center; word-wrap: break-word;'>42.9</td><td style='text-align: center; word-wrap: break-word;'>36.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2 Mask R-CNN [^10] (Real)</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>37.5</td><td style='text-align: center; word-wrap: break-word;'>54.4</td><td style='text-align: center; word-wrap: break-word;'>48.9</td><td style='text-align: center; word-wrap: break-word;'>31.6</td><td style='text-align: center; word-wrap: break-word;'>12.2</td><td style='text-align: center; word-wrap: break-word;'>47.1</td><td style='text-align: center; word-wrap: break-word;'>42.9</td><td style='text-align: center; word-wrap: break-word;'>39.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3 ZebraPose [^22] (Synth)</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>50.6</td><td style='text-align: center; word-wrap: break-word;'>62.9</td><td style='text-align: center; word-wrap: break-word;'>51.4</td><td style='text-align: center; word-wrap: break-word;'>37.9</td><td style='text-align: center; word-wrap: break-word;'>36.1</td><td style='text-align: center; word-wrap: break-word;'>64.6</td><td style='text-align: center; word-wrap: break-word;'>62.2</td><td style='text-align: center; word-wrap: break-word;'>52.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4 ZebraPose [^22] (Real)</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>50.6</td><td style='text-align: center; word-wrap: break-word;'>70.9</td><td style='text-align: center; word-wrap: break-word;'>70.7</td><td style='text-align: center; word-wrap: break-word;'>37.9</td><td style='text-align: center; word-wrap: break-word;'>36.1</td><td style='text-align: center; word-wrap: break-word;'>64.6</td><td style='text-align: center; word-wrap: break-word;'>74.0</td><td style='text-align: center; word-wrap: break-word;'>57.8</td></tr><tr><td rowspan="4">Unsupervised</td><td style='text-align: center; word-wrap: break-word;'>5 Chen et al. [^2]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>17.6</td><td style='text-align: center; word-wrap: break-word;'>9.6</td><td style='text-align: center; word-wrap: break-word;'>24.1</td><td style='text-align: center; word-wrap: break-word;'>18.7</td><td style='text-align: center; word-wrap: break-word;'>6.3</td><td style='text-align: center; word-wrap: break-word;'>31.4</td><td style='text-align: center; word-wrap: break-word;'>41.9</td><td style='text-align: center; word-wrap: break-word;'>21.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6 CNOS (SAM)</td><td style='text-align: center; word-wrap: break-word;'>Pyrender [^21]</td><td style='text-align: center; word-wrap: break-word;'>33.3</td><td style='text-align: center; word-wrap: break-word;'>38.3</td><td style='text-align: center; word-wrap: break-word;'>35.8</td><td style='text-align: center; word-wrap: break-word;'>27.2</td><td style='text-align: center; word-wrap: break-word;'>14.8</td><td style='text-align: center; word-wrap: break-word;'>45.9</td><td style='text-align: center; word-wrap: break-word;'>57.6</td><td style='text-align: center; word-wrap: break-word;'>36.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>7 CNOS (SAM)</td><td style='text-align: center; word-wrap: break-word;'>BlenderProc [^3]</td><td style='text-align: center; word-wrap: break-word;'>39.6</td><td style='text-align: center; word-wrap: break-word;'>39.7</td><td style='text-align: center; word-wrap: break-word;'>39.1</td><td style='text-align: center; word-wrap: break-word;'>28.4</td><td style='text-align: center; word-wrap: break-word;'>28.2</td><td style='text-align: center; word-wrap: break-word;'>48.0</td><td style='text-align: center; word-wrap: break-word;'>59.5</td><td style='text-align: center; word-wrap: break-word;'>40.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>8 CNOS (FastSAM)</td><td style='text-align: center; word-wrap: break-word;'>BlenderProc [^3]</td><td style='text-align: center; word-wrap: break-word;'>39.7</td><td style='text-align: center; word-wrap: break-word;'>37.4</td><td style='text-align: center; word-wrap: break-word;'>48.0</td><td style='text-align: center; word-wrap: break-word;'>27.0</td><td style='text-align: center; word-wrap: break-word;'>25.4</td><td style='text-align: center; word-wrap: break-word;'>51.1</td><td style='text-align: center; word-wrap: break-word;'>59.9</td><td style='text-align: center; word-wrap: break-word;'>41.2</td></tr></table>

<div style="text-align: center;">Table 1. Comparison of CNOS with [^2] [^10] [^22] on the seven core datasets of the BOP challenge [^23]. Mask R-CNN and ZebraPose are retrained specifically on the target objects with renderings of the CAD models (noted as “Synth”) or real images of the object (noted as “Real”). We classify these methods as “supervised”. CNOS and Chen et. al. [^2] are classified as “unsupervised” as these methods require no retraining for novel objects. We report the AP metric (higher is better) using the protocol from [^23]. The best supervised results are highlighted in blue and the best unsupervised results in yellow. CNOS not only significantly outperforms [^2] under the same settings but also surpasses the supervised method Mask R-CNN, highlighting its ability to generalize.</div>

![Image](images/ac74f964a8ba674552953b0938779179103c08f79200c5d768e3c11b6e4a3fda.jpg)

<div style="text-align: center;">Figure 3. Visualization of templates for the “benchwise” object from LM-O [^11] rendered with Pyrender [^21]. 42 templates were rendered from viewpoints defined by the icosphere [^19].</div>

sion (LM-O) [^1]、T-LESS [^12]、TUD-L [^13]、IC-BIN [^4]、ITODD [^5]、HomebrewedDB (HB) [^14]以及YCB-Video (YCB-V) [^25]。总体而言，这些数据集包含132种不同物体，它们出现在存在遮挡的杂乱场景中。这些物体类型多样：有纹理或无纹理、对称或不对称、家用或工业用。

评估指标。我们遵循COCO指标和BOP挑战赛的评估协议，采用平均精度（AP）指标来评估我们的方法[^23]。AP指标是通过计算不同交并比（IoU）阈值下的AP值的平均值得出的，这些阈值的范围从0.50到0.95，步长为0.05。

基准方法。我们将我们的方法与Chen等人提出的方法进行比较[^2]，这是与我们最相关的工作。他们采用了一种基于CAD的三阶段物体分割方法，其中使用SAM进行图像分割[^15]，使用ImageBlind提取视觉描述符[^9]。根据他们的论文，每个CAD模型使用72个模板时性能最佳。此外，我们还将我们的方法与BOP挑战赛中的两种相关监督学习方法进行比较[^23]：Mask R-CNN[^10]，它针对每个数据集的特定真实或合成训练图像进行训练，并被用于CosyPose[^16]；以及ZebraPose[^22]，它目前是BOP挑战赛中该任务的最先进方法。

实现细节。在提案生成阶段，我们使用默认的ViT-H SAM[^15]或默认的FastSAM[^28]，它们在运行效率方面表现出色。在提取视觉描述符时，我们使用DINOv2的默认ViT-H模型[^20]。

为了进一步评估我们方法的性能，我们使用了两组模板进行比较。第一组模板是通过Pyrender从42个预定义视点生成的[^21]。值得注意的是，Pyrender能够计算直接光照，且速度极快，平均每幅图像仅需0.026秒。第二组模板由从BOP挑战赛提供的PBR-BlenderProc4BOP训练集中的合成图像中选取的42个逼真渲染模板组成。这些逼真模板是经过特别挑选的，以匹配第一组中的42个预定义视点的方向。由于PBR-BlenderProc4BOP训练图像可能存在遮挡现象，我们只选择了目标物体完全可见的图像。最终，通过利用真实掩码将背景设为黑色，并裁剪出真实边界框内的区域，得到了目标物体的模板。

---

![Image](images/e351a558c3792c1af755ebf02fe18aa79cd2305a970e22c05877cf8126a36185.jpg)

<div style="text-align: center;">Figure 4. Qualitative results on LM-O [^1], HB [^14] and YCB-V [^25]. The first column shows the input CAD models. In cases where there are more than 16 models, we only show the first 16 to ensure better visibility. The second column shows the input RGB image and the last two columns depict the detections produced by CNOS (SAM) and CNOS (FastSAM) with confidence scores greater than 0.5. Interestingly, in the last row, even though the segmentation proposals in CNOS (SAM) and CNOS (FastSAM) are very similar, their final labels differ for a few objects. This inconsistency arises from DINOv2-based classification of the proposals as discussed in Section 4.2.</div>

为了在所有数据集上保持一致的运行时，我们在保留图像宽高比的同时对图像进行缩放。具体来说，我们确保每张输入的RGB测试图像的宽度固定为640像素。所有实验均在单个V100 GPU上完成。

#### 4.2. 与最先进方法的比较

在表1中，我们可以看到CNOS的AP值比Chen等人的方法高出19.8%，这一差距相当显著[^2]。此外，尽管我们的方法并未在BOP数据集的测试物体上进行训练，但其性能仍超过了在CosyPose中使用的、专门针对这些物体训练的Mask R-CNN[^10] [^16]。这凸显了我们方法的泛化能力。

从定性结果来看，生成的分割提案通常与目标物体实例高度吻合，而大多数错误源于基于DINOv2的提案分类出现偏差。改进提案分类对于缩小CNOS与ZebraPose等监督式最先进方法之间的差距至关重要。

在图4中，我们展示了该方法在LM-O [^1]、HB [^14]和YCB-V [^25]数据集上的定性结果。

#### 4.3. 消融实验

模型大小与运行时间。我们在表2中给出了使用不同基础模型的FastSAM和DINOv2的结果，突出了精度与运行时间之间的权衡。

渲染效果。表1展示了我们使用两种渲染方式的方法性能：第6行的Pyrender [^21]和第7行的BlenderProc [^3]。结果表明，引入逼真的渲染能显著缩小合成图像与真实图像之间的域差异，使AP指标提升4.3%。

视点数量。如表3所示，使用更多视点与使用粗略视点相比并未带来任何性能提升。这是因为现有的42个粗略视点已经能够充分覆盖3D物体。

聚合函数。在表4中，我们探讨了用于聚合模板与候选物描述符之间相似度的不同类型的函数。在测试的函数中，$Mean_{k}$（k=5）——即k个最高相似度值的平均值——取得了最佳性能。

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Segmentation model</td><td style='text-align: center; word-wrap: break-word;'>Descriptor model</td><td style='text-align: center; word-wrap: break-word;'>AP</td><td style='text-align: center; word-wrap: break-word;'>Run-time (s)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FastSAM-s</td><td style='text-align: center; word-wrap: break-word;'>ViT-s</td><td style='text-align: center; word-wrap: break-word;'>32.1</td><td style='text-align: center; word-wrap: break-word;'>0.18</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FastSAM-s</td><td style='text-align: center; word-wrap: break-word;'>ViT-l (default)</td><td style='text-align: center; word-wrap: break-word;'>33.8</td><td style='text-align: center; word-wrap: break-word;'>0.25</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FastSAM-x (default)</td><td style='text-align: center; word-wrap: break-word;'>ViT-s</td><td style='text-align: center; word-wrap: break-word;'>38.0</td><td style='text-align: center; word-wrap: break-word;'>0.27</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FastSAM-x (default)</td><td style='text-align: center; word-wrap: break-word;'>ViT-l (default)</td><td style='text-align: center; word-wrap: break-word;'>39.7</td><td style='text-align: center; word-wrap: break-word;'>0.33</td></tr></table>

<div style="text-align: center;">Table 2. Ablation study of different FastSAM segmentation models [^28] and DINOv2 descriptor models [^20] on LM-O.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Method</td><td colspan="2">Viewpoint density</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Coarse (42)</td><td style='text-align: center; word-wrap: break-word;'>Dense (162)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (SAM)</td><td style='text-align: center; word-wrap: break-word;'>39.6</td><td style='text-align: center; word-wrap: break-word;'>39.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (FastSAM)</td><td style='text-align: center; word-wrap: break-word;'>39.7</td><td style='text-align: center; word-wrap: break-word;'>39.7</td></tr></table>

<div style="text-align: center;">Table 3. Ablation study of the number of viewpoints on LM-O. The denser viewpoints are created by subdividing each triangle of the icosphere (used to create coarse viewpoints) into four triangles.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Method</td><td colspan="4">Aggregating function</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>Median</td><td style='text-align: center; word-wrap: break-word;'>Max</td><td style='text-align: center; word-wrap: break-word;'>$Mean_{k}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (SAM)</td><td style='text-align: center; word-wrap: break-word;'>36.6</td><td style='text-align: center; word-wrap: break-word;'>34.9</td><td style='text-align: center; word-wrap: break-word;'>39.1</td><td style='text-align: center; word-wrap: break-word;'>39.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (FastSAM)</td><td style='text-align: center; word-wrap: break-word;'>36.2</td><td style='text-align: center; word-wrap: break-word;'>33.8</td><td style='text-align: center; word-wrap: break-word;'>39.7</td><td style='text-align: center; word-wrap: break-word;'>39.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Average</td><td style='text-align: center; word-wrap: break-word;'>36.40</td><td style='text-align: center; word-wrap: break-word;'>34.40</td><td style='text-align: center; word-wrap: break-word;'>39.40</td><td style='text-align: center; word-wrap: break-word;'>39.65</td></tr></table>

<div style="text-align: center;">Table 4. Ablation study of aggregating functions on LM-O. Using the Mean $_{k}$ function, which calculates the average of the top k (k = 5) highest values, yields the best accuracy.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Method</td><td colspan="3">Run-time (second)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Onboarding</td><td style='text-align: center; word-wrap: break-word;'>Proposal</td><td style='text-align: center; word-wrap: break-word;'>Matching</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (SAM, Pyrender)</td><td style='text-align: center; word-wrap: break-word;'>1.22</td><td style='text-align: center; word-wrap: break-word;'>1.58</td><td style='text-align: center; word-wrap: break-word;'>0.13</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (FastSAM, Pyrender)</td><td style='text-align: center; word-wrap: break-word;'>1.22</td><td style='text-align: center; word-wrap: break-word;'>0.22</td><td style='text-align: center; word-wrap: break-word;'>0.12</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CNOS (FastSAM, PBR)</td><td style='text-align: center; word-wrap: break-word;'>42.1</td><td style='text-align: center; word-wrap: break-word;'>0.22</td><td style='text-align: center; word-wrap: break-word;'>0.12</td></tr></table>

<div style="text-align: center;">Table 5. Run-time. We report the run-time of each stage of CNOS on a single V100 GPU. The run-time of the onboarding stage includes both the rendering time and the visual descriptor extraction time for each CAD model.</div>

运行时间。在表5中，我们展示了针对给定CAD模型，该方法各阶段的平均运行时间。在上传阶段，使用Pyrender [^21]生成一张图像的平均渲染时间为0.026秒，而使用BlenderProc [^3]则在单张V100 GPU上大约需要1秒/张图像。需要注意的是，上传阶段是针对每个CAD模型执行一次。从运行时间来看，上传阶段明显受模板生成过程的制约，而候选物生成阶段目前则受分割算法的制约。

#### 4.4. 讨论

姿态初始化。我们最初的意图是利用DINOv2的cls标记不仅识别物体，还能估计其初始姿态，以便后续步骤进行优化。然而，如图5所示，

![Image](images/85ba79a05beadd3a9f8de7fa24c2bb6f75c45117cd9d39bd788d7824f5773126.jpg)

<div style="text-align: center;">Figure 5. Visualization of the nearest neighbors. We show proposals along with five retrieved templates with the most similar DINOv2 cls tokens. The retrieved templates correspond to the same object but to poses that do not match the pose in the proposals – this suggests that the DINOv2 cls token can be effectively used to recognize the objects, but not to estimate the pose.</div>

这种方法并未取得成功，因为DINOv2的cls标记似乎携带了足够的物体身份信息，却没有包含物体姿态信息。

无需CAD模型的新物体分割。在本研究中，我们专注于基于CAD模型的新物体分割。不过，所提出的CNOS方法可以无缝适配到单样本或少样本新物体分割场景，这类场景中仅有少量参考图像且未知CAD模型。具体而言，可以直接从可用的参考图像中提取参考描述符，而流程的其余部分无需改动。

### 5. 结论

我们提出了一种简单却强大的新物体分割方法，仅基于物体的CAD模型即可实现，无需任何训练。该方法达到了惊人的高精度，可与以往在大规模标注数据集上训练的监督式方法相媲美。我们希望CNOS能成为基于CAD模型的新物体分割的标准基准，并能作为新物体姿态估计流程的初始阶段被应用。

致谢。我们感谢Nermin Samet的有益讨论。本研究在巴黎综合理工学院和巴黎高科桥路学校的Energy4Climate跨学科中心（E4C）框架内开展，并得到了第三期未来投资计划[ANR-18-EUR-0006-02]以及巴黎综合理工学院基金会（“负责任能源的技术挑战”讲席，由道达尔能源公司资助）的支持。本研究使用了GENCI–IDRIS提供的HPC资源来完成，项目编号为2022-AD011012294R2。

---

## 参考文献

[^1]: Eric Brachmann, Alexander Krull, Frank Michel, Stefan Gumhold, Jamie Shotton, and Carsten Rother. Learning 6D Object Pose Estimation Using 3D Object Coordinates. In ECCV, 2014. 4, 5

[^2]: Jianqiu Chen, Mingshan Sun, Tianpeng Bao, Rui Zhao, Liwei Wu, and Zhenyu He. 3D Model-Based Zero-Shot Pose Estimation Pipeline. In arXiv Preprint, 2023. 1, 2, 3, 4, 5

[^3]: Maximilian Denninger, Martin Sundermeyer, Dominik Winkelbauer, Youssef Zidan, Dmitry Olefir, Mohamad Elbadrawy, Ahsan Lodhi, and Harinandan Katam. Blender-Proc. In arXiv Preprint, 2019. 1, 4, 5, 6

[^4]: Andreas Doumanoglou, Rigas Kouskouridas, Sotiris Malassiotis, and Tae-Kyun Kim. Recovering 6D Object Pose and Predicting Next-Best-View in the Crowd. In CVPR, 2016. 4

[^5]: Bertram Drost, Markus Ulrich, Paul Bergmann, Philipp Hartinger, and Carsten Steger. Introducing Mvtec Itodd-A Dataset for 3D Object Recognition in Industry. In ICCV Workshops, 2017. 4

[^6]: Yuming Du, Wen Guo, Yang Xiao, and Vincent Lepetit. 1st Place Solution for the UVO Challenge on Image-Based Open-World Segmentation 2021. In ICCV Workshops, 2021. 2

[^7]: Yuming Du, Yang Xiao, and Vincent Lepetit. Learning to Better Segment Objects from Unseen Classes with Unlabeled Videos. In ICCV, 2021. 2

[^8]: Maximilian Durner, Wout Boerdijk, Martin Sundermeyer, Werner Friedl, Zoltan-Csaba Marton, and Rudolph Triebel. Unknown Object Segmentation from Stereo Images. In IROS, 2021. 2

[^9]: Rohit Girdhar, Alaaeldin El-Nouby, Zhuang Liu, Mannat Singh, Kalyan Vasudev Alwala, Armand Joulin, and Ishan Misra. Imagebind: One Embedding Space to Bind Them All. In CVPR, 2023. 2, 4

[^10]: Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick. Mask R-CNN. In ICCV, 2017. 1, 2, 3, 4, 5

[^11]: Stefan Hinterstoißer, Vincent Lepetit, Slobodan Ilic, Stefan Holzer, Gary R. Bradski, Kurt Konolige, and Nassir Navab. Model Based Training, Detection and Pose Estimation of Texture-Less 3D Objects in Heavily Cluttered Scenes. In ACCV, 2012. 4

[^12]: Tomas Hodan, Pavel Haluza, Stepan Obdrzalek, Jiri Matas, Manolis Lourakis, and Xenophon Zabulis. T-LESS: An RGB-D Dataset for 6D Pose Estimation of Texture-Less Objects. In WACV, 2017. 4

[^13]: Tomas Hodan, Frank Michel, Eric Brachmann, Wadim Kehl, Anders Glentbuch, Dirk Kraft, Bertram Drost, Joel Vidal, Stephan Ihrke, Xenophon Zabulis, and Others. Bop: Benchmark for 6D Object Pose Estimation. In ECCV, 2018. 4

[^14]: Roman Kaskman, Sergey Zakharov, Ivan Shugurov, and Slobodan Ilic. Homebreweddb: RGB-D Dataset for 6D Pose Estimation of 3D Objects. In ICCV Workshops, 2019. 4,5

[^15]: Alexander Kirillov, Eric Mintun, Nikhila Ravi, Hanzi Mao, Chloe Rolland, Laura Gustafson, Tete Xiao, Spencer Whitehead, Alexander C. Berg, Wan-Yen Lo, and Others. Segment Anything. In arXiv Preprint, 2023. 1, 2, 4

[^16]: Yann Labbé, Justin Carpentier, Mathieu Aubry, and Josef Sivic. CosyPose: Consistent Multi-View Multi-Object 6D Pose Estimation. In ECCV, 2020. 1, 2, 4, 5

[^17]: Yann Labbé, Lucas Manuelli, Arsalan Mousavian, Stephen Tyree, Stan Birchfield, Jonathan Tremblay, Justin Carpentier, Mathieu Aubry, Dieter Fox, and Josef Sivic. MegaPose: 6D Pose Estimation of Novel Objects via Render & Compare. In CoRL, 2022. 1

[^18]: Van Nguyen Nguyen, Yuming Du, Yang Xiao, Michael Ramamonjisao, and Vincent Lepetit. PIZZA: A Powerful Image-Only Zero-Shot Zero-CAD Approach to 6 DoF Tracking. In International Conference on 3D Vision, 2022. 2

[^19]: Van Nguyen Nguyen, Yinlin Hu, Yang Xiao, Mathieu Salzmann, and Vincent Lepetit. Templates for 3D Object Pose Estimation Revisited: Generalization to New Objects and Robustness to Occlusions. In CVPR, 2022. 1, 2, 4

[^20]: Maxime Oquab, Timothée Darcet, Théo Moutakanni, Huy Vo, Marc Szafraniec, Vasil Khalidov, Pierre Fernandez, Daniel Haziza, Francisco Massa, Alaaeldin El-Nouby, and Others. Dinov2: Learning Robust Visual Features Without Supervision. In arXiv Preprint, 2023. 1, 2, 4, 6

[^21]: Pyrender. <https://github.com/mmatl/pyrender>. 4, 5, 6

[^22]: Yongzhi Su, Mahdi Saleh, Torben Fetzer, Jason Rambach, Nassir Navab, Benjamin Busam, Didier Stricker, and Federico Tombari. ZebraPose: Coarse to Fine Surface Encoding for 6 DoF Object Pose Estimation. In CVPR, 2022. 1, 3, 4

[^23]: Martin Sundermeyer, Tomáš Hodaň, Yann Labbe, Gu Wang, Eric Brachmann, Bertram Drost, Carsten Rother, and Jiří Matas. Bop Challenge 2022 on Detection, Segmentation and Pose Estimation of Specific Rigid Objects. In CVPR, 2023. 1, 2, 3, 4

[^24]: Gu Wang, Fabian Manhardt, Federico Tombari, and Xiangyang Ji. GDR-Net: Geometry-Guided Direct Regression Network for Monocular 6D Object Pose Estimation. In CVPR, 2021. 1,2

[^25]: Yu Xiang, Tanner Schmidt, Venkatraman Narayanan, and Dieter Fox. PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes. In Robotics: Science and Systems Conference, 2018. 4,5

[^26]: Yu Xiang, Christopher Xie, Arsalan Mousavian, and Dieter Fox. Learning RGB-D Feature EMbeddings for Unseen Object Instance Segmentation. In Conference on Robot Learning, 2021. 2

[^27]: Christopher Xie, Yu Xiang, Arsalan Mousavian, and Dieter Fox. Unseen Object Instance Segmentation for Robotic Environments. IEEE Transactions on Robotics and Automation, 37(5), 2021. 2

[^28]: Xu Zhao, Wenchao Ding, Yongqi An, Yinglong Du, Tao Yu, Min Li, Ming Tang, and Jinqiao Wang. Fast Segment Anything. In arXiv Preprint, 2023. 1, 2, 4, 6

[^29]: Yuyang Zhao, Zhun Zhong, Nicu Sebe, and Gim Hee Lee. Novel Class Discovery in Semantic Segmentation. In CVPR, 2022. 2
