five

GNN_Disassembly_WorldModel

收藏
Hugging Face2026-04-19 更新2026-04-20 收录
下载链接:
https://huggingface.co/datasets/ChangChrisLiu/GNN_Disassembly_WorldModel
下载链接
链接失效反馈
官方服务:
资源简介:
GNN约束感知世界模型数据集(v3)是一个面向机器人和图机器学习任务的多模态数据集,包含桌面拆解和汉诺塔两个操作领域。数据集核心特征包括每帧约束图、SAM2分割掩码(含256维特征嵌入)、完整3D深度束、同步机器人状态,以及统一的270维节点特征格式。数据采集使用UR5e机械臂和Robotiq 2F-85夹爪,配合OAK-D Pro侧视摄像头。桌面拆解领域包含9种组件类型(8种产品+机器人节点),汉诺塔领域包含4种圆环类型。数据集提供四种PyG加载变体,支持产品专用图、带机器人节点、带机器人状态或带机器人动作的不同应用场景。文件布局采用标准化结构,包含RGB/深度图像、机器人状态轨迹、时间戳、组件掩码/嵌入、约束图等。数据集总规模在1K-10K样本之间,适用于约束感知视频生成、机器人操作规划、图神经网络世界模型等研究任务。
创建时间:
2026-04-11
原始信息汇总

GNN Constraint-Aware World Model Dataset (v3) 数据集概述

基本信息

  • 数据集名称: GNN Constraint-Aware World Model Dataset (v3)
  • 许可证: CC BY 4.0
  • 任务类别: 机器人技术、图像分割、图机器学习
  • 语言: 英语
  • 标签: 机器人技术、操作、拆卸、汉诺塔、约束图、图神经网络、世界模型、SAM2、分割、UR5e
  • 数据规模: 1K < n < 10K
  • 项目: CoRL 2026 — GNN world model for constraint-aware video generation
  • 作者: Chang Liu (Texas A&M University)
  • 硬件: UR5e + Robotiq 2F-85 夹爪,OAK-D Pro(静态侧视图)
  • 格式版本: v3.0 (更新于 2026-04-16)

领域概览

数据集包含两个机器人操作领域,共享统一的 270维节点特征格式

领域 提供的图变体 节点词汇表大小 节点特征维度 边特征维度 数据根目录
桌面拆卸 products-only, with-robot-node, with-robot-state, with-robot-action 9 (8个产品 + robot) 270 3 session_<date>_<time>/episode_XX/
汉诺塔 products-only, with-robot-state, with-robot-action 4 (ring_1..ring_4) 270 3 hanoi/session_hanoi_<date>_<time>/episode_XX/

节点特征维度构成: 256 (SAM2嵌入) + 3 (3D位置) + 10 (固定类型编码) + 1 (可见性) = 270。10维类型编码是固定的、确定性的每类型向量(非训练所得),在加载时从 config/type_encoding_random.yamlconfig/type_encoding_clip.yaml 读取。

四个加载器变体 (均返回 torch_geometric.data.Data):

  • load_pyg_frame_products_only — V1 基础图:仅产品/圆环,无机器人信息。
  • load_pyg_frame_with_robot — V2 消融:机器人作为图节点附加(仅限桌面领域;汉诺塔v1无机器人掩码,因此回退到products-only)。
  • load_pyg_frame_with_robot_stateV3 推荐:仅产品图 + robot_state=[13] 侧张量。适用于两个领域,因为 robot_states.npy 在所有地方都存在。
  • load_pyg_frame_with_robot_action — V3 动作条件化:同上 + robot_action=[13] 下一帧的增量。

文件布局 (两个领域相同)

episode_XX/ ├── metadata.json # 片段元数据(领域特定额外信息) ├── robot_states.npy # (T, 13) float32 — 关节 + TCP + 夹爪 ├── robot_actions.npy # (T-1, 13) float32 — 帧增量 ├── timestamps.npy # (T, 3) float64 ├── side/ │ ├── rgb/frame_XXXXXX.png # 1280×720 RGB │ └── depth/frame_XXXXXX.npy # 1280×720 uint16 (mm) ├── wrist/ # 原始腕部摄像头(v3中未使用) └── annotations/ ├── side_graph.json # 组件、静态边、frame_states ├── side_masks/ # 每帧 {component_id: (H,W) uint8} ├── side_embeddings/ # 每帧 {component_id: (256,) float32} ├── side_depth_info/ # 每帧扁平键控深度包 ├── side_robot/ # 每帧机器人包(可见性标志) └── dataset_card.json # 格式描述

对齐保证: 每个带标签的帧索引在 side_masks/side_embeddings/side_depth_info/side_robot/ 四个目录中都有文件。文件由相同的整数帧索引键控。

桌面拆卸领域

组件 (9种类型)

八种产品类型 + 一个机器人代理。多个实例(例如 ram_1, ram_2)共享相同的10维类型编码,并通过SAM2嵌入 + 3D位置区分。

索引 类型 颜色 备注
0 cpu_fan #FF6B6B 开始时始终可见
1 cpu_bracket #4ECDC4 开始时隐藏(风扇下)
2 cpu #45B7D1 开始时隐藏
3 ram_clip #96CEB4 多实例
4 ram #FFEAA7 多实例
5 connector #DDA0DD 多实例
6 graphic_card #FF8C42 始终可见
7 motherboard #8B5CF6 始终可见(基础)
8 robot #F5F5F5 代理节点(单独存储在 side_robot/ 中)

稀疏约束边

有向先决关系 — A -> B 表示“必须先移除A才能移除B”:

cpu_fan -> cpu_bracket (风扇覆盖支架) cpu_fan -> motherboard cpu_bracket -> cpu cpu_bracket -> motherboard cpu -> motherboard ram_N -> motherboard ram_clip_N -> motherboard ram_clip_N -> ram_M (用户手动配对) connector_N -> motherboard graphic_card -> motherboard

典型片段包含10-15个产品节点和10-14条存储的有向边。

可用桌面片段

会话 / 片段 带标签帧数 目标
session_0408_162129/episode_00 346 cpu_fan
session_0410_125013/episode_00 473 cpu_fan
session_0410_125013/episode_01 525 graphic_card
总计: 1344帧

汉诺塔领域

组件 (4种类型) — 仅圆环,v1中无机器人节点

汉诺塔片段使用原生圆环ID(ring_1 .. ring_4)在 components 中并作为npz键 — 无桌面代理重映射,且v1中无机器人节点type_vocab["ring_1", "ring_2", "ring_3", "ring_4"](长度4)。机器人分割被推迟;side_robot/*.npz 每帧填充零以保持格式统一,但从不成为图节点。

ID 颜色 圆盘尺寸 角色
ring_1 红色 (#E63946) 32 mm 最小
ring_2 黄色 (#F1C40F) 42 mm
ring_3 绿色 (#2ECC71) 52 mm
ring_4 蓝色 (#2E86DE) 62 mm 最大

任务种类 (40 / 40 / 20 采样)

种类 权重 提示模板 目标
classical 0.40 "Solve the puzzle: stack all rings on peg X" 所有4个圆环按大小顺序堆叠在一个柱子上
single_ring 0.40 "Move the <color> ring to peg X" 移动一个指定圆环;其他不动
rearrange 0.20 "Rearrange: red on peg A, green on peg B, ..." 均匀采样的有效(大在下小在上)配置

结构边 (静态,始终为6条)

6条较小→较大的有向对被逐字存储在 side_graph.json 中:

ring_1 -> ring_2 ring_1 -> ring_3 ring_1 -> ring_4 ring_2 -> ring_3 ring_2 -> ring_4 ring_3 -> ring_4

在PyG加载时,加载器扩展为 4 × 3 = 12 条全连接的有向边。

每帧 is_locked 语义

(A, B) 上的 is_locked = 1 当且仅当A当前是同一柱子上紧挨着堆叠在B上方的圆环(在柱子堆栈中相邻,A在B上方)。其他所有配对 — 同一柱子上非相邻、不同柱子、或任一圆环在运输中 — 的 is_locked = 0。这严格是“当前物理堆叠”,而非“A必须在B之前移动”。

可用汉诺塔片段

会话 / 片段 帧数 mission_kind goal_prompt 移动次数
session_hanoi_0415_190808/episode_00 494 single_ring "Move the red ring to peg B" 1
session_hanoi_0415_190808/episode_01 6719 classical "Solve the puzzle: stack all rings on peg C" 15
session_hanoi_0415_190808/episode_02 266 single_ring "Move the red ring to peg B" 1
总计: 7479帧

共享信息

PyG边特征语义 (3维,两个领域)

edge_attr[k] = [has_constraint, is_locked, src_blocks_dst]

has_constraint is_locked src_blocks_dst 含义
0 0 0 无物理约束 — 仅用于消息传递。用于:机器人 ↔ 任何物体;汉诺塔较大 → 较小(在配对级别为非边)
1 1 1 约束激活,src是阻塞者(物理桌面)/ src位于顶部(物理汉诺塔)
1 1 0 相同配对,反向 — src是被阻塞者 / src在下方
1 0 1 约束释放,src曾是阻塞者 / 当前无接触的合法放置方向
1 0 0 相同释放配对,反向

对称不变量: has_constraintis_locked 在每个无序对上是对称的((i, j)(j, i) 的值相同)。src_blocks_dst 在两个方向之间翻转。机器人 ↔ 任何物体的边始终为 [0, 0, 0]

固定10维类型编码 — 创建方法

两个领域的组件类型全集为 13种类型(两个词汇表的并集):

cpu_fan, cpu_bracket, cpu, ram_clip, ram, connector, graphic_card, motherboard, ring_1, ring_2, ring_3, ring_4, robot

每种类型被分配一个固定的10维向量。该编码非训练所得 — 它是一个在加载时从YAML读取的确定性查找表,因此数据集的任何使用者都能获得完全相同的节点特征。提供了两种方法;两个YAML文件都位于数据集仓库根目录,与会话目录并列:

方法 YAML文件 向量构建方式 语义结构
random config/type_encoding_random.yaml numpy.random.default_rng(42) 单位范数10维向量,每类型一个 无 — 向量是近似正交的噪声
clip config/type_encoding_clip.yaml CLIP ViT-B/32 文本嵌入(如 "a CPU fan", "a small red ring")→ PCA降维至10 → 单位归一化 相关类型聚类(四个圆环接近;风扇/支架/CPU聚类紧密)

未知类型 → 10维零向量。如果组件的 type 不在YAML中,加载器为该槽返回 np.zeros(10, dtype=np.float32)。这确保了无论词汇表如何变化,节点维度都保持为270。

搜集汇总
数据集介绍
main_image_url
构建方式
在机器人操作领域,构建高质量的多模态数据集对于推进具身智能研究至关重要。该数据集通过精心设计的采集与标注流程构建:首先采用UR5e机械臂与Robotiq 2F-85夹爪硬件平台,在桌面拆卸与汉诺塔两个操作域中以30Hz频率同步采集RGB-D图像流与机器人状态数据;随后通过离线自动标注流程,结合HSV色彩分割、SAM2视觉模型与深度反投影技术,生成逐帧的语义分割掩码、256维特征嵌入及三维位姿信息;最后通过符号化约束状态推演与人工验证界面,确保约束图结构与物理交互逻辑的精确对齐。
特点
本数据集的核心特征体现在其统一的多模态表示框架。所有数据样本均遵循标准化的270维节点特征格式,融合了SAM2视觉嵌入、三维空间坐标、确定性类型编码与可见性标志。数据集创新性地提供了四种图神经网络加载变体,支持从基础物体关系到机器人状态融合的渐进式建模需求。特别值得注意的是,通过固定的10维类型编码机制,实现了跨操作域的词汇表扩展兼容性,确保模型能够泛化至未见过的物体类别。约束图的边特征采用三维语义向量,精确编码物理约束的存在性、激活状态与方向关系。
使用方法
研究人员可通过标准化的PyG数据加载接口便捷地使用本数据集。加载器提供四种预设模式:基础物体图、带机器人节点的扩展图、融合机器人状态的增强图以及动作条件预测图,分别对应不同的建模范式。使用前需配置类型编码文件路径,系统将自动解析数据目录中的JSON图结构、NPZ掩码文件与机器人轨迹数据。对于汉诺塔域,加载器支持任务元数据与目标提示语的联合加载,便于进行目标导向的序列生成研究。数据集的统一格式设计使得跨域迁移学习与对比实验能够直接进行。
背景与挑战
背景概述
GNN_Disassembly_WorldModel数据集由德克萨斯农工大学的Chang Liu等人于2026年构建,旨在为约束感知的视频生成任务提供结构化视觉-物理表征。该数据集聚焦于机器人操作领域,通过真实机器人(UR5e)在桌面拆卸与汉诺塔两个场景中采集同步的多模态数据,并构建了包含稀疏约束图、SAM2分割掩码与特征嵌入、三维深度信息及机器人状态的统一表征。其核心研究问题在于如何利用图神经网络(GNN)建立能够理解物理约束关系的世界模型,从而支持长时程操作任务的视频预测与规划。该数据集为机器人学习与计算机视觉的交叉研究提供了重要的基准,推动了具身智能中结构化场景理解与生成模型的发展。
当前挑战
该数据集致力于解决机器人操作中约束感知视频生成的挑战,其核心问题在于如何从高维视觉流中提取并建模物体间的物理约束关系(如拆卸顺序、堆叠规则),并实现长时程、多步骤操作的未来帧预测。构建过程中的挑战主要体现在多模态数据的精确对齐与标注上:需确保RGB、深度、机器人状态在30Hz采集下的严格同步;需通过自动化流程(如HSV分割、SAM2微调、符号化约束反推)生成高质量的掩码、嵌入与约束图;还需设计统一的节点特征格式(270维)以兼容不同领域的组件词汇表,并保证约束图在时间演化中的一致性。此外,数据集的规模扩展与标注验证也面临实际机器人实验成本高昂、标注界面需支持细粒度修正等工程挑战。
常用场景
实际应用
在工业自动化与智能装配场景中,该数据集支撑的技术具有明确的应用前景。基于约束感知的世界模型能够预测拆卸或装配过程中组件间的物理干涉与操作顺序,从而优化机器人任务规划与异常检测。在桌面拆卸领域,模型可学习电子元件间的依赖关系,辅助生成安全的拆卸策略;在汉诺塔任务中,模型对堆叠约束的建模能力可直接迁移至物流分拣中的物体堆叠稳定性预测。此外,数据集提供的SAM2细粒度分割与特征嵌入,为少样本物体识别与操作中的实时姿态估计提供了预训练基础。
衍生相关工作
围绕该数据集已衍生出多个方向的研究工作。在模型架构方面,催生了专注于约束图时序预测的图神经网络变体,如结合机器人状态编码的图自编码器与动作条件化的图变换器。在算法层面,基于数据集中‘is_locked’与‘src_blocks_dst’等边缘语义,发展了硬约束满足的推理方法与软约束的学习目标设计。数据集统一的多模态格式也促进了视觉-语言-机器人状态的联合表征学习研究,例如将目标提示(goal_prompt)与约束图生成相结合的任务规划模型。这些工作共同推动了结构化操作场景下可解释世界建模的技术前沿。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作