MobileSAMv2: Faster Segment Anything to Everything
Abstract
- Segment anything model(SAM)解决了两个实际但具有挑战性的分割任务:分段任何对象(SegAny),它利用某个点来预测单个感兴趣对象的掩码;分段所有对象(SegeEvery),它预测图像上所有对象的掩码。SegAny对SAM来说速度较慢的是其重量级的图像编码器,MobileSAM通过解耦的知识提取解决了这一问题。然而,具有SAM的SegEvery的效率瓶颈在于其掩码解码器,因为它需要首先生成具有冗余网格搜索提示的大量掩码,然后进行过滤以获得最终的有效掩码。我们建议通过仅使用有效提示直接生成最终掩码来提高其效率,该掩码可以通过对象发现获得。我们提出的方法不仅有助于将掩码解码器上的总时间减少至少16倍,而且实现了优异的性能。
- 具体而言,对于带有掩码的LVIS数据集上的零样本对象建议,我们的方法产生了3.6%(42.5%对38.9%)的平均性能提升AR@K 指标的定性结果表明,我们的方法生成了细粒度的掩码,同时避免了事物的过度分割。该项目的目标是比原始SAM更快的SegEvery,称为MobileSAMv2,以区别于目标是更快SegAny的MobileSAM。此外,我们证明了我们新的即时采样也与MobileSAM中的提取图像编码器兼容,为高效的SegAny和SegEvery提供了统一的框架。该代码与MobileSAM项目位于同一链接https://github.com/ChaoningZhang/MobileSAM.
- 论文地址:[2312.09579] MobileSAMv2: Faster Segment Anything to Everything (arxiv.org)
- 前期该团队作者发布了MobileSAM模型,该模型主要是从解耦知识蒸馏(只蒸馏image encoder,mask decoder可以保持不变)的角度进行了轻量化。视觉大模型是指在计算机视觉任务中使用的大型深度学习模型。这些模型通常由深度神经网络构成,具有数以百万计的参数,通过在大规模数据集上进行训练来学习任务的复杂特征和表示。这些视觉大模型能够在图像分类、目标检测、语义分割等视觉任务上取得卓越性能。然而,这些模型通常需要大量的计算资源进行训练和推理,因此轻量化大模型走进了研究人员的视线。
Introduction
- ChatGPT彻底改变了NLP领域,这是生成人工智能(AIGC,又称人工智能生成内容)发展的一个里程碑。在网络规模的文本数据集上训练的GPT系列模型在其开发中发挥着重要作用。随着基础模型在NLP中的成功,像CLIP这样的视觉基础模型已经通过对比学习共同学习文本编码器开发出来。最近,发布了一个名为SAM的视觉基础模型,即分割任何事物模型的缩写,以解决两个实际的图像分割任务:分割任何事物(SegAny)和分割所有事物(SegeEvery)。这两个任务都执行与类无关的掩码分割,但分割内容不同。SegAny利用某个提示(如点或框)来分割图像中感兴趣的单个事物。相比之下,SegEvery的目标是分割图像中的所有事物。SAM因其在这两项任务上令人印象深刻的性能而被广泛应用于广泛的应用。
- SAM依次与两个模块工作:基于ViT的图像编码器和提示引导的掩码解码器。在本工作的剩余部分中,当不混淆时,它们被简单地称为图像编码器和掩码解码器。轻量级掩码解码器采用双向注意力,实现图像嵌入和promt令牌之间的有效交互,以生成细粒度掩码。使SegAny速度变慢的是图像编码器,它比掩码解码器重100+。MobileSAM已经通过以解耦的方式提取轻量级图像编码器来解决这个问题。为了分割所有的东西,SegEvery首先需要重复运行掩码解码器来生成大量的提议掩码,然后选择高质量和不重叠的掩码。
- 这将计算瓶颈从图像编码转移到了掩码生成和过滤。本质上,SegEvery不是一个可提示的分割任务,因此可以在不使用提示的情况下直接生成掩码。[Fast segment anything]中尝试了这种无提示的方法,它生成了边界不太令人满意的掩模(见第6.1节中的分析)。具有双向注意力的掩码解码器解决了这个问题,但代价是使SegEvery慢得多。为此,我们遵循[Segment anything]中SegEvery的做法,提示掩码解码器保证生成掩码的质量,但通过减少提示次数来解决其低速问题。
- [SAM]中的SegEvery提示图像编码器对前景点进行网格搜索。当网格搜索稀疏时,许多小东西或有意义的对象部分可能会被检测到而丢失。因此,[sam]中的SegEvery采用了高网格密度,如零样本对象建议的64×64点,这往往对大型对象有冗余提示。本质上,它采用了一种策略,首先生成许多掩码,其中大多数是冗余的,然后过滤冗余的掩码。直观地说,这个过程可以通过只生成有效的掩码来简化,这节省了掩码生成的时间,并消除了掩码过滤的需要。
- 受这种直觉的启发,我们提出了一种高效的提示采样方法,用于寻找对象感知提示。幸运的是,这是现代物体检测中一个很好解决的问题。在这项工作中,我们采用了YOLOv8,这是一种SOTA架构,用于带边界框的高效检测。为了避免过度拟合任何特定的数据集,应该在开放世界数据集上训练模型,为此选择SA-1B数据集的子集。对于生成的长方体,我们可以使用其中心作为对象感知点提示,也可以直接采用长方体本身作为提示。点提示的一个问题是,它需要预测每个提示三个输出掩码来解决模糊性问题。边界框信息量更大,模糊性更小,因此更适合用于高效的SegEvery。
- 总体而言,该项目旨在使SegEvery在[sam]中更快地实现竞争性能。我们将此项目命名为MobileSAMv2,以区分使SegAny更快的MobileSAM。总的来说,这项工作的贡献总结如下。
- 我们确定了SAM中SegEvery速度较慢的原因,并提出了对象感知框提示来取代默认的网格搜索点提示,这显著提高了其速度,同时实现了总体卓越的性能。
- 我们证明,我们提出的对象软件即时采样策略与MobileSAM中的提取图像编码器兼容,这进一步为高效的SegAny和SegEvery提供了统一的框架。
Related Work
- SAM的进展。自2023年4月出现以来,SAM在许多GitHub项目和研究文章中得到了广泛研究。SegAny的性能已在各种具有挑战性的设置中进行了研究,包括医学图像、camouflaged 对象和transparent 对象。总体而言,SAM表现出强大的泛化性能,但当设置变得更具挑战性时,可以改进。在Attack SAM中已经研究了它在对抗性设置中的泛化,这表明SAM的输出掩码可以很容易地被恶意生成的扰动操纵。后续工作进一步研究SAM上产生的对抗性扰动在跨模型可转移性和跨样本可转移性方面的性能。在后续工作中研究了SAM的全面鲁棒性评估,表明SAM对风格转移、常见损坏、局部遮挡具有鲁棒性,但对对抗性扰动没有鲁棒性。
- SAM的多功能性已经在另一项工作中得到了证明。尽管SAM在原始论文中被证明与文本提示兼容作为概念证明,但其官方代码中并未包含此功能。Grounded SAM项目将Grounding DINO与SAM相结合,用于文本引导的提示分割。具体来说,Grounding DINO利用一个框来生成一个边界框,该边界框可以用作SAM预测掩码的提示。Semantic segment anything project引入CLIP为SAM的预测掩码分配标签。SAM也被证明可用于图像编辑、修复任务和视频中的对象跟踪。除了2D,SAM还可用于3D对象重建,即从单个图像中辅助3D模型生成。PersoalizeSAM 为定制的SAM一次性个性化SAM。[Segment anything in high quality]中引入了高质量token,以提高预测掩码的质量。建议读者参考[A survey on segment anything model (sam): Vision foundation model meets prompt engineering],了解SAM的最新进展。
- Class-agnostic segmentation. 检测是一项基本的计算机视觉任务,用于定位图像上的感兴趣对象。检测通过方框粗略定位对象,而分割通过分配逐像素掩码执行更细粒度的定位。从给定的掩码推导框是简单的,但反之亦然,这表明分割任务比检测更复杂。除了分配掩码外,图像分割(如语义分割)通常包括从预定义的类集中预测其相应的语义标签。然而,它离实际应用还很远,因为在现实世界中可以有无限的类。为此,一系列工作试图通过不考虑它们的语义标签来将它们扩展到开放世界。类不可知对象检测在中首次正式提出,将平均召回率作为评估其性能的指标,然后用作一种新的预训练技术。[Classagnostic object detection with multi-modal transformer]中显示了多模 transformer,其性能令人满意。
- 开放世界实例分割已被广泛用于实现类不可知的检测和分割。与他们将对象视为一个整体相比,后续工作[Towards open-world segmentation of parts]研究了开放世界对象的部分分割。最近,SAM解决了SegEvery任务,该任务分割所有事物,包括所有对象及其有意义的部分。在多个Github项目(CLIP-SAM、Segment Anything CLIP、segmentanything with CLIP)中已经表明,从SegEvery with SAM获得的类不可知分割掩码可以与CLIP组合,在开放世界中产生语义感知分割。
Segment Everything
- 任务定义。传统的图像分割预测逐像素掩模及其对应的类标签。然而,在不同的数据集中,类可能是不明确的。例如,CIFAR10数据集有一个狗类,而ImageNet-1K有几百个类来指示各种品种的狗。另一种设置可能会将它们分为幼犬或成年犬,而不是它们的品种。这使得当考虑语义时,开放世界图像分割是不可处理的。当与标签预测解耦时,开放世界图像分割变得相对容易,但仍然是一个具有挑战性的问题。
- 在没有语义信息的情况下,图像中的区域是被认为是物体还是由掩码表示的事物可能是主观的。这种不适定性至少在一定程度上与粒度的模糊性有关。例如,当粒度太大时,它可能只检测到一个大对象,而忽略其有意义的对象部分。当粒度太小时,每个像素都可以独立分割,这是琐碎和无意义的。换句话说,开放世界图像分割需要分割所有事物,包括整个对象及其有意义的部分,即一切。本质上,它是一个在开放世界中执行零样本对象建议生成的类认知分割任务。在[SAM]中,这项任务被称为分段所有(SegEvery),我们遵循[SAM]采用相同的名称以避免混淆。
- Prompt-aware Solution. SAM是解决可提示分割任务的开创性工作。具体来说,它通过一定的提示对任何感兴趣的对象进行分段,在[SAM]中被命名为分段任意对象(SegAny)。基于此,SAM通过向SAM解码器提示前景点的搜索网格,为SegEvery任务提供了一个简单的解决方案。这种方法的一个根本问题是性能高度依赖于网格密度。直观地说,更高的网格密度往往会产生更高的性能,但代价是显著增加计算开销。与MobileSAM正交,该项目名为MobileSAMv2,用于术语区分,旨在通过提出一种新的采样策略来减少采样提示的数量,从而使SegEvery更快。我们的解决方案显著提高了效率,同时实现了整体卓越的性能。在下面的部分中,我们将说明我们的解决方案背后的动机及其详细实施。
Method
Motivation and Framework
- [SAM]中提出的即时感知解决方案在具有挑战性的SegEvery任务中表现出了令人印象深刻的性能。它采用了先生成冗余掩码,然后对其进行过滤以获得最终有效掩码的策略。直观地说,这个过程可能不必要地繁琐,并且可以通过只使用有效提示提示掩码解码器来简化,这节省了掩码生成的时间,并且不需要执行任何过滤。
- 我们方法的核心在于用对象感知提示采样取代默认的网格搜索提示采样。这种策略可以归结为确定图像上的某个区域中是否存在对象。现代的物体检测任务已经通过用边界框定位物体来解决这个问题。大多数生成的边界框相互重叠,因此需要在用作有效提示之前进行预过滤。在没有额外先验知识的情况下,我们推导出过滤器左边界框中心作为前景点,适度假设框中心点在对象上。
- 此外,SAM的掩码解码器也接受框作为提示。因此,我们还尝试直接使用剩余的框作为提示。总体而言,我们提出的SegEvery框架由两个阶段组成:对象感知的提示采样和提示引导的掩码解码。第一阶段依靠现代物体检测网络对提示进行采样,第二阶段遵循SAM执行提示引导的掩码解码。
Object-Aware Prompt Sampling
- 在某些情况下(如视觉语言任务),对象发现已被广泛用作避免穷举滑动窗口搜索的预处理技术。受他们实践的启发,我们建议利用对象发现来进行采样提示。从本质上讲,对象发现是用边界框来定位对象,这可以通过现代对象检测模型来实现,但不包括其分类头。
- 在过去的十年里,目标检测模型的发展取得了巨大的进步,YOLO家族模型因其在实时性能方面的优势而成为事实上的标准选择。为了防止过度拟合任何特定领域,所选的YOLOv8模型需要在开放世界数据集上进行训练,为此选择SA-1B数据集的一小部分。在边界框和遮罩的监督下训练模型,然后仅使用边界框损失进行微调。这种训练方法也有助于与无提示方法进行比较。这会生成许多重叠的框,这些框在用作提示之前需要进行过滤。按照标准做法,我们采用NMS来过滤重叠的盒子。使用过滤后的边界框,我们可以使用其中心作为对象感知点提示,也可以直接采用框本身作为提示。
- 在实践中,我们选择后一种策略有多种原因。即使中心点是对象感知的,它也是基于边界框内的对象覆盖中心点的假设。这在大多数情况下都适用,但并非所有情况都适用。点提示的另一个问题是,它需要预测三个输出掩码来解决模糊性问题,这需要额外的掩码过滤。相比之下,框提示信息量更大,生成的高质量掩码模糊性更小,这减少了预测三个掩码的需要,因此更有利于高效的SegEvery。
Prompt-guided Mask Decoding
- 我们遵循SAM以批量方式执行提示引导的掩码解码。与图像编码器将图像样本的数量设置为批相比,这里的批概念是提示的数量。值得注意的是,SAM中的提示引导掩码解码器也接受框作为输入。因此,用一组框直接提示掩码解码器在技术上是可行的,这些框节省了导出中心点的过程。尽管这不是我们最初的动机,但在不造成任何额外成本的情况下,我们发现这种做法带来了不小的性能提升。换句话说,它可以被视为提高任务性能的免费技巧。[SAM]中的即时感知解决方案需要掩码过滤。根据经验,我们发现这个过程可能非常慢,因为掩码是高维的。这与有效的框过滤不同,因为框只有四个维度。这种繁琐的掩码过滤在我们提出的SegEvery框架中是可选的,因为我们可以通过仅使用有效提示提示掩码解码器来避免它。换句话说,我们保留所有生成的掩码,因为提示是以对象感知的方式采样的。
Experiments
- SegEvery在SAM中被认为是一个零样本对象建议任务,标准平均召回率(AR)是性能评估的指标。我们遵循[SAM]中的做法,在K个建议中对 mask 采用AR(mask AR@K),其中K是允许的最大掩码数。根据AR的定义,AR@K当K被允许设置为一个较大的值(这构成了一个不太严格的度量)时,它会变得更高。只有AR@1000在[sam]中报告,但我们选择报告AR@K,K在10至1000的范围内。为了不失通用性又节省计算资源,我们选择报告从大词汇实例分割(LVIS)数据集随机采样的100幅图像的结果。
Main Results
-
SegEvery比SegAny计算密集得多的原因在于需要运行具有大量采样提示的掩码解码器。我们提出的对象感知提示采样通过减少总提示的数量来提高其效率。在下文中,我们通过将提示引导的掩码解码流水线大致划分为两个阶段:提示编码(包括预采样)和掩码解码(包括后滤波),详细说明了它们在所需计算时间方面的差异。掩码解码比简单的提示编码要重得多。除了冗余采样提示外,[SAM]中的SegEvery生成的掩码比所需的多(或AR@K允许)。
-
具体来说,一个点可以提示掩码解码器生成三个具有不同粒度(小、中、大)的输出掩码。sam中已经证明了将多掩码选项设置为真,以实现SegEvery的卓越性能(如零样本对象建议),但代价是需要过滤更多冗余掩码。根据经验,我们发现[sam]中的(GPU处理的)掩模滤波可能比掩模生成本身更不敏感,部分原因是访问和移除存储器上的高维掩模可能非常缓慢。建议感兴趣的读者查看他们的官方代码以了解详细信息。
-
直观地说,[sam]中用于网格搜索提示采样的掩码解码器所花费的时间取决于网格密度(见下图)。不同的任务可能需要不同的网格密度。在官方演示[sam]中,它采用了32×32的网格密度,在效率和性能之间实现了良好的权衡。为了评估零样本对象方案的性能,[sam]中采用了64×64的网格密度。
-
-
SAM架构和效率。SegAny的计算瓶颈在于其图像编码器,而SegEvery的计算瓶颈主要在于其在需要高网格搜索密度时的掩码解码器([sam]中的零样本对象建议采用64×64点)。
-
-
效率比较。SegEvery和我们提出的采样策略需要运行对象发现算法来获得对象感知提示,这需要比[sam]中的默认网格搜索采样更多的提示采样时间,但需要编码更少的提示。对于掩码生成,花在掩码解码器上的时间与采样提示的数量成一定比例。我们发现,当提示的数量接近320时,性能饱和,这被设置为检测框的最大数量。当对象发现生成小于320的掩码时,需要较少的计算,这在许多情况下都会发生。尽管如此,在进行效率分析时,我们将计算密集度最高的场景(最多320个提示)与网格搜索策略进行了比较。下表中的结果表明,我们提出的即时采样策略将(即时引导的)掩码解码器的效率显著提高了至少16倍。在我们的方法中,用于提示编码的计算占了不小的百分比,因为它运行对象发现以进行提示采样。一种更有效的对象发现算法有待于未来的工作。
-
-
(提示引导)掩码解码器在网格搜索采样和对象感知采样之间的效率比较。注意,提示编码包括提示预采样时间,而掩码解码包括掩码后滤波时间。
-
-
性能比较。我们仔细遵循[SAM]中推荐的零样本对象建议的实施实践。默认情况下,建议将网格密度设置为64×64,并生成总共12288(64×64×3)个遮罩,然后在给定遮罩的情况下,从中最多选择1000个遮罩AR@1000米制的我们已经尝试降低网格密度和/或将多掩码选项设置为false(单掩码模式)。下表中的结果表明,通过上述两种做法中的任何一种产生更少的掩码都会导致性能下降,这表明默认的网格搜索采样策略高度依赖于产生冗余掩码来选择最终需要的掩码。
-
-
网格搜索采样与对象软件采样的零样本对象方案比较(mask@1000作为度量)。
-
-
此外,通过比较SAM(默认网格搜索提示采样)和MobileSAMv2(我们提出的对象感知提示采样),我们有多个主要观察结果。首先,在使用相同类型的提示(点)进行提示并将多掩码设置为false的情况下,我们发现MobileSAMv2(最大320点)使用4096点实现了与SAM相当的性能,这表明我们的提示采样策略的对象感知特性显著避免了冗余。在多任务选项设置为true的情况下,默认的64×64网格密度产生了更高的性能(59.2%),这构成了网格搜索策略的最佳设置。
-
同样,我们也可以通过将多重掩码设置为true来提高对象感知点采样的性能。请注意,预测不同粒度的三个输出掩码[sam]的动机是解决点提示的模糊性问题。单个点的提示信息有限,因此会引起歧义(读者可以查看下图4解更多详细信息)。
-
-
分段任何模型(SAM)概述。重量级图像编码器输出图像嵌入,然后可以通过各种输入提示有效地查询该图像嵌入,以摊余的实时速度生成对象掩码。对于与多个对象对应的模糊提示,SAM可以输出多个有效掩码和相关的置信度分数。
-
-
相比之下,方框提示的信息量要大得多,并在很大程度上减少了歧义。我们在上表中的结果支持了这一点,即框提示在单掩码模式下产生了显著的性能提升。最后,值得一提的是,与网格搜索采样策略的最佳结果(在多掩码模式下有64×64个点)相比,我们提出的采样策略(最多有320个框提示)实现了相当的性能(59.3%与59.2%)。将提示的最大数量限制为256个,在相同条件下,与网格搜索策略(34.6%)相比,我们的策略仍然具有竞争力(58.5%)。我们还报告AR@K对于下表中的其他K值。当K设置为一个相对较小的值时,我们发现我们提出的具有较少提示的对象感知采样策略会大大提高性能。总体而言,我们提出的方法实现了3.6%的平均性能提升(42.5%对38.9%)。
-
-
网格搜索采样和对象感知采样之间的零样本对象方案比较。
-
On the Compatibility with Distilled Image Encoders
- 在上面,我们只考虑了提示引导的掩码解码器,然而,在运行掩码解码器之前,整个流水线需要运行一次图像编码器。如上文图所示,对于使用网格搜索点采样的SegEvery来说,在图像编码器上花费的时间相对较小。然而,当采用我们的对象感知提示采样策略时,情况不再如此,该策略将掩码解码器上的时间减少到约100ms。因此,我们考虑通过将SAM中的原始编码器(ViT-H)替换为MobileSAM项目中的提取编码器来减少在图像编码器上花费的时间。不同提取图像编码器的结果如下表所示。
-
-
Influence of the image encoders on MobileSAMv2 for zero-shot object proposal (mask@1000).
-
- 当使用EfficientViT-L2时,我们观察到性能适度下降(从59.2%下降到56.3%)。考虑到EfficientViT-l2的运行速度约为20ms,明显快于ViT-H(超过400ms),更换图像编码器是值得的。由于MobileSAM中引入的解耦知识提取的简单性和有效性,预计很快就会出现一种更强大的提取图像编码器,以进一步缓解性能下降。值得强调的是,MobileSAM和MobileSAMv2解决了两个正交问题:更快的SegAny和更快的SegeEvery。将它们组合在一起构成了高效SegAny和SegEvery的统一框架。
Additional Comparison and Ablation Study
Comparison with Prompt-free Approach
- 如[mobilesam]所述,SegEvery本质上不是一个可提示的分割任务,因此可以以无提示的方式实现。在[Fast segment anything]中,已经尝试了YOLOv8-seg的这种方法,它主要用protonet模块来增强YOLOv8 det,以生成掩模原型。无形掩模是通过将掩模原型与掩模系数卷积而获得的,掩模系数的长度与原型尺寸(默认为32)相同,在数学上为点积。
- 这里,我们指出,SAM的掩模解码器还通过在具有相同(32)维度的掩模系数(在[sam]中称为掩模token)和掩模原型(在[Semantic-sam: Segment and recognize anything at any granularity]中称为图像嵌入)之间生成点积来生成掩模,从而可以计算点积。
- 直观地说,生成的掩码的质量取决于掩码系数和掩码原型相互作用的程度。[sam]中的掩码解码器采用双向注意力,以在执行最终产品之前实现掩码原型和掩码系数之间的交互。这种相互作用是保证SAM中高质量掩模的关键基础。相比之下,在无提示方法中,掩模系数和掩模原型之间没有明确的相互作用。对于单个共享遮罩原型,它通常预测图像不同区域的多个对象,因此依赖于边界框来裁剪遮罩。这可以帮助去除 box 外不相关的掩模,但仍无法产生高质量的掩模,至少部分原因是掩模系数和掩模原型之间缺乏相互作用。即使无提示方法实现了最快的速度,它也会导致性能显著下降(见下表)。
-
-
无提示和提示感知方法之间的零样本对象建议比较(mask@1000).
-
- 无提示方法的不太令人满意的性能主要归因于较差的掩码边界(见下图)。与无提示方法相比,两种提示感知方法(SAM和MobileSAMv2)生成的掩码具有更细粒度的边界。SAM倾向于过度分割事物,而我们的MobileSAMv2通过利用其对象感知属性来缓解这种趋势。
-
-
无提示和有提示的掩码预测之间的比较。与提示感知方法相比,无提示方法倾向于预测具有非平滑边界的遮罩。对于两种提示感知方法,SAM倾向于过度分割事物,而我们的MobileSAMv2由于其对象感知属性而对其进行寻址。最佳彩色视图并放大。
-
Ablation Study
- 带着mask AR@1000作为度量,我们发现我们提出的采样策略通常产生少于1000个提示,这促使我们探索在我们提出的提示采样策略中最大提示数(box)的影响。下表中的结果表明,增加框提示的数量有利于更高的掩码AR,然而,它在接近320之后饱和。因此,默认情况下,我们将MobileSAMv2中的最大提示数设置为320。
-
-
提示的最大数量对零样本对象建议的MobileSAMv2的影响(mask@1000).
-
Conclusion and Future work
- 与MobileSAM项目正交,该项目通过提取轻量级图像编码器使SegAny更快,该项目称为MobileSAMv2,通过在提示引导掩码解码器中提出新的提示采样策略使SegEvery更快。用我们的对象感知即时采样取代网格搜索,我们显著提高了SegEvery的效率,同时实现了整体卓越的性能。我们还证明了我们的对象感知即时采样与MobileSAM项目中的提取图像编码器兼容。总的来说,我们的工作是朝着高效SegAny和SegEvery的统一框架迈出的一步。未来的工作需要寻求卓越的图像编码器和对象发现模型。