论文InstructPart: Affordance-based Part Segmentation from Language Instruction解读(卡耐基梅隆大学)

更多内容关注公众号:AIRoobt

InstructPart: Affordance-based Part Segmentation from Language Instruction

InstructPart:基于语言指令的功能性部分分割

摘要最近在视觉-语言模型(VLMs)方面的进展导致了它们在机器人任务中的应用增加。虽然 VLMs 的实现主要是在对象级别,但对象各个部分的不同功能——例如,刀片用于切割与其手柄用于抓握——对当前最先进的模型来说仍然是一个挑战。我们的调查揭示了这些模型经常无法根据任务指令准确地分割部分,这是精确机器人交互的关键能力。为了解决缺乏用于评估这些细粒度任务的真实世界数据集的问题,我们引入了一个全面的数据库,该数据库包括图像观察、任务描述以及精确的对象-部分交互注释,并辅以部分分割掩模。我们使用这个基准测试对常见的预训练 VLMs 进行了评估,揭示了这些模型在理解和执行日常情境中的部分级任务方面的性能。

注释:视觉-语言模型(VLMs)。这些模型现在越来越多地被用来帮助机器人完成各种任务。虽然这些模型在识别整个物体方面做得不错,但它们在理解物体的各个部分以及这些部分的不同功能方面还有待提高。比如,一把刀的刀片是用来切东西的,而刀柄则是用来抓握的。这对于机器人来说很重要,因为它们需要知道如何正确地与物体的特定部分互动。

我们发现,现有的模型在根据指令来识别和处理物体的特定部分时,往往做得不够准确。为了解决这个问题,我们创建了一个包含许多图像和任务描述的数据库,这些图像和描述都配有详细的注释,告诉我们物体的哪些部分在特定任务中是重要的。我们还提供了一种特殊的图像掩模,这种掩模可以显示图像中哪些部分是被特别标注出来的。我们用这个数据库来测试了一些常见的预训练模型,看看它们在理解日常任务和执行这些任务时的表现如何。我们希望通过这种方式,能够更好地评估和改进这些模型,让机器人在未来能够更好地理解和与我们周围的世界互动。

在计算机视觉和图像处理领域,“掩模”(mask)通常指的是一种图像或图像的一部分,它用于隐藏、显示或选择图像中的特定区域。掩模可以是二值的(黑白),也可以是多值的(彩色),它决定了哪些部分应该被保留、修改或忽略。

在上下文中提到的“部分分割掩模”(part segmentation masks)是指一种特殊的图像,它详细地标注了原始图像中每个对象的各个部分。例如,在一个关于刀具的图像中,部分分割掩模可能会用不同的颜色或透明度来区分刀片和刀柄。这样,机器人或其他计算机视觉系统就可以根据这些掩模来识别和理解图像中的对象及其组成部分。

在机器人抓取任务中,使用部分分割掩模可以帮助机器人更准确地识别和操作物体的特定部分,从而提高任务执行的精确度和效率。)

引言

机器人在我们日常生活中扮演着越来越重要的角色(Matheson 等人,2019;Kaiser 等人,2021)。然而,在迈向充满更先进代理的下一代之前,仍有两个关键挑战。首先,机器人必须在上下文中理解自然语言指令,即把命令翻译成可执行的任务。这种能力对于与人类无缝互动至关重要,特别是在家庭等非结构化环境中。另一个关键挑战是机器人必须感知其环境并定位到特定区域。这不仅涉及识别物体,还涉及机器人应与之交互的细粒度部分。具体来说,考虑到切洋葱的指令和图 1 中描绘的视觉观察,智能代理首先需要理解刀柄可以被握住,然后在执行后续的操纵和控制任务之前参考部分掩模。

图 1:InstructPart 的任务描述:在给出图像观察(左图)和相应的指令(左侧蓝色框中)的情况下,模型需要识别并输出指令中提到的特定部分片段(在右侧的绿色掩模中高亮显示)。

为了严格评估代理在应对这些挑战方面的能力,我们引入了一个全面的数据库,包括带有任务指令的图像观察,并伴有部分分割掩模作为真实情况。尽管在语言理解和视觉感知方面取得了显著进展,但当前的基础视觉-语言模型(VLMs)仍然在细粒度多模态推理方面存在困难,例如,根据用户指令和功能推理准确定位物体的特定部分(Zhou 等人,2022;Mogadala, Kalimuthu, 和 Klakow 2021)。我们主要将此归因于训练数据的稀缺性,因为注释部分级标签非常耗时且成本高昂。例如,大多数大规模视觉数据集专注于对象级理解(Liu 等人,2023a;Zou 等人,2023b,a;Xu 等人,2023;Liang 等人,2023;Sun 等人,2023),而现有的部分级识别数据集要么在部分类别上过于有限(Nguyen 等人,2017;Myers 等人,2015;Roy 和 Todorovic 2016),要么在控制环境中收集(Myers 等人,2015),或从模拟器中获得(Geng 等人,2023;Deng 等人,2021;Xiang 等人,2020;Mo 等人,2019)。此外,这些数据集并非专门为机器人任务设计,因此不包括语言指令。鉴于最近对构建能够感知多模态输入并遵循语言指令的下一代具身代理的兴趣激增(Yang 等人,2023a;Huang 等人,2023;Ahn 等人,2022),我们受到激励,通过构建包括语言和部分注释的数据库,全面评估现有的 VLMs。

注释:为了准确地测试和评估机器人代理(或任何智能系统)在理解和执行任务方面的能力,研究者们创建了一个包含多种元素的数据库。这个数据库的特点如下:

1. **带有任务指令的图像观察**:数据库中的每张图像都与一个具体的任务指令相关联。这些指令是用自然语言描述的,告诉机器人需要完成什么动作,比如“拿起刀子的刀柄”或“切洋葱”。这些指令为机器人提供了执行任务的上下文信息。

2. **部分分割掩模作为真实情况**:为了帮助机器人理解图像中的具体部分,每张图像都有一个对应的部分分割掩模。这个掩模是一个图像,它通过不同的颜色或透明度标记出物体的各个部分。例如,如果任务是“切洋葱”,掩模可能会特别标记出洋葱的可切割部分。这个掩模作为“真实情况”或“地面真相”,用于验证机器人是否正确地识别和理解了图像中的任务相关部分。

总的来说,这个数据库提供了一个平台,让研究者可以测试机器人在理解自然语言指令和执行基于视觉信息的任务方面的能力。通过比较机器人的表现与部分分割掩模(真实情况)的差异,研究者可以评估机器人的理解和执行任务的准确性。

为此,我们引入了一个新颖的数据集 InstructPart,它包含 700 张图像、54 个物体类别和 48 个部分类别。每张图像都附有人工注释的指令,这些指令经过 GPT 润色,用于常见家庭任务,以及详细的部分分割掩模。对我们数据集上当前视觉语言模型的全面评估揭示了它们在理解自然语言并准确将其应用于不同物体和部分方面的能力存在显著不足。这一发现强调了解决机器人视觉-语言模型关键短板的必要性。

为了增强我们对数据集能力的理解,我们使用数据集的三分之一对一个最先进的模型进行了微调。这种方法使性能显著提高了 20%,展示了我们数据在高级训练目的中的卓越质量和价值。

通过我们提出的基准测试,我们强调了推进视觉-语言模型发展的重要性,不仅要在物体级理解上表现出色,还要能够辨别部分级细节。这一进步在多种情境中至关重要,从协助家务的家庭服务机器人到工业机械臂,都在改善我们日常体验中发挥着重要作用。我们的贡献如下:

• 据我们所知,我们提出了第一个将基于指令的交互与常见家庭任务的部分分割相结合的数据集,这是迈向更直观和多功能机器人系统的关键一步。

• 我们对引入的数据集上的各种视觉-语言模型进行了严格的评估,展示了它们在社区发展中的适用性和潜力。

• 我们通过使用数据集的三分之一进行微调,将最先进的模型性能提高了 20%,突出了我们数据的质量和训练潜力。

相关工作

部分分割

对象分割的目标是在图像中找到每个对象的语义上有意义的像素。与传统的对象分割不同,部分分割提供了对每个对象更细粒度的理解,为对象内的突出部分分配不同的语义标签(Wang 等人,2015)。以前的方法主要基于完全监督的方式,需要在大量数据上进行训练,并且已经收集了各种部分注释数据集来支持这一过程(Sun 等人,2023),例如 PartImageNet(He 等人,2022)、Pascal-Part(Chen 等人,2014)、ADE20K(Zhou 等人,2019)和 PACO(Ramanathan 等人,2023)。然而,这些方法受限于训练数据的领域,专注于特定类别,如人类(Gong 等人,2017)、鸟类(Wah 等人,2011)、时尚(Jia 等人,2020)和汽车(Song 等人,2019)。这限制了它们在日常情境中的使用,尤其是机器人与环境的互动。

在机器人任务中,理解关节对象的部分是一个热门话题,部分的功能被用于进一步的操作(Gadre, Ehsani, 和 Song 2021; Yi 等人,2018)。相关数据集包括 PartNet(Mo 等人,2019)、PartNet-Mobility(Xiang 等人,2020)、3D AffordanceNet(Deng 等人,2021)、GAPartNet(Geng 等人,2023)等。然而,这些数据集都是从模拟器生成的,并且在转移到真实世界场景时存在潜在的仿真到现实的差距。另一方面,有几项工作收集了用于功能理解的真实世界图像,例如 UMD-Affordance(Myers 等人,2015)、NYUv2-Affordance(Roy 和 Todorovic 2016)以及 IIT-AFF(Nguyen 等人,2017)。然而,这些数据集覆盖的场景有限,包含的功能类别少于 10 个。此外,有时使用一个简单的单词或短语可能不足以表示功能。例如,开关的功能可以是“打开”,而更精确的描述可以根据开关的类型是“按下”或“旋转”。在真实世界情境中,人们倾向于使用指令性句子而不是单个单词来引用部分。受到这一点的启发,我们构建了一个包含指令-部分对、对象-部分类别、功能和动作的综合数据集。相关真实世界部分分割数据集的比较显示在表 1 中。我们希望这个数据集能够为未来关于机器人与环境互动的工作提供更多见解。

注释:部分分割(Part Segmentation)是计算机视觉中的一个任务,它涉及识别和分割图像中对象的各个组成部分。与整体对象分割不同,部分分割关注的是对象内部的结构,如物体的不同部分或组件。这种分割有助于更精细地理解图像内容,对于机器人视觉、自动驾驶、医学图像分析等领域尤其重要。

部分分割的例子:

假设你正在开发一个机器人,它需要在厨房中帮助用户准备食材。用户给了机器人一个任务:“请将西红柿切成四等份。” 为了完成这个任务,机器人需要执行以下步骤:

1. **视觉识别**:机器人首先需要使用其摄像头识别出西红柿的位置和形状。

2. **部分分割**:机器人需要识别西红柿的不同部分,例如,它可能需要区分西红柿的顶部、底部以及中间的切面。这可能涉及到分析西红柿的纹理、颜色和形状特征。

3. **分割执行**:一旦机器人识别出西红柿的各个部分,它将使用机械手臂和刀具来精确地切割。例如,它可能会先找到西红柿的中心线,然后沿着这个线将西红柿切成两半,再将每半切成两等份。

4. **结果验证**:机器人可能会再次使用视觉系统来验证切割后的西红柿部分是否符合用户的要求。

在这个例子中,部分分割使机器人能够理解西红柿的内部结构,并执行精确的切割动作。这种能力对于提高机器人在复杂环境中的操作精度和效率至关重要。

表 1:相关部分分割数据集的比较。

我们展示了对象类别(#Object)、部分类别(#Part)、功能(#Affordance)、动作(#Action)的数量,以及是否包含指令(Instruction)。N/A 表示没有这类数据,而 – 表示数据存在但没有提供相关信息。11/158 表示 PartImageNet 中的超类和子类数量。

开放词汇分割

传统的完全监督识别方法具有有限的泛化能力,这导致了对训练阶段之外开放世界类别识别的更多关注。最近,预训练的视觉语言模型 CLIP(Radford 等人,2021),它在 4 亿张图像-标题对上进行了训练,弥合了视觉和语言嵌入空间之间的差距,并在开放词汇分割中展示了宝贵的潜力。大多数相关方法使用现有的图像编码器作为骨干,例如 MaskFormer(Cheng 等人,2022)或 SAM(Kirillov 等人,2023),并应用 CLIP 进行分类。这些方法的关键是将图像编码器的嵌入空间与 CLIP 的嵌入空间对齐。例如,OVSeg(Liang 等人,2023)提出了裁剪区域提议,并使用掩模提示调整机制对 CLIP 进行微调。FC-CLIP(Yu 等人,2023)使用冻结的卷积 CLIP 骨干,并使视觉骨干的区域特征与 CLIP 对齐。SAN(Xu 等人,2023)将一个侧适配器网络应用于冻结的 CLIP,以获取掩模的类别。

超越对象级分割,更近期的工作提出了开放词汇部分分割任务。VLPart(Sun 等人,2023)使用其与基础对象的语义对应关系将新对象解析为部分,并用 CLIP 进行分类。OPS(Pan 等人,2023)使用训练好的对象检测器为未标记数据生成伪标签,并在自监督过程中对不同部分进行聚类。然而,OPS 无法为片段预测语义标签,也不适合我们的任务。

尽管这些开放世界识别方法在识别分布外类别方面展示了潜力,但它们在理解复杂指令句子方面的推理能力有限,因此限制了它们在真实世界机器人任务中的广泛应用。

注释:开放词汇分割(Open-Vocabulary Segmentation)是一种计算机视觉任务,它旨在识别和分割图像中的对象,而不仅仅是在训练模型时已知的对象类别。这与封闭词汇分割(Closed-Vocabulary Segmentation)相对,后者通常只识别模型在训练阶段已经学习过的特定对象类别。

在开放词汇分割中,模型需要能够理解和识别在训练数据中未出现过的新对象类别。这对于提高模型在现实世界应用中的泛化能力和适应性至关重要,因为在现实世界中,模型可能会遇到各种各样的新对象,这些对象在训练时可能从未见过。

为了实现开放词汇分割,研究者们通常会采用一些策略,比如使用预训练的视觉-语言模型(如CLIP),这些模型在大量图像和文本对上进行训练,从而能够理解和识别更广泛的对象。通过将这些模型与图像分割技术结合,可以提高模型在处理未知类别时的性能。

开放词汇分割的应用场景包括但不限于机器人视觉、自动驾驶、图像检索和增强现实等领域,其中模型需要能够理解和与多样化的视觉内容互动。

例子:假设你正在开发一个智能相册应用,该应用旨在帮助用户管理和分类他们的家庭照片。用户可能会上传各种不同的照片,包括家庭聚会、旅行、宠物等,这些照片可能包含在训练数据中未出现过的新对象。

开放词汇分割的例子如下:

1. **用户上传照片**:用户上传了一张在海滩度假的照片,照片中有一把他们新买的蓝色遮阳伞。

2. **开放词汇挑战**:由于这把遮阳伞在训练数据中没有出现过,因此对于传统的封闭词汇分割模型来说,它可能无法识别和分割这把伞。

3. **开放词汇分割**:你的智能相册应用使用了一个开放词汇分割模型,这个模型在训练时接触过大量的图像和文本数据,因此它能够理解“遮阳伞”这个概念,即使它在训练集中没有直接出现过。

4. **模型执行分割**:应用中的模型分析上传的照片,识别出照片中的蓝色遮阳伞,并在图像中生成一个分割掩模,精确地标识出遮阳伞的位置。

5. **分类和标签**:应用使用分割掩模来自动分类照片,并可能将这把遮阳伞标记为“海滩用品”或“度假装备”,即使这些标签在训练数据中也没有出现过。

在这个例子中,开放词汇分割模型展示了其在处理新对象和场景时的泛化能力,这对于提高用户体验和应用的实用性至关重要。这种模型能够适应不断变化的视觉内容,为用户提供更加智能和个性化的服务。

图 2:我们的 InstructPart 数据集中的示例如下所示:指令用红色文本表示,而物体和部分名称用蓝色表示。每个示例包括一个输入观察图像(左图),以及相应的真实情况部分片段(右图),用绿色掩模高亮显示。

指代分割

上述开放世界识别方法通过它们的名称来识别对象和部分,但未能使用详细描述来指代特定实例。另一方面,指代表达分割旨在从给定的语言表达中生成分割掩模(Hu, Rohrbach, 和 Darrell 2016),各种数据集如 ReferIt(Kazemzadeh 等人,2014)、CLEVR-Ref+(Liu 等人,2019)、refCOCO(Yu 等人,2016)、refCOCOg(Mao 等人,2016)、gRefCOCO(Liu, Ding, 和 Jiang 2023)被收集来支持这项任务。这些数据集包含图像-表达对以及被指代对象的掩模。流行的指代分割方法使用视觉和语言编码器分别从两种模态中提取特征,并设计注意力机制来整合特征并组装区域掩模的类别(Yang 等人,2022;Liu, Ding, 和 Jiang 2023;Ouyang 等人,2023;Liu 等人,2023a)。最近,更多的工作应用了预训练的基础模型,例如 SAM(Kirillov 等人,2023)和 CLIP(Radford 等人,2021)作为编码器,并专注于解码器的设计,如 X-Decoder(Zou 等人,2023a)和 SEEM(Zou 等人,2023b)。然而,指代表达任务只接受短语作为输入,并未考虑复杂推理,例如当目标名称没有直接出现在表达中时。

注释:指代分割(Referring Segmentation)是计算机视觉领域中的一个任务,它要求模型根据给定的语言描述(通常是自然语言句子)来识别和分割图像中的特定对象或对象的部分。这个任务涉及到两个主要的挑战:理解和执行。

1. **理解**:模型需要理解自然语言描述中的指令,这可能包括识别特定的对象、动作或属性。例如,如果描述是“请找到桌子上的红色杯子”,模型需要理解“桌子上的”、“红色”和“杯子”这些关键词。

2. **执行**:模型需要在图像中定位并分割出与描述相匹配的对象或对象部分。在上述例子中,模型需要在图像中找到所有可能的杯子,然后确定哪个是红色的,最后生成一个分割掩模来精确地表示这个红色杯子。

指代分割通常需要模型具备较强的视觉和语言理解能力,因为它不仅需要模型能够处理视觉信息,还需要能够处理和解释自然语言。这个任务在机器人视觉、自动驾驶、图像检索和增强现实等领域有着广泛的应用前景,因为这些领域中的系统经常需要根据用户的自然语言指令来执行任务。

举例:假设你正在使用一个智能家居助手,你给它一个指令:“请把书架上那本蓝色的书拿给我。” 这个指令要求智能家居助手执行指代分割任务。以下是这个任务的执行步骤:

1. **理解指令**:智能家居助手首先需要理解你的指令,识别出关键信息,如“书架”、“蓝色”和“书”。

2. **视觉识别**:助手使用其视觉系统扫描房间,识别出书架和书架上的书籍。

3. **指代解析**:助手需要解析“那本蓝色的书”这个指代表达,确定它指的是书架上的哪一本书。这可能涉及到颜色识别(蓝色),以及可能的形状、大小或位置信息。

4. **分割执行**:一旦确定了目标书籍,助手需要生成一个分割掩模,精确地标识出这本书在视觉场景中的位置。这个掩模将用于指导机器人手臂去抓取正确的书籍。

5. **动作执行**:最后,智能家居助手的机械手臂会根据分割掩模移动到正确的位置,抓取那本蓝色的书,并将其递给你。

在这个例子中,指代分割任务要求智能家居助手不仅要理解自然语言指令,还要能够在视觉环境中准确地定位和识别特定的对象。这种能力对于提高智能家居设备的用户体验至关重要。

推理分割

另一方面,在大型语言模型(LLMs)方面取得了显著进展,它们具有理解复杂语言输入的能力,并有潜力进行更复杂的指代分割。例如 BLIP-2(Li 等人,2023)、LLaVA-1.5(Liu 等人,2023b)、MiniGPT-4(Zhu 等人,2023)、Flamingo(Alayrac 等人,2022)和 GPT-4V(Yang 等人,2023c)已经探索了用于视觉理解的多模态 LLMs 的设计,并通过图像标题生成、视觉问答(VQA)等任务展示了它们的能力。为了使多模态 LLMs 具有定位能力,VisionLLM(Wang 等人,2023)提出了一个开放式任务解码器与 LLM,并返回对象多边形的坐标。类似地,Shikra(Chen 等人,2023b)和 MiniGPT-v2(Chen 等人,2023a)处理对象坐标作为输入,并通过返回坐标来启用定位能力。然而,这两种方法都无法生成分割掩模,只能隐式地使用 LLMs 生成文本,而不是直接使用视觉解码器进行定位,这对于图像分割或检测可能是违反直觉的。

最近,LISA(Lai 等人,2023)结合了一个多模态 LLM(Liu 等人,2023b)与视觉骨干,并联合训练一个解码器来生成分割掩模。他们提出了一个新任务——推理分割,这要求模型在理解复杂输入句子后定位一个区域。直观上,我们好奇 LISA 是否有能力在机器人应用的上下文中从指令中进行推理,并指代对于有效互动至关重要的特定部分。

为了在这些场景中定量评估上述方法,我们提出了 InstructPart 数据集,它包含指令-部分对、对象-部分名称、高级功能、低级动作和部分分割掩模。它的目的是严格测试并可能提高当前模型在机器人应用中根据指令准确识别特定部分的能力。

注释:推理分割(Reasoning Segmentation)是计算机视觉和自然语言处理领域的一个任务,它要求模型在理解复杂指令或场景描述的基础上,对图像中的对象或对象的部分进行分割。这种任务通常涉及到对图像内容的高级理解,包括对象的识别、场景的解析以及对自然语言指令的解释。

在推理分割任务中,模型需要执行以下步骤:

1. **理解指令**:模型首先需要理解给定的自然语言指令,这可能包括对特定对象的描述、动作要求或与环境的互动。

2. **视觉分析**:模型需要分析图像内容,识别出与指令相关的对象和部分。

3. **推理和定位**:模型需要进行逻辑推理,确定指令中提到的对象或部分在图像中的具体位置。这可能涉及到对场景中多个对象和部分的比较、排除和选择。

4. **分割执行**:最后,模型需要生成一个分割掩模,准确地标识出图像中与指令相对应的对象或部分。

推理分割任务的挑战在于,它不仅要求模型具备基本的视觉识别能力,还要求模型能够处理复杂的语言输入,进行深入的场景理解,并在视觉和语言之间建立联系。这种任务在机器人导航、智能助手和自动驾驶等领域具有重要意义,因为这些应用场景中的系统需要根据复杂的指令来执行精确的视觉任务。

例子:假设我们有一个机器人,它需要在一个厨房环境中执行任务。我们给机器人一个复杂的指令,比如:“请找到那个装有水的玻璃杯,并将其放在桌子上的绿色垫子上。” 这个指令涉及到几个关键的视觉和语言理解步骤:

1. **理解指令**:机器人首先需要理解指令中的关键词,如“装有水的玻璃杯”和“绿色垫子”。

2. **视觉分析**:机器人使用其摄像头观察厨房环境,识别出图像中的所有玻璃杯。它还需要识别出桌子上的绿色垫子。

3. **推理和定位**:机器人需要进一步推理,确定哪个玻璃杯是装有水的。这可能涉及到分析玻璃杯的透明度、反光、以及可能的水迹。同时,它还需要确定绿色垫子的确切位置。

4. **分割执行**:一旦机器人确定了正确的玻璃杯和绿色垫子,它需要生成一个分割掩模,精确地标识出这两个对象在图像中的位置。然后,机器人可以移动其机械臂,抓取玻璃杯,并将其放置在绿色垫子上。

在这个例子中,推理分割任务要求机器人不仅要识别图像中的对象,还要理解指令中的复杂语言描述,并根据这些描述在视觉场景中进行精确的定位和操作。这种任务展示了机器人在理解和执行基于自然语言的复杂任务方面的能力。)

数据集和任务设置

InstructPart 数据集

受到需要代理遵循指令的场景的启发,我们创建了 InstructPart 数据集。这个数据集旨在衡量当前模型在理解自然语言及其执行推理和定位能力方面的有效性。该数据集包含从 Flickr 和互联网上精心挑选的 700 张图像,与日常家庭任务保持一致。我们确保了对象类别的统一收集,并彻底注释了每张图像内所有相关部分。

我们为每张图像设计了定制的指令,以帮助智能代理更好地理解周围环境并执行动作,如图 2 第一行所示。在第一行展示的三个示例中,代理需要分别理解用于坐下、分发和抓握的部分,这些部分在图像中的绿色掩模中被高亮显示。对于每个图像-指令对,我们注释了所有满足指令的细粒度分割掩模,并将它们视为真实情况,以评估系统是否成功定位了区域。

我们故意避免在指令中具体提及部分名称,以增强它们在现实世界情况下的实用性。例如,常用表达如“冲厕所”或“打开水龙头”比更详细的指令如“按下马桶手柄”或“抬起水龙头手柄”更受欢迎。我们让 6 名人类专家创建自由形式的自然语言指令,然后使用 GPT-4 进行优化,以确保语法精确和多样化的句子构造。这个过程之后是彻底的人类验证优化后的指令。

除了指令-图像对,我们还提供了与图像相关的物体和部分名称,如椅子的座位、水壶的喷嘴、杯子的手柄。我们还为每个指令包括了相应的功能和动作。具体来说,功能指的是对特定部分执行的低级动作,如“拉”、“推”或“扭”,而动作指的是要实现的高级功能,如“打开”、“拿起”或“打开”。请注意,功能和动作有时可能是相同的,例如“倒”、“切”等。在图 2 第一行的示例中,功能是“支撑”、“倒”、“抓握”,动作是“坐下”、“倒”和“拿起”。这使我们能够将功能分类为两个层次,解决了先前研究中注意到的定义模糊性问题(Nguyen 等人,2017;Roy 和 Todorovic 2016;Myers 等人,2015)。

总之,我们数据集中的图像组件可以表示为:

(Itext, Iimage, O, P, M, Aaffordance, Aaction),

其中这些项目分别指文本指令、图像观察、物体名称、部分名称、分割掩模、功能名称和动作名称。请注意,Itext ∈ {Ihuman, IGPT},这意味着文本指令要么是由人类直接注释的,要么是由 GPT-4 重写的。

任务定义

基于给定指令定位一个区域的任务要求模型具备理解复杂指令并适当引用它们的能力。因此,我们提出了指令推理部分分割(IRPS)任务,挑战模型在语言推理和视觉定位两方面发展熟练度。此外,为了专门评估现有模型的视觉定位能力,我们引入了 Oracle 指代表达部分分割(ORPS)任务,该任务利用关于指定对象和部分的 Oracle 信息。

注释:为了完成基于给定指令定位图像中特定区域的任务,模型需要具备两个关键能力:

1. **理解复杂指令**:模型必须能够理解自然语言指令中的复杂信息。这包括识别指令中的关键词汇(如对象名称、动作、属性等),并理解这些词汇在上下文中的意义。

2. **适当引用**:模型需要能够根据理解的指令,准确地在图像中找到并引用(即定位)相应的对象或对象的部分。这要求模型能够在视觉信息和语言信息之间建立联系,并执行精确的视觉定位。

为了测试和提高模型在这两个方面的能力,研究者们提出了两个任务:

- **指令推理部分分割(IRPS)**:这是一个挑战性任务,要求模型仅根据指令和图像输入来定位图像中的特定部分。这个任务强调了模型在语言理解和视觉定位方面的推理能力。

- **Oracle 指代表达部分分割(ORPS)**:这是一个辅助任务,它提供了关于图像中特定对象和部分的“Oracle”信息(即,这些信息是已知的,模型可以直接使用这些信息)。这个任务的目的是专门评估模型在视觉定位方面的能力,而不受语言理解能力的限制。

总的来说,这两个任务旨在推动模型在理解和执行基于自然语言的视觉任务方面的发展,特别是在机器人视觉和交互领域。通过这些任务,研究者们可以更好地评估和改进模型的性能。

指令推理部分分割(IRPS)。为了探索当前模型的推理和部分定位能力,我们提出了 IRPS 任务,如图 2 第一行所示。模型应该只接受指令-图像对作为输入,并找到被引用的部分分割掩模,这些掩模在图 2 中以绿色掩模显示。这要求模型具备理解指令、分析图像并引用相应部分区域的能力。任务可以表述为:

F(Itext, Iimage) ⇒ M, (1)

其中 F 是视觉-语言模型,Itext ∈ {Ihuman, IGPT},表示指令可以是人类注释的或由 GPT-4 重写的。

注释:这个任务旨在测试模型是否能够理解指令并根据指令在图像中找到特定的部分。

1. **任务目的**:我们想要测试一个模型(比如一个机器人或者一个计算机程序)是否能够理解我们给它的指令,并且根据这个指令在一张图片中找到正确的部分。这就像是给模型一个任务,比如“找到图片中可以用来写字的笔尖”。

2. **输入**:模型的输入是一对指令和图片。指令是用文字描述的,告诉模型它需要在图片中找什么。图片则是模型需要分析的视觉信息。

3. **输出**:模型的输出是一个分割掩模,这是一个特殊的图像,它用不同的颜色或透明度标记出图片中的特定部分。在我们的比喻中,这个掩模会高亮显示笔尖的位置。

4. **模型的能力要求**:为了完成这个任务,模型需要具备几个能力:首先,它要能理解给定的指令;其次,它要能分析图片内容;最后,它要能准确地找到并标记出指令中提到的部分。

5. **任务的数学表述**:这个任务可以用一个数学公式来表示:F(Itext, Iimage) ⇒ M。这里的 F 是模型,Itext 是指令,Iimage 是图片,M 是模型输出的分割掩模。公式中的 Ihuman 和 IGPT 表示指令可能是人类直接提供的,也可能是由 GPT-4(一种先进的语言模型)生成的。

总的来说,IRPS 任务就像是给模型一个挑战,看它是否能够理解我们的话,并在一张复杂的图片中找到我们想要的部分。这就像是在玩一个寻宝游戏,模型需要根据线索(指令)在宝藏图(图片)上找到宝藏(特定的部分)。

Oracle 指代表达部分分割(ORPS)。在 ORPS 设置中,我们考虑使用部分名称直接引用部分,这确保模型有一个正确的文本输入。任务如图 2 第二行所示。我们以两种格式制定 ORPS 任务:

1.我们使用一个模板将部分名称和对象名称与“of”这个词连接起来,例如,水龙头的手柄:

F(P of O, Iimage) ⇒ M.      (2)

2. 此外,考虑到功能可能有助于模型引用部分,我们将功能名称添加到前者的格式中:

F(P of O that Aa, Iimage) ⇒ M,       (3)

其中 Aa 包含了功能,例如,可以握住的杯子的手柄。

注释: Oracle 指代表达部分分割(ORPS),这个任务旨在帮助模型更准确地在图像中定位特定的对象部分。下面是对这个任务的解释:

1. **任务背景**:在 ORPS 设置中,我们希望模型能够直接使用部分的名称来定位图像中的特定部分。这样做的目的是为了确保模型接收到的文本输入是准确和具体的。

2. **任务执行**:这个任务有两种执行格式:

   - **第一种格式**:我们使用一个模板,将部分名称和对象名称通过“of”这个词连接起来。例如,如果我们想要模型找到水龙头的手柄,我们会给模型一个指令,如“水龙头的手柄”。这个指令可以表示为:F(P of O, Iimage) ⇒ M。这里的 P 代表部分(Part),O 代表对象(Object),Iimage 是图像输入,M 是模型输出的分割掩模。

   - **第二种格式**:考虑到功能(Affordance)可能有助于模型更准确地引用部分,我们在第一种格式的基础上增加了功能名称。例如,如果我们要模型找到可以握住的杯子的手柄,我们会说:“可以握住的杯子的手柄”。这个指令可以表示为:F(P of O that Aa, Iimage) ⇒ M。这里的 Aa 代表功能(Affordance),比如“可以握住”。

3. **任务目的**:通过这两种格式,ORPS 任务旨在提高模型在视觉定位方面的准确性。通过提供具体的部分名称和功能信息,模型可以更容易地在图像中找到正确的部分,而不需要进行复杂的推理。

总的来说,ORPS 任务通过提供明确的部分名称和功能信息,帮助模型更好地理解和执行视觉定位任务。这在机器人视觉、自动驾驶和其他需要精确视觉识别的应用中非常有用。

指标

我们遵循 LISA(Lai 等人,2023)使用两个指标,gIoU 和 cIoU。gIoU 是所有每张图像的交并比(IoUs)的平均值,cIoU 由累积交集除以累积并集定义。此外,为了评估模型的精确度,我们采用 Precision@50 (P@50) 指标,如之前的指代表达分割工作(Liu 等人,2023a; Mao 等人,2016),并根据 COCO(Lin 等人,2014)开发了一个 Precision@50:95 (P@50:95) 指标。P@50 指标简单地认为当 IoU 比率超过 0.5 时,掩模就是一个真正的阳性,而 P@50:95 在从 0.50 到 0.95 的 IoU 阈值范围内以 0.05 的增量计算,然后在所有阈值上平均。P@50:95 指标要求预测的最低 IoU 更高,因此它总是低于 P@50 指标。对于 IoU 和 Precision 这两种指标类型,后者只计算大于阈值的结果,因此可以比前者对模型提出更多挑战,并以高召回率公正地评估结果。

注释:

gIoU(Generalized Intersection over Union)是一种用于评估计算机视觉模型在对象检测和分割任务中性能的指标。它是一个扩展的 IoU(Intersection over Union)指标,用于衡量模型预测的区域与实际对象区域之间的重叠程度。gIoU 考虑了对象的形状和大小,使得评估更加全面和公平。

在解释 gIoU 之前,我们先回顾一下 IoU 的基本概念:

IoU = (预测区域 ∩ 实际区域) / (预测区域 ∪ 实际区域)

这里,“预测区域 ∩ 实际区域” 表示模型预测的区域与实际对象区域重叠的部分,而 “预测区域 ∪ 实际区域” 表示模型预测的区域与实际对象区域的总和(包括所有部分,无论是否重叠)。

现在,让我们解释 gIoU:

1. **形状和大小的考虑**:gIoU 不仅考虑预测区域与实际区域的重叠,还考虑了它们的形状和大小。这意味着,即使预测区域与实际区域有很高的重叠,如果预测区域的形状与实际对象的形状差异很大,gIoU 的值也不会很高。

2. **更全面的评估**:gIoU 提供了一个更全面的评估,因为它不仅关注重叠区域,还关注预测区域的整体质量。这有助于识别模型在对象检测和分割中的潜在问题,比如预测区域过大或过小。

3. **计算方法**:gIoU 的计算通常涉及到一个额外的步骤,即计算预测区域与实际区域的边界框(bounding boxes)之间的重叠。然后,这个重叠度会与 IoU 结合起来,以得到一个综合的 gIoU 分数。

总的来说,gIoU 是一个更复杂的指标,它试图更准确地反映模型在对象检测和分割任务中的表现。通过考虑形状和大小,gIoU 能够提供比传统 IoU 更丰富的信息,帮助研究者和开发者改进模型。

(cIoU(cumulative Intersection over Union)是一种评估计算机视觉模型在对象检测和分割任务中性能的指标。这个指标通过累积计算模型预测的区域与实际对象区域在一系列不同的重叠阈值(IoU)下的交集,来衡量模型的整体性能。

cIoU 则进一步扩展了这个概念,它不是计算单一的 IoU 值,而是计算在一系列不同的 IoU 阈值(比如 0.5, 0.6, 0.7 等)下的 IoU 值,并将这些值累积起来。这样,cIoU 能够提供一个更全面的评估,它不仅考虑了模型在最佳重叠情况下的表现,还考虑了在不同程度的重叠下的表现。

cIoU 的计算结果是一个累积的分数,它反映了模型在不同重叠程度下的稳健性。这个分数越高,说明模型在各种情况下都能较好地定位和分割对象。cIoU 是一个有用的指标,因为它可以帮助研究者和开发者理解模型在实际应用中可能遇到的各种情况,并据此优化模型的性能。)

(Precision@50 是一种评估计算机视觉模型性能的指标,特别是在对象检测和分割任务中。这个指标衡量的是模型在预测对象位置时的准确性,特别是在模型返回的前 50 个预测结果中。

为了解释 Precision@50,我们可以先了解一下 Precision(精确度)的基本概念:

Precision = 真正预测(True Positives, TP) / (真正预测 + 假正预测(False Positives, FP))

在这里,真正预测(TP)是模型正确识别的对象数量,而假正预测(FP)是模型错误地识别为对象的数量。

现在,让我们看看 Precision@50 是如何工作的:

1. **模型预测**:当模型处理一张图像时,它会生成一系列预测结果,这些结果通常包括对象的位置、大小和类别。这些预测结果会按照模型认为的置信度(或概率)进行排序。

2. **前 50 个预测**:Precision@50 只关注模型返回的前 50 个最高置信度的预测结果。这意味着我们只考虑模型最有信心的预测。

3. **计算精确度**:在这些前 50 个预测中,我们计算真正预测的数量(TP),并将这个数量除以前 50 个预测的总数(TP + FP)。这个比值就是 Precision@50。

4. **评估模型性能**:Precision@50 提供了一个快速的指标来评估模型在最有信心的预测中的准确性。一个高的 Precision@50 值表明模型在其最有信心的预测中表现得很好,能够准确地识别出正确的对象。

Precision@50 是一个有用的指标,因为它帮助我们理解模型在处理最有可能正确的预测时的准确性。这对于那些需要快速响应和高置信度预测的应用场景(如自动驾驶、实时监控等)尤为重要。)

实验

评估方法

开放词汇分割模型。开放词汇部分分割模型,即 VLPart(Sun 等人,2023),直观上适合我们的任务,因为训练时使用了丰富的部分片段。因此,我们想知道它们是否能在我们的数据集上表现良好,这个数据集特别为机器人日常任务收集。我们还选择了 OVSeg(Liang 等人,2023)和 SAN(Xu 等人,2023)来发现开放词汇对象分割方法在我们任务上的表现。我们选择了这三种方法中报告最好的模型。

指代分割模型。我们使用现成的模型进行实验,包括 X-Decoder(Zou 等人,2023a)、SEEM(Zou 等人,2023b)和 TRIS(Liu 等人,2023a)。此外,我们还评估了 Grounding-DINO(Liu 等人,2023c),它已经证明了在开放词汇指代检测方面的强大能力,并被集成到 SAM(Kirillov 等人,2023)的一个项目 Grounded-SAM1 中。我们采用了这些方法的最佳模型。

推理分割模型。对于我们的任务,LISA(Lai 等人,2023)自然是一个不错的选择,因为它可以返回掩模,并且已经在几个部分分割数据集上进行了训练。因此,探索它是否具有理解指令和找到部分片段的能力是有趣的。其他多模态 LLMs,包括 VisionLLM(Wang 等人,2023)、Shikra(Chen 等人,2023b)和 MiniGPT-v2(Chen 等人,2023a)也具有定位能力。由于它们只能返回边界框输出,我们使用结果作为 SAM(Kirillov 等人,2023)的框提示,以获得公平比较的掩模输出。然而,我们无法测试 VisionLLM,因为它的代码尚未发布。我们采用了在 LISA 数据集的训练和验证数据上都进行了微调的 LISA-7B-v1(Lai 等人,2023)模型。此外,我们选择了 Shikra-7B-delta-v1-0708 用于 Shikra,以及 MiniGPT-v2 的 stage-3 模型。

基于网格的 GPT-4V。最近发布的 GPT-4V 在复杂的视觉-语言推理方面展示了显著的进步(Yang 等人,2023c),在以前的挑战中,如 Winoground(Thrush 等人,2022)中超越了其前身。作为一个自然的想法,我们想知道 GPT-4V 是否也能成功理解和定位对象部分。然而,GPT-4V API 无法直接返回分割掩模输出,我们的初步实验表明,当要求 GPT-4V 生成文本坐标时,其表现不佳。因此,我们首先使用 Grounding-DINO(Liu 等人,2023c)找到整个对象的边界框并裁剪它,然后让 GPT-4V 虚拟地将框划分为 7×7 网格,并识别包含理想部分的网格。之后,网格的坐标被用作 SAM(Kirillov 等人,2023)的提示,以获得分割掩模。

基于 SoM 的 GPT-4V。SoM(Yang 等人,2023b)提出了在 SAM(Kirillov 等人,2023)获得的掩模中心用数字标记的方法。正如它证明了精确的指代可以提高 GPT-4V 的性能,我们对我们的部分分割任务采用了类似的方式。尽管 SAM(Kirillov 等人,2023)可能是在多个粒度上获得掩模的优越选择(Zou 等人,2023b),但它在小对象的部分分割上容易失败。因此,我们添加了 Grounding-DINO(Liu 等人,2023c)来首先检测对象,然后在对象补丁上而不是整个图像上应用 SoM。

定量结果

表 2 的左半部分显示了 Oracle 指代表达部分分割的结果,在这种情况下,对象和部分名称被明确嵌入到一个模板中,减轻了模型推理能力的需要。Object-Part 列代表使用 Eq. 2 中提到的模板的结果,而 Object-Part-Affordance 列根据 Eq. 3 包含了功能。表 2 的右半部分显示了指令推理部分分割的结果,其中指令中没有部分名称,需要更多的推理能力来理解隐含的含义。

比较表 2 的左右两部分,我们可以发现 Oracle 指代表达任务的性能通常优于指令推理任务。这表明当前模型缺乏从指令-图像对推断到正确交互部分的推理能力。对于 Oracle 指代表达分割任务,将功能纳入指令并没有明显提高平均性能。虽然 LISA 和 X-Decoder 取得了一些提升,但其他模型受到功能的影响。这表明大多数模型可能没有将部分与功能联系起来的常识。

表 2:Oracle 指代表达部分分割任务(左)和指令指代表达部分分割任务(右)的结果。我们将方法分为三类,即开放词汇分割(OVS)、指代表达表达分割(RES)和推理分割(RS)。

此外,从表 2 右半部分显示的平均结果来看,我们可以发现 GPT-4 重写的指令导致整体性能更好。我们推测这可能源于 GPT-4 的潜在推理能力。例如,给定一个指令 “如果我想把刀子拿起来,图片中的哪部分可以用?”,GPT-4 会明确指出模型应该引用的特定部分,如 “指出图片中的哪部分代表了刀柄。”。这种性能揭示了当前视觉-语言模型(VLMs)在推理领域仍然落后于大型语言模型(LLMs),需要更多的工作来利用 LLMs 的能力来提升 VLMs。

由于 Oracle 指代表达分割任务是指令推理分割任务的最佳条件,我们将首先分析它,以探索模型的视觉定位能力。

Oracle 指代结果。表 2 中的方法分为三类,即开放词汇分割(OVS)、指代表达分割(RES)和推理分割(RS)。尽管 VLPart 在众多部分分割数据上进行了训练,但它仍然无法处理 Oracle 指代任务,表明它无法泛化到我们面向机器人的数据分布。OVS 方法,OVSeg 和 SAN,在两个 IoU 指标上的表现优于 VLPart。然而,它们获得了较低的 P@50 和 P@50-95 分数,这可以归因于模型生成的是对象分割而不是部分,导致召回率较高,但准确性降低。

出乎意料的是,即使在 Oracle 指代部分分割任务中,RES 方法 X-Decoder、SEEM 和 TRIS 的表现也不佳。另一方面,Grounded-SAM 相对于上述方法表现得更好。这表明其基础模型 Grounding-DINO(Liu 等人,2023c)在检测部分方面比其他基于分割的方法具有更好的能力。这可能是因为检测数据(仅有四个坐标的格式)更容易获取,而且 Grounding-DINO 已经看过更多具有各种分布的数据。

LISA 作为一种在句子-掩模对上训练的推理分割方法,确实优于之前的方法。值得注意的是,尽管 Shikra 和 MiniGPT-v2 并非专门为分割任务设计,但与 SAM(Kirillov 等人,2023)的简单集成产生了超越 LISA 的结果。这再次证明,具有广泛分布的检测数据更容易收集,并且可以覆盖更多的部分类别。

指令推理结果。在表 2 的右半部分,我们分别报告了使用我们手工收集的数据和 GPT-4 重写数据的结果。由于任务对理解句子提出了更多挑战,所有结果都有所下降,尤其是在 VLPart 中,显著下降。OVSeg 和 SAN 的结果下降幅度较小,这可以解释为这些模型识别关键词以找到整个对象。由于我们的指令没有特意避免对象名称,这些 OVS 方法仍然可以找到整个对象。有趣的是,X-Decoder 在人工注释数据上的表现略有提升。不足为奇的是,LISA 在所有模型中表现最佳,因为它是在类似数据上训练的。然而,Shikra 的表现异常下降了近 20 倍。这表明尽管在各种视觉-语言数据上进行了训练,Shikra 仍然缺乏足够的推理能力来处理我们的指令推理任务。

GPT-4V基于方法的结果。表3展示了两种GPT-4V分割方法的结果。然而,由于配额限制,我们无法频繁调用GPT-4V API。因此,我们首先在理想参照任务上测试这两种方法,以探索GPT-4V的定位能力。此外,我们根据原始类别分布从数据集中选择了一个包含226个样本的子集。尽管这些结果无法与表2中的其他方法进行公平比较,但仍然显示出GPT-4V的表现较差。对于这两种方法,基于SoM的方法表现更优,表明GPT-4V很难直接定位部分目标,而是需要从一组选项中选择。然而,与Yang等人(2023b)中令人满意的成果相比,SoM未能处理我们当前的数据集。这可能由两个原因解释:1) 虽然GPT-4V能够定位物体(Yang等人,2023b),但我们推测它并未直接在细粒度部件数据上进行训练;2) 在细粒度部件中心标注数字可能导致指代时出现重叠和模糊性。

表 3:GPT-4 在对象-部分 Oracle 指代表达部分分割任务中的性能,应用于 InstructPart 的一个子集。

定性结果

图3展示了在指令推理分割任务上的可视化结果。第一列描绘了真实标签,其余列包括三个类别的结果,分别是OVS:OVSeg(梁等人,2023)、SAN(徐等人,2023)、RES:X-Decoder(邹等人,2023a)、SEEM(邹等人,2023b)、TRIS(刘等人,2023a)、Grounded-SAM,以及RS:MiniGPT-v2(陈等人,2023a)、LISA(赖等人,2023)。我们没有包含VLPart(孙等人,2023)和Shikra(陈等人,2023b)的结果,因为它们在这组样本中几乎无法得出任何输出。

前五行分别展示了冰箱把手、勺子碗部、微波炉把手、椅子座位以及红酒杯茎。我们可以发现LISA能够正确区分特定部件与整个对象,而其他方法往往预测更大的区域。然而,在剩余的三组样本,即刀柄、钳子把手和杯子把手中,尽管这些部件已从背景中区分出来且对人类判断看似简单,但所有模型都难以找到正确的部件。这表明模型缺乏对部件特征的理解,要解决这一挑战还需进一步研究工作。

图 3:指令推理部分分割任务的可视化结果。指令是人类注释的。绿色掩模代表真实情况,红色掩模代表预测。

讨论

我们的研究揭示了推理分割技术通常优于其他方法,这突显了端到端多模态基础模型在视觉-语言定位方面的有效性,超越了局限于特定、狭窄任务的传统模型。此外,基于检测的模型所取得的令人印象深刻的结果表明,在训练阶段结合检测和分割数据可能是有益的。

进一步地,我们展示了使用InstrutPart样本集的一个极小集合就能显著提高现有模型的指令推理能力。具体来说,仅使用226个样本对LISA-7B-v1模型(赖等人,2023)进行微调,经过600次迭代后取得了显著改进。这一点在剩余474个样本组成的测试集中得到了验证,其gIoU指标从26.18%提升至42.01%,cIoU指标从28.10%提高到了48.75%。这说明即使是我们高质量数据的一个小子集也能显著增强模型理解指令并细分部件的能力,从而证实了我们的数据用于进一步训练时具有卓越的质量和实用性。

结论

在这项工作中,我们引入了InstructPart这一新数据集,其中包含了针对常见家庭任务指令的部件标注信息。我们发现,即使是最先进的视觉-语言模型在处理将特定功能与对象相应部件关联的指令时也会遇到困难。这突显了机器人领域中基础模型的一个重大空白。通过我们的数据集,我们希望推动未来研究,使普通人在家中环境能够通过将高层指令与物体以及最重要的是能够满足他们需求的物体部件进行关联,从而有效地与其辅助机器人互动,进而铺就更自然的人机交互之路。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值