
(Mindmap) Part-level Scene Understanding for Robots
A scene graph is a structural representation, which can capture detailed semantics by explicitly Modeling:
A scene graph is a set of visual relationship triplets in the form of <subject, relation, object> or <object, is, attribute>
Scene graphs should serve as an **objective semantic representation** of the state of the scene(Roadmap) Deeper Scene Graph For Robots
Robotic planning and execution in open-world environments is a complex problem due to the vast state spaces and high variability of task embodiment.
例如针对家用场景:
目前粗粒度(object-level)的场景抽象(场景图构建)已经有许多工作了,详见Reconstruct-Anything Literature Review,在这些工作中,重点都在于object detection和 object-level visual relationship detection
需要聚焦的部分是多粒度的场景抽象
需要多粒度的原因:
在更细粒度(part-level)的场景抽象中,重点在于子物体和父物体关系的识别
除此,和object-level scene graph中的object detection相对的,是part-level scene graph的子物体语义的多粒度分割和语义信息提取,可以由现有的Semantic-SAM和类似CLIP或者其他多模态模型的语义特征提取器实现。
What aspects does parent-child relationship include?
Reconstruct Anything Literature Review
涉及的文章:
通过构建part-level scene-graph,结合Reasoning with LLM 让机器人能够实现更复杂的交互,并以此完成更复杂的任务。
Visual scene understanding长期以来一直被认为是计算机视觉的圣杯
Visual scene understanding 可以被分为两块任务
recognition task
application task
但是以上这些Generally
的工作注重的都是the localization of objects,更高级别的任务强调探索对象之间的丰富语义关系,以及对象与周围环境的相互作用
除此之外还有将NLP和CV结合起来的方向,主要是一些VLM
对于总体场景的感知和信息的有效表示仍然是瓶颈。
所以Li Feifei 在[[Image Retrieval using Scene Graphs]]提出Scene Graph
与Structured Representation相对的是Latent Representation
A scene graph is a structural representation, which can capture detailed semantics by explicitly Modeling
A scene graph is a set of visual relationship triplets in the form of <subject, relation, object> or <object, is, attribute>
Scene graphs should serve as an objective semantic representation of the state of the scene
Scene Graph具有应对和改善其他视觉任务的内在潜力。
可以解决的视觉任务包括:
场景图生成的目的是解析图像或一系列图像,并且生成结构化表示,以此弥合视觉和语义感知之间的差距,并最终达到对视觉场景的完整理解。
任务的本质是检测视觉关系。
早先由Feifei [[Visual Relationship Detection with Language Priors]] 提出了视觉关系检测的方法。
以及Visual Genome这个包含物体关系的数据集
Detects objects first and then solves a classification task to determine the relationship between each pair of objects
**General:** a) 通过图片获取 subject/object and union box proposals (ROI感兴趣区域)b) 提取每个区域的特征。包括object的appearance, spatial information, label, depth, and mask;predicate的appearance, spatial, depth, and mask。
c) 这些多模态特征被 vectorized, combined, and refined。可以通过:
d) 分类器用于预测predicate的类别
基于Visual translation embedding的
Simultaneously detects and recognizes objects and relations
相较于two-stage:
基本都是基于LLM或者VLM之类的大模型
这里所有的工作都是关于如何判断两个独立物体之间的谓语关系(例如riding, holding…),并没有涉及part-level relationship的工作。part-level的父子关系和object-level的谓语关系是很不一样的。
即场景信息存储在一个神经网络中,并没有显式的结构,规划器(可以是LLM)通过query这个模型来获得信息。
核心思想是用交互更丰富的模型组合成可交互的替代场景。
主要用于建模物体之间的运动学关系
将 scene graph 用于机器人任务理解和规划
本文提出的模型主要想解决3D密集标注和交互式规划。
结合
需要align the dense 3D visual information with the textual embedding space of a pre-trained LLM。3D点集由于其连续坐标系以及需要适应场景状态变化的表示形式而构成了一个独特的问题
3D-VQA
VLN(Visual-Language Navigation)
和[[3D-LLM]]一样,都是多视角采集D-RGB信息然后整合为3D frame
标注信息来自于Mini-GPT-V2(capable of generating captions and object descriptions from images by using caption and grounded caption identifiers)。
Uses image frames and a 2D-VLM(Mini-GPT-V2) to generate frame descriptions
3D场景数据是通过基于其相机姿势汇总的3D帧来重建
使用Llama-2-Chat-70B [65]生成场景的语言注释
From Vision Studio 对于VLM生成内容使用的self-checking: [83]prompted with a mix of context data including generated frame captions, frame object descriptions, annotated object lists, and annotated bounding boxes. These prompts lead to diverse instruction-following data types like dense caption, object caption, task decomposition, functionality enhancement, question-answering, and human-robot dialogues
场景-LLM是一种3D视觉语言模型(VLM),具有简单而有效的体系结构,旨在理解以基于本体和场景级别的3D视觉信息,使其能够成功执行交互式计划任务。本节概述了3D视觉特征提取过程,我们的模型的体系结构,3D视觉信息与数据集的对齐以及使用Scene-LLM进行推理。
Employ visual language semantic features [51] to represent 3D visual semantics
Tokenize 3D visual features for LLM input:
To bridge 3D visual tokens(F) with the LLM’s tokenized space
FC(1030, 768)->GELU->FC(768,768)
Llama-2-7b as the foundational LLM backbone
在两个坐标系统(camera和世界坐标)下使用3D帧数据,以确保场景-LLM理解以自我为中心和以场景为中心的观点。
在此阶段,仅训练了projection layer,可以有效地对齐具有文本特征的3D视觉特征,同时保持LLM参数(φ)不变。
优化Scene-llm,以准确响应用户说明。我们使用标识符令牌“我看到”将3D帧语言和3D场景语言数据合并到前言。文本描述分为指令($T_{INST}$)及其相应的响应($T_{ANS}$)。利用转换后的3D视觉令牌($T_{3D}$)和指令令牌($T_{INST}$),我们的目标是微调LLM(φ)以自动生成$T_{ANS}$.
在这里,我们共同微调了投影层和LLM,由θ= {ψ,φ}表示
Recent works have explored aligning images and videos with LLM for a new generation of multi-modal LLMs that equip LLMs with the ability to understand and reason about 2D images.
但是仍缺少对于3D物理空间进行分析的模型, which involves richer concepts such as spatial relationships, affordances, physics and interaction so on.
由此提出了inject the 3D world into large language models
, 介绍一个全新的3D-llm模型族,可以将3D表示(即带有功能的3D点云)作为输入,并执行一系列与3D相关的任务。
优势:
挑战
OK-Robot- What Really Matters in Integrating Open-Knowledge Models for Robotics
Creating a general-purpose robot has been a longstanding dream of the robotics community.
当前想要实现这一目标的系统脆弱、封闭,并且在遇到未见过的情况时会失败。即使是最大的机器人模型通常也只能部署在以前见过的环境中 [5, 6]。在机器人数据很少的环境中,例如在非结构化的家庭环境中,这些系统的脆弱性会进一步加剧。
虽然大型视觉模型显示出语义理解 、检测以及将视觉表示与语言联系起来的能力并且与此同时,机器人的导航、抓取和重新排列等基本机器人技能已经相当成熟。
但是将现代视觉模型与机器人特定基元相结合的机器人系统表现非常差。
这可能是因为单纯将多个不确定性的系统组合在一起会导致准确率急剧恶化。
所以我们需要一个将VLM和机器人primitives(导航,抓取,放置)结合在一起的细致框架,即OK-Robot。
Pick up A (from B) and drop it on/in C”, where A is an object and B and C are places in a real-world environment such as homes
负责空间重建,识别物体大致位置,机器人导航
用到的方法: