Manual2Skill——让VLM从装配手册中提取装配步骤,随后做姿态估计,最终完成IKEA家具的自动组装(含IKEA-Manuals的详解)

前言

目前我和多个合伙人共管4个办公室:北京、长沙、武汉、南京,而我和阳则共管长沙

  1. 具体而言,我是三年前到的长沙,一开始起步艰难,但到底在一个半月(25年6.4-7.19)便把长沙的具身团队给迅速培养起来了------换言之,现在 给我任何一支5-10人的大模型团队,我或技术合伙人都可以在一个月之内把其迅速转型到具身,并具备复现顶级具身模型的能力
  2. 而三年前 我很难想到,会在具身闯出一条路 开辟一片新天地,23年还经历过大模型开发,不过 如今也算完美结合了

昨天下午,一客户朋友称看了我CSDN上的文章 受益匪浅(每周都好几个朋友如此对我说,感谢大伙的支持)

并问我:" 我是某某汽车这边 刚开始做机器人方向 后面想在工厂用起来 你们有做有关工厂相关应用吗 "

我回复说," 我们做的目前涉及

  • 工厂相关
    机械臂层面偏++智能装配++ 、各种场景的插拔(比如电源插拔、耳机插孔)
    人形层面,偏搬运
  • 工厂之外
    则围绕『展厅讲解、实验室检化验(精细操作)、电力巡检(导航 + 操作)』等较多
    "

说到智能装配,其重要性不言而喻,且其对工厂的提效深深的吸引我,毕竟不只是纯粹的做桌面demo或秀花活,而是实实在在的促进生成制造效率

  1. 比如现在绝大部分生产线只是实现了自动装配,但一旦型号一变、大小一变------比如装配微波炉,产线便得暂停以切换程序
    而最理想的情况是,不论什么型号、大小,只要变化不大,最好是不用暂停产线 也不用切换程序,而是同一套程序、同一套机械臂继续装配,如此便可达到效率的最大化
  2. 虽然现在切换程序也很快,而且此种智能方案短时间内 也没法代替传统方案,但趋势是挡不住的,且随着智能装配技术的日渐成熟,最终各个工厂都会实现该种智能装配

而提到智能装配,本文要介绍的Manual2Skill是很值得一读的论文,我其实几个月前 便关注到了,但此前一直没来得及解读

  1. 值得一提的是,论文中提到:" 装配插入属于高度接触型任务,需要多模态传感(如力传感器和闭环控制)以确保精确对齐和牢固连接,将在后续研究中深入探讨,在Manual2Skill当前的方法中,插入操作由人类专家手动完成 "

  2. 这点,和我之前的判断是一致的,也类似我此前解读的这个工作《VITAL------结合ResNet视觉与MLP触觉且带语义增强的适用于精密插拔的可泛化BC:先VLM定位、后执行在线残差RL微调的策略(MLP作为动作头)

第一部分 Manual2Skill

1.1 引言、相关工作、问题表述

1.1.1 引言

如原论文所说,人类可以通过图像或文本中的说明学习操作技能;例如,人们可以通过遵循说明手册来组装宜家家具或乐高模型。这一能力使人类能够高效地从手绘说明中习得具有长时间跨度的操作技能

  • 相比之下,机器人通常通过
    模仿学习[59-A survey of imitation learning: Algorithms, recent developments, and challenges]
    或强化学习[43-Deep reinforcement learning for robotics: A survey of realworld successes]
    来学习此类技能,这两种方法都需要显著更多的数据和计算资源

    故让机器人能够像人类一样将抽象的操作手册转化为现实世界的动作,仍然是一个重大挑战。毕竟手册通常是为人类理解而设计,采用简单的示意图和符号来传达操作过程
    总之,这种抽象性使得机器人难以理解这些说明,并从中推导出可执行的操作策略
    32-Ikea manuals at work: 4d grounding of assembly instructions on internet videos,2024
    49-Ikea-manual: Seeing shape assembly step by step,2022
    48-Translating a visual lego manual to a machine-executable plan

  • 因此,开发一种方法,使机器人能够有效利用人类设计的手册,将极大地提升其应对复杂、长时序任务的能力,同时减少大量示范数据的采集需求

手册本质上编码了复杂任务的结构信息

  1. 它们将高层目标分解为中层子目标,并捕捉任务流程及其依赖关系,例如顺序步骤或可并行的子任务。例如,家具组装手册指导组件的准备与组合,并确保所有步骤按照正确顺序进行[32-Ikea manuals at work]

    提取这种结构对于机器人复制类似人类的理解并有效管理复杂任务至关重要
    19-Roboexp: Action-conditioned scene graph via interactive exploration for robotic manipulation
    33-Structurenet: Hierarchical graph networks for 3d shape generation

  2. 在完成任务分解后,机器人需要推断每一步的具体信息,如涉及的组件及其空间关系。例如,在烹饪任务中,说明图片和文本可能涉及选择食材、工具和器皿,并按特定顺序进行排列[38-Robocook: Long-horizon elasto-plastic object manipulation with diverse tools]

  3. 最后,机器人需要生成一系列动作来完成任务,如抓取、放置和连接组件
    以往的研究尝试
    利用草图图片[42-Rt-sketch: Goal-conditioned imitation learning from hand-drawn sketches]
    或轨迹[15-Rt-trajectory: Robotic task generalization via hindsight trajectory sketches]
    来学习操作技能,但这些方法总是局限于相对简单的台面任务

25年2月,来自1 新加坡国立大学、2 多伦多大学、3 北京大学、4 四川大学、5 浙江大学的研究者提出了Manual2Skill

其能够从视觉说明手册中学习操作技能。该框架可用于自动组装IKEA家具,这是一项具有挑战性且实用的任务,需要复杂的操作技能

  1. 具体而言,给定一组手册图片和实际家具部件,作者首先利用视觉语言模型理解手册内容,并提取装配结构,将其表示为分层图
  2. 随后,训练模型以估算每个步骤中所有相关组件的装配姿态
  3. 最后,运动规划模块生成动作序列,将选定组件移动到目标姿态,并在机器人上执行这些动作以完成家具组装

1.1.2 相关工作

第一,对于家具组装

零件装配一直是一个长期存在的难题,已有大量研究致力于探索如何将单独的组件或零件组装成完整的形状

  • 6-Neural shape mating: Self-supervised object assembly with adversarial shape priors
  • 13-Learning how to match fresco fragments
  • 20-Automate: A dataset and learning approach for automatic mating of cad assemblies
  • 27-Ikea furniture assembly environment for long-horizon complex manipulation tasks
  • 29-Learning 3d part assembly from a single image
  • 36-Diffassemble: A unified graph-diffusion model for 2d and 3d reassembly
  • 53-Leveraging se (3) equivariance for learning 3d geometric shape assembly
  • 46-Asap: Automated sequence planning for complex robotic assembly with physical feasibility
  • 45-Assemble them all: Physics-based planning for generalizable assembly by disassembly

总体而言,可以将零件装配分为几何装配和语义装配两类

  • 几何装配仅依赖于几何线索,例如表面形状或边缘特征,来判断部件如何装配在一起
    6-Neural shape mating: Self-supervised object assembly with adversarial shape priors
    53-Leveraging se (3) equivariance for learning 3d geometric shape assembly
    37-Breaking bad: A dataset for geometric fracture and reassembly
    10-Generative 3d part assembly via part-whole-hierarchy message passing

  • 相比之下,语义装配主要利用关于部件的高级语义信息来引导装配过程
    13-Learning how to match fresco fragments
    20-Automate: A dataset and learning approach for automatic mating of cad assemblies
    27-Ikea furniture assembly environment for long-horizon complex manipulation tasks
    29-Learning 3d part assembly from a single image
    45-Assemble them all: Physics-based planning for generalizable assembly by disassembly

    家具组装是一项具有代表性的语义组装任务,其中每个部件都有预定义的语义角色(例如,椅子腿或桌面),组装过程遵循直观且符合常识的关系(例如,椅子腿必须连接到椅子座位)

    以往关于家具组装的研究主要针对该问题的不同方面,包括运动规划
    41-Can robots assemble an ikea chair?

    多机器人协作
    25-Ikeabot: An autonomous multi-robot coordinated furniture assembly system

    以及组装姿态估计
    29-Learning 3d part assembly from a single image
    58-Roboassembly: Learning generalizable furniture assembly policy in a novel multi-robot contact-rich simulation environment
    30-Category-level multi-part multijoint 3d shape assembly

    研究人员还开发了若干数据集和仿真环境以促进该领域的研究。例如
    Wang等人[49-Ikea-manual: Seeing shape assembly step by step]
    和Liu等人[32-Ikea manuals at work:4d grounding of assembly instructions on internet videos]
    引入了包含家具三维模型和基于说明书结构化组装步骤的IKEA家具组装数据集

    此外,Lee等人[27-Ikea furniture assembly environment for long-horizon complex manipulation tasks]
    和Yu等人[58-Roboassembly: Learning generalizable furniture assembly policy in a novel multi-robot contact-rich simulation environment]开发了用于IKEA家具组装的仿真环境

    而Heo等人[16-Furniturebench: Reproducible real-world benchmark for long-horizon complex manipulation]则提供了可复现的真实家具组装基准

然而,现有工作通常侧重于特定子问题,而未能涵盖整个组装流程。在本研究中,作者旨在开发一个全面的框架,从说明书中学习家具组装的顺序过程,并将其应用于真实世界的实验中

第二,对于VLM引导的机器人学习

视觉语言模型VLMs [57-A survey on multimodal large language models]已被广泛应用于机器人领域,用于

  • 理解环境[17-Copa: General robotic manipulation through spatial constraints of parts with foundation models]
  • 和与人类交互[39-Yell at your robot: Improving on-the-fly from language corrections]

近期的进展突显了VLM通过融合视觉与语言信息提升机器人学习能力的潜力,使机器人能够以更强的适应性和效率完成复杂任务[18-李飞飞团队推出的Rekep]

  1. 一个有前景的方向是开发视觉语言动作模型(VLA Model),该模型可基于视觉和语言输入生成动作
    2-π0
    23-Openvla
    3-Rt-2
    44-Octo

    然而,训练此类模型需要大量数据,并且在处理长时序或复杂操作任务时仍存在挑战

  2. 另一个方向是利用VLM为机器人学习提供高层次指令和感知理解
    VLM可辅助
    任务描述[17-Copa, 18-rekep]
    环境理解[19-Roboexp: Action-conditioned scene graph via interactive exploration for robotic manipulation]

    任务规划
    47-Chatgpt for robotics: Design principles and model abilities
    56-React: Synergizing reasoning and acting in language models
    62-large language models as commonsense knowledge for largescale task planning

    甚至直接进行机器人控制[28-Manipllm: Embodied multimodal large language model for object-centric robotic manipulation]
    此外,Goldberg等人[14-Blox-net: Generative design-for-robot-assembly using vlm supervision, physics simulation, and a robot with reset]展示了VLM如何协助机器人装配任务的设计

在这些见解基础上,作者进一步探索VLM如何解读抽象手册并提取结构化信息,以指导机器人技能学习,特别是针对长时序操作任务

第三,对于从演示中学习

从演示中学习(LfD)在获取机器人操作技能方面取得了令人瞩目的成果 [12-mobile aloha, 64-Viola: Imitation learning for vision-based manipulation with object proposal priors, 7-Diffusion policy]

  1. 关于机器人装配中LfD的更全面综述,可参考Zhu和Hu的工作 [65-Robot learning from
    demonstration in robotic assembly: A survey]
    其核心思想是学习一种能够模仿专家的行为的策略

    然而,先前的学习方法通常需要细粒度的示范,例如
    机器人轨迹[7-Diffusion policy]

    或视频
    22-Egomimic: Scaling imitation learning via egocentric video
    40-Roboclip: One demonstration is enough to learn robot policies
    21-View: Visual imitation learning with waypoints

    收集这些示范往往非常耗费人力,并且并不总是可行

  2. 有些研究提出从粗粒度的示范中学习,比如手绘的期望场景草图[42-Rt-sketch: Goal-conditioned imitation learning from hand-drawn sketches, 2024]

    或粗略的轨迹草图[15-Rt-trajectory: Robotic task generalization via hindsight trajectory sketches]

    这些方法减少了对专家示范的依赖,提高了模仿学习(LfD)的实用性
    然而,它们大多仅限于桌面操作任务,并且难以很好地推广到更复杂、长周期的装配问题

在本研究中,作者旨在突破这些限制,通过利用抽象的说明手册,解决更具挑战性的装配任务,从而扩展LfD的应用范围

1.1.3 问题表述

给定一套完整的三维装配零件及其装配手册,作者的目标是为自主家具装配生成一组物理可行的机器人装配动作序列。手册通常采用示意图和符号,以抽象的方式逐步展示装配步骤,使其具有普遍可理解性

  1. 可将手册页面定义为一组 N张图像,,其中每张图像 展示了装配过程中的特定步骤,例如某些零件或子组件的组合
  2. 家具由 M 个独立部件 P 组成,。零件是中的单个元素,在装配前与其他部分保持分离
    子装配是指由部分或全部已装配的结构,且构成P的一个真子集(例如,)。术语"组件"包括零件和子装配
  3. 根据手册和3D零件,系统生成装配方案。每一步都对应一张手册图片,并明确涉及的零部件和子组件、它们的空间6D位姿,以及执行所需的装配动作或运动轨迹

1.2 Manual2Skill的完整方法论

Manual2Skill通过利用VLM解读宜家风格的手册,实现家具装配的自动化

  1. 给定一份可视化手册和预装配场景中的物理部件,VLM会生成一个分层装配图,明确每一步涉及的部件和子组件
  2. 随后,针对每一步,位姿估计算法会结合手册图像与相关部件的点云,预测每个组件的 6D位姿
  3. 最后,在装配执行阶段,预测的位姿会被转换到机器人的世界坐标系,并由运动规划器生成无碰撞的装配轨迹,实现部件的对接

1.2.1 VLM引导的分层装配图生成

本节展示了VLM如何解读IKEA风格的说明书,以生成高级装配计划。给定一份说明书和一张包含家具零部件的实景图片(装配前场景图),VLM能够预测出分层装配图

  1. 作者在下图图2中展示了一个示例「(1) 使用 GPT-4o [1] 查询操作手册,生成一个顺序装配计划,该计划以分层装配图的形式表示**。(2) 家具部件的点云和对应的手册图片由位姿估计模块处理,以预测每个部件的目标位姿。**(3) 系统根据分层装配图和估算的位姿,依次规划并执行机器人装配动作


    在该图中,叶节点表示基本零件,非叶节点则表示子组件。可将该图划分为多层,每一层包含在单一步骤中需要装配的零件或子组件节点(对应于一张说明书图片)。从子节点指向父节点的有向边表明系统将父节点由所有子节点组装而成

  2. 此外,还在等价零件之间添加边,表示这些零件是相同的(例如椅子的四条腿)。将装配过程表示为分层图,可以将装配流程分解为顺序步骤,同时明确所需的零件和子组件。分层图的正式定义见附录J

作者通过两个阶段实现这一目标:将说明书与实际零件关联,以及识别每张图片中所需的零件

  1. 当然,能实现该目标,本质上得益于VLM能力与通用提示结构:毕竟该任务本质上具有高度复杂性,因为输入图像类型多样。手册中的图像通常为抽象草图,而预装配场景图像则为高分辨率的真实世界照片
  2. 这种多样性要求具备跨不同图像领域的高级视觉识别与空间推理能力,而VLM由于在大规模互联网数据集上的训练,正好具备这些优势

每个VLM提示由两个部分组成:

  1. 图像集:包括所有手册页面和真实世界的预装配场景图像。与传统机器人领域的VLM应用[23, 18]仅处理单张图像不同,需要对多张图像进行推理
  2. 文本指令:这些指令为任务提供特定上下文,引导模型解释图像集。指令内容从简单指令到链式思维(Chain-of-Thought,CoT)推理 [51] 不等
    所有指令均包含上下文学习示例,明确规定所需的输出格式------无论是 JSON、Python 代码还是自然语言。这一结构对于该任务下的的多阶段流程至关重要,确保输出结构良好、易于解释,并能无缝集成到后续阶段

第一阶段:将真实部件与说明书关联

给定说明书封面上已组装家具的草图以及装配前场景图像,VLM旨在将物理部件与说明书进行关联

  1. VLM 通过对说明书插图进行语义解释,预测每个物理部件的角色,从而实现这一目标
    该过程涉及分析说明书插图中的空间、上下文和功能线索,以全面理解每个物理部件。作者的方法采用 CoT [51]和 Least-to-Most [63] 提示策略,以提高准确性
    为了提升部件识别能力,作者采用 Set of Marks [55] 和GroundingDINO [31] 自动标注部件------在预装配场景图像上以数字索引标注。带有标签的场景图像和手工草图共同构成图像集

  2. 文本说明包括对关联任务的简要背景解释,即预测每个物理部件的角色,并附有输出结构的上下文示例:{name, label, role}
    例如,在图2的阶段I输出中


    作者将椅子的座位描述为:名称:座架,标签:[2],角色:供人坐在椅子上,座位提供了基本的支撑和舒适感,并位于椅子框架的中央
    we describe the chair's seat as name: seat frame, label: [2], role: for people sitting on a chair, the seat offers essential support and comfortand is positioned centrally with in the chair's frame.
    这里的"[2]"表示该三元组对应于预装配场景图像中用索引2标记的物理部件。该三元组格式通过将所有输出结构化为统一的数据格式,提高了可解释性并确保了一致性

    最终,将图像集和文本说明作为VLM『具体为GPT-4o [1]』的输入提示,并一次性查询以生成所有物理部件的实际分配

  3. 随后,作者将这些标签作为分层装配图中的叶节点------可以通过这些三元组获得等价部件
    当两个物理部件具有相同的几何形状时,它们的三元组仅在标签上有所不同
    例如,在图2阶段I的输出中
    {name:side frame, label: [0], role:...}

    {name: sideframe, label: [1], role:...}------这两个部件被认为是等价的

    理解等价部件之间的关系对于下游模块至关重要,这一点会在下文的消融实验中得到了验证(对应于原论文附录C)

第二阶段:识别每一步骤中涉及的部件

本阶段主要关注于识别每个手册页面中所涉及的具体部件和子组件。VLM 通过推理插图装配步骤,结合上一阶段获得的三元组和标注的预装配场景作为辅助线索,来实现这一目标

在实际操作中,会发现手册中的无关元素(如钉子、人形图案)会干扰VLM。作者采用了来自文献[49]的裁剪版手册图片,仅保留家具部件和子组件,以便集中VLM的注意力(见图2阶段II图像集),从而显著提升了性能(详见附录E)

  1. 操作手册页面与上一阶段标注过的预装配场景共同构成了图像集。文本说明则采用链式思维提示,引导视觉语言模型(VLM)逐步识别零部件及子组件,并包含用于澄清结构化输出格式的上下文示例:即由(步骤N,涉及的标注部件)组成的配对

    图2左下角的输出展示了该格式的一个示例。图像集与文本说明共同组成了GPT-4o的输入提示,GPT-4o通过一次查询即可为所有装配步骤生成配对结果
    如图2所示,系统输出嵌套列表

  2. 作者随后将这些列表及其等价部分转化为层次化图结构。基于该装配图,作者遍历所有非叶节点,并探索多种装配顺序。形式上,可行的装配顺序是一个有序的非叶节点集合,保证父节点仅在其所有子节点之后出现
    层次化图表示的一个关键优势在于其灵活性------由于装配序列不是唯一的,因此可以实现并行装配或有策略的装配顺序

1.2.2 每步装配姿态估计:涉及模型架构和损失函数

在给定装配顺序的情况下,训练一个模型,用于在装配过程的每一步估算组件(零件或子组件)的姿态

  1. 在每一步,模型输入装配手册图像以及相关组件的点云,预测它们的目标姿态,以确保正确对齐
    为支持该任务,作者构建了一个用于序列化姿态估计的数据集。详细描述见附录A。对于每个组件的点云(无论是通过真实世界扫描还是来自作者的数据集获得),首先通过将其质心平移到原点来进行居中处理
  2. 接下来,应用主成分分析(PCA)以识别主要的物体轴线,这些轴线定义了规范的坐标系。最主要的轴线作为参考系,从而确保了基于形状的、一致的朝向,并且该朝向不依赖于任意的坐标系统
    作者创建的数据集为每个组件在相应说明书图像的相机坐标系下,提供了说明书图像、点云以及目标位姿(参见[29])

对于说明书图像Ii所描述的一个装配步骤,模型的输入包括:

  1. 说明书图像
  2. 所有相关组件的点云

输出则是每个组件在相机坐标系下的目标位姿

对于每步装配姿态估计算法数据集

作者为所提出的人工引导逐步装配姿态估计任务构建了一个数据集。每条数据为一个元组 (),其中

  • 表示人工操作图像
  • 表示该装配步骤中所有组件的点云
  • 表示每个组件的目标姿态
  • 表示组件之间的空间和几何关系

现实世界中的说明手册种类繁多。为了覆盖在实际场景中可能遇到的各种情况,在构建数据集时,作者考虑了三种可能的说明手册变体,如图9所示

作者的数据集包含了多种家具形状。对于每一件家具,随机选择一些相连的部件组成不同的子组件。同时,每个子组件都有多种可能的相机拍摄视角。这一定义使数据集能够覆盖现实场景中可能遇到的各类手册

  1. 形式上,对于由 M 个部件组成的家具,作者随机选择 m 个相连的部件来形成一个子装配体
    记为

    其中每个 都是一个原子部件

  2. 然后,将这 m个原子部件随机分为 n 个组件,同时保证同一组内的所有部件都是相连的,记为

    其中每个表示第 个组件中的原子部分数量,因此

    作者对点进行采样每个组件的点云由该数据片段的点云组成
    作者还可以从不同角度拍摄子组件的照片,更为辅助信息中的对应部分提供了注释

总之,在本文中,作者提出了新的技术方法,以利用每个装配步骤的辅助信息,从而显著提升了我们位姿估计算法的精度和鲁棒性

首先,对于模型架构

需要注意的是,每一步的组件数量并不固定,这取决于家具的子装配划分。作者的位姿估计模型包含四个部分:

  1. 图像编码器
  2. 点云编码器
  3. 跨模态融合模块
  4. 以及位姿回归器

具体而言

  1. 首先将说明书图像输入图像编码器,以获得图像特征图

  2. 然后,将点云输入点云编码器,以获得每个部件的点云特征

    为了融合来自手工图像和点云特征的多模态信息,作者利用GNN [54]对每个部件的信息进行更新。且将手工图像特征和按部件划分的点云特征视为完全图中的节点,并采用GNN对每个节点的信息进行更新

    其中是更新后的图像和点云特征

  3. 最后,将更新后的点云特征输入位姿回归器,以获得每个组件的目标位姿

其次,对于损失函数

综合考虑了姿态预测的准确性和点云对齐,方法参照 [60, 30]

  1. 第一项对预测的 SE(3) 变换中的误差进行惩罚
  2. 第二项则衡量预测点云与真实点云之间的距离

为处理可互换组件,作者对所有等价部件的可能排列计算损失,并选择最小损失作为最终训练目标。关于损失函数的具体形式和训练策略,详见附录B

如原论文附录B所示,姿态估计的损失函数具体怎么设计呢


旋转测地线损失:在三维姿态预测任务中,通常使用旋转测地线损失来衡量两个旋转之间的距离[53]

  1. 具体而言,给定真实旋转矩阵和预测旋转矩阵,旋转测地线损失定义为:

    其中表示矩阵的迹, 表示 R 的转置

  2. 平移均方误差损失:参照 [29],作者采用均方误差(MSE)损失来衡量真实平移 与预测平移 之间的距离

  3. Chamfer 距离损失:该损失函数最小化预测点云与真实点云之间的整体距离。设真实点云为,预测点云为,其定义如下

    其中, 是应用真实 6D 姿态变换后的点云, 是应用预测 6D 姿态变换后的点云

  4. 点云MSE损失:作者通过将预测的旋转应用于组件的点,并使用MSE损失来衡量旋转后点与真实点之间的距离,从而对预测的旋转进行监督

  5. 等价零件:给定一组组件,作者可能会遇到需要在不同位置组装的几何等价零件。受[60]的启发,将这些几何等价的组件进行分组,并添加一个额外的损失项,以确保将它们组装在不同的位置

    对于每一组等价组件,将预测的变换应用于每个组件的点云,然后计算变换后点云之间的Chamfer距离(CD)
    对于同一组内的所有成对,作者计算变换后点云之间的Chamfer距离,并鼓励该距离较大

最后,作者将整体损失函数定义为上述各损失项的加权和:

其中,λ1 = 1, λ2 = 1, λ3 = 1, λ4 = 20, λ5 = 0.1

1.2.3 机器人装配动作生成:先位姿与坐标系对齐、后装配执行(含零件抓取/装配轨迹/装配插入)

++首先,将预测的位姿与世界坐标系对齐++

在每个装配步骤中,前一阶段会预测每个组件在手动图像的相机坐标系下的位姿。然而,实际的机器人系统是在其世界坐标系下运行的,因此需要在这些坐标之间进行6D变换

  1. 以两个组件A和B为例,预测的目标位姿在相机坐标系下分别记为
    同时,他们的系统能够采集到零件在世界坐标系下的当前6D位姿,表示为

  2. 为了将对齐,作者计算6D变换矩阵,将相机坐标系映射到世界坐标系

    使用相同的变换,作者计算出组装目标姿态在世界坐标系下的部件(以及所有剩余组件)的组装目标姿态

    该变换能够将预测的姿态从手动图像坐标系准确映射到机器人世界坐标系,从而确保装配过程的精确执行

++其次,装配执行++

一旦我们的系统确定了当前装配步骤中每个组件在世界坐标系下的目标位姿,就会抓取每个组件,并生成所需的装配动作序列

相当于具体分为以下三大步骤

  1. 零件抓取
    在扫描每个实际零件后,便可获得了每个零件对应的3D网格。然后采用FoundationPose [52]和Segment Anything Model(SAM)[24]来获取场景中所有零件的初始位姿
    根据每个零件的位姿和形状,作者设计了针对各个几何体的启发式抓取方法

    虽然通用抓取算法(如 Grasp-Net [11])是可行的,但抓取问题超出了本研究的范围。因此,作者采用了专为装配任务中结构化组件设计的启发式抓取策略
    对于棒状组件,在识别其最长轴以保证稳定性后,抓取物体的质心
    对于扁平且薄型的组件,使用夹具或定位平台将物体固定,从而使机器人能够沿薄边进行抓取,以提升稳定性。关于这些抓取方法的更多细节,请参见附录 G

  2. 部件装配轨迹
    一旦机械臂抓取到组件,它会寻找一条可行的、无碰撞的路径,移动到预先定义的机器人姿态(锚点姿态)
    在这些姿态下,利用FoundationPose [52] 和 Segment Anything Model(SAM)[24],重新计算被抓取组件在世界坐标系下的6D姿态

    随后,系统规划一条到组件目标姿态的无碰撞轨迹
    *作者采用**RRT-Connect [26]*作为运动规划算法。场景中的所有碰撞物体均以点云形式表示,并输入到规划器中。一旦规划器找到无碰撞路径,机器人便沿规划轨迹移动

  3. 装配插入策略
    一旦机械臂将组件移动到其目标位姿附近,装配插入过程便开始。装配插入属于高度接触型任务,需要多模态传感(如力传感器和闭环控制)以确保精确对齐和牢固连接
    然而,开发闭环装配插入技能超出了本研究的范畴,将在后续研究中深入探讨,在Manual2Skill当前的方法中,插入操作由人类专家手动完成

1.3 实验

在本节中,作者进行了一系列实验,旨在解决以下问题

  1. Q1:提出的分层装配图生成模块能否有效地从手册中提取结构化信息?
  2. Q2:逐步姿态估计方法是否适用于不同类别的家具,并且能否优于以往的设置?
  3. Q3:所提出的框架在人工引导下进行家具组装时的有效性如何?
  4. Q4:该流程是否可以应用于现实场景?
  5. Q5:该流程能否扩展到其他装配任务?
  6. Q6:应如何确定并评估每个模块的关键设计选择?(消融实验,详见附录C和E)
    此外,我们在附录K中收录了用于VLM引导的分层图生成过程的完整提示集

1.3.1 对「分层装配图生成」的实验评估:涉及实验设置/评估指标/基线方法/结果

在本节中,作者评估基于VLM引导的分层装配图生成方法的性能

具体而言,作者使用IKEA-Manuals数据集[49]对第二阶段:识别每张图片中的部件进行评估。关于不对第一阶段进行评估的原因,我们在附录H中进行了说明

第一,在实验设置上

IKEA-Manuals数据集[49]包含102个家具项目,每个项目都配有IKEA说明书和3D零件,以及以嵌套列表树状结构表示的装配方案

对于每个物品,作者将其3D零件加载到Blender中,并渲染两张图像:

  1. 一张展示原始预装配场景,零件整齐排列;
  2. 另一张则展示场景变体,其中零件在地面平面上被随意扰动(如旋转和打乱)(见图4)

这种随机化引入了多样性,更好地模拟了现实世界中零件可能混乱无序的预装配场景

每一幅预装配场景的渲染图像及其说明书,都会按照上文「1.2.1 VLM引导的分层装配图生成------对应于原文第四节A部分」所述的流程,通过VLM进行处理,从而生成一个层次化的装配图

由于作者将装配图表示为嵌套列表,因此在符号表示上与IKEA说明书[49]中使用的装配树记法保持一致。在本小节中,作者将他们生成的装配图称为预测树

第二,在评估指标上

作者采用成功率(Success Rate)标准,该标准衡量预测树与真实树完全匹配的比例。只有当预测树中所有节点的子节点集合与其对应的真实树节点完全一致时,才认为预测树完全匹配。在计算树的匹配度时,所有等价部分都被视为相同

第三,在基线方法上

作者将基于VLM的方法与IKEA-Manuals [49]中提出的两种启发式方法进行了对比

  1. SingleStep 预测一个扁平的单层树结构,包含一个父节点和 n 个叶子节点
  2. GeoCluster采用预训练的DGCNN [50],通过迭代方式将具有相似几何特征的家具部件归并为单一的装配步骤
    与SingleStep方法相比,GeoCluster生成了更深的树结构,拥有更多的父节点和多个分层级别

第四,在结果上

  1. 如表X所示,理解和解析说明书是一项具有挑战性的任务。作者基于VLM的引导方法能够有效处理最多包含6个部件的家具说明书,这是一个重大突破,而基线方法即使在更简单的场景下也难以应对

  2. 这个≤6个部件的阈值反映了当前VLM在复杂视觉-空间推理任务中的能力。作者的框架具有良好的可扩展性,并能够从VLM的快速进步中持续受益
    作者预计,随着更强大的VLM出现,性能还将进一步提升

    表X还突出显示了VLM的泛化能力

    且如图4所示


    预装配场景的变化对装配图生成性能影响极小,在所有102件家具中,平均成功率下降不超过1%

    此外,图3展示了两件家具的定性结果,更详细地说明了Manual2Skill方法的优势


    关于使用和分割手册必要性的消融实验,详见附录E。失败案例在附录F中有进一步说明。更多结果和提示模板分别见附录D和K

1.3.2 对「每步装配姿态估计」的实验评估:涉及数据准备/训练细节/基线方法/评估指标/结果/消融实验

第一,对于数据准备

作者从 PartNet [34] 中选择了三类家具物品:椅子、桌子和灯具。对于每个类别,作者各选取了 100 件家具,并为每件家具生成 10 组部件选择和子装配划分

为了生成装配手册图片,作者使用Blender的Freestyle功能,在20个随机相机姿态下渲染零件的示意图。关于此部分的更多细节,在附录A中进行了说明

总体而言,作者为每个类别生成了12,000条训练数据和5,200条测试数据

第二,对于训练细节

  • 对于图像编码器,作者选择了DeepLabV3+的编码器组件,该组件以MobileNetV2为主干,并包含空洞空间金字塔池化(ASPP)模块
    之所以做出这一选择,是因为DeepLabV3+在自动编码器的基础上引入了空洞卷积,使模型能够有效捕捉多尺度结构和空间信息 [4,5]。它能够从图像I生成多通道特征图,且采用mean-max pool [61]方法来提取全局向量从特征图中提取特征
  • 对于点云编码器EP,作者采用了PointNet++ [35]的编码器部分
    对于每个零件和子组件,提取一个基于零件的特征
    对于GNNEG,使用了三层图转换器 [8]
  • 位姿回归器R是一个三层MLP
    关于图像特征的mean-max池化以及我们的训练超参数设置,详见附录B

如原论文附录B所示,对于均值-最大池化


均值-最大池化的核心机制是在一组具有相同维度的向量或矩阵的某一维度上,分别计算其均值和最大值,并将结果拼接成一个维的一维向量,从而获得全局特征

  1. 对于一维向量,作者在序列长度维度上取均值和最大值。对于二维矩阵,作者在高度×宽度维度上取均值和最大值

    其中,作者将F设为128
  2. 作者在本研究中两次使用了这一技巧。其中一次是在从多通道特征图获得带有通道维度的一维向量时,从而为图像获得了一维特征向量
    在这种情况下,作者可以将均值-最大池化表达如下
    其中,X是图像的多通道特征图,维度为通道数(C)×高度(H)×宽度(W),avg和max分别表示长度为通道数的一维向量
    因此,多通道特征图的是一个C维向量
  3. 另一种情况是作者对比基线时。为了按部件聚合点云特征,并获得形状的全局一维特征,将均值-最大池化表达为如下形式:

    这里,作者令M表示一个形状中的部件数量。在该基线方法中,对于每个部件,将一维图像特征、全局点云特征(均通过均值-最大池化获得)以及部件级点云特征进行拼接,从而形成一维的跨模态特征

随后,将该特征作为姿态回归器MLP的输入


对于姿态估计训练中的超参数

  1. 作者在单张NVIDIA A100 40GB GPU上训练姿态估计模型,批量大小为32。每个实验运行800个周期(约46小时)。学习率设为1e−5,并采用10个周期的线性预热阶段

  2. 之后,使用余弦退火策略衰减学习率
    且还将权重衰减设为1e−7。模型各组件的优化器配置如表V所示

第三,对于基线方法

作者在所提出的逐步装配位姿估计数据集上评估了他们方法的性能。作者将他们的方法与两种基线方法进行了比较

  1. Li 等人 [29] 提出了一种基于单幅图像引导的三维物体姿态估计算法
  2. Mean-Max Pool 是Manual2Skill方法的一种变体,用均值-最大池化技巧替代了 GNN,这与作者从多通道特征图中获得一维向量的方法类似,具体细节见附录 B

第四,对于评估指标

作者采用了全面的评估指标来衡量我们方法及基线方法的性能

  • 测地距离(GD),用于衡量预测旋转与真实旋转在单位球面上的最短路径距离
  • 均方根误差(RMSE),用于衡量预测姿态与真实姿态之间的欧几里得距离
  • Chamfer距离(CD),用于计算预测点云与真实点云之间的整体距离
  • 部件准确率(PA),用于计算预测点云与真实点云之间的Chamfer距离;如果该距离小于0.01米,则认为该部件"放置正确"

第五,对于结果

如表II所示

作者的方法在所有评估指标以及三类家具上均优于Li等人[29]和mean-max池化变体。作者将这一优势归因于他们多模态特征融合以及GNN在捕捉部件空间关系方面的有效性

作者还在图5中为每类家具提供了定性结果

第六,对于消融实验

为了评估等效零部件、引导图像以及关于子组件的逐步数据的影响,我们对这些组件进行了消融实验。相关细节和结果详见附录C

如原文附录C所示,姿态估计消融研究


为了评估流程中各个组件的有效性,作者在椅子类别上进行了消融实验

// 待更

1.3.3 对整体性能的评估

第一,作者通过在仿真环境中组装家具模型来评估他们方法的整体性能

他们在 PyBullet [9] 仿真环境中实现了评估流程,并对整个流程进行了测试

  1. 所有测试用的家具模型均来自 IKEA-Manuals 数据集[49]。在获取这些手册及其 3D 零件后,我们按照IV-C 中描述的方法生成预组装场景图像,并由我们的流程生成层次化图结构

  2. 随后,遍历该层次化图,以确定装配顺序。根据该顺序以及每个组件预测的 6D 姿态,他们在仿真中实现了 RRT-Connect [26],为 3D 零件和子组件规划可行的运动路径,确保它们能够移动到目标姿态

    需要注意的是,在本实验中,作者专注于以物体为中心的运动规划,并未在我们的框架中涉及机器人执行环节

第二,对于基线方法

由于作者首次提出了一个完整的家具组装流程,因此没有直接可比的基线方法。因此,他们设计了一种基线方法:利用以往的研究成果 [29],在完整家具图片的指导下,估算所有零部件的姿态,并采用启发式顺序对所有部件进行组装

具体而言,给定所有部件的预测姿态后,作者可以计算每对部件之间的距离。启发式顺序的定义如下:从一个随机选定的部件开始,找到距离其最近的部件并将其组装,然后依次寻找距离已组装部件最近的部件,直至所有部件组装完成

第三,对于评估指标

作者采用装配成功率作为评估指标,并将以下情况定义为失败:

  1. 零件被放置在距离真实姿态过远的位置
  2. 零件在移动到估计姿态时与其他零件发生碰撞
    换句话说,当将其与其他零件配合时,RRT-Connect算法[26]未能找到可行路径
  3. 放置的零件未靠近任何其他组件,导致其在每一步装配后悬浮在空中

第四,对于结果

  1. 作者在IKEA-Manual数据集[49]中的50件家具上评估了整体性能,每件家具的部件数量均少于七个。这些家具分为四个类别(长凳、椅子、桌子、其他),各类别的成功率见表 III

  2. Manual2Skill成功组装了50件家具中的29件,而基线方法仅组装了15件
    且Manual2Skill实现了58%的成功率,充分展示了所提出框架的有效性。最常见的失败情况发生在视觉语言模型(VLM)未能生成完全准确的装配图时,导致点云与用于姿态估计的说明书图像之间出现错位

1.3.4 真实世界装配实验

为了评估流水线的可行性和性能,作者在真实环境中对四款宜家家具进行了实验:Flisat(木凳)、Variera(铁架)、Sundvik(椅子)和Knagglig(收纳箱)

图7展示了作者的真实世界实验设置

  1. 在图6中展示了说明书图片、逐步位姿估计结果以及真实装配过程
    且还在补充材料中附上了真实装配过程的视频。有关真实世界实验的详细实现,请参见附录G

  2. 作者对所有装配任务进行了评估,目标位姿由三种不同方法提供:真实位姿(Ground truth Pose)、均值-最大池化(Mean-Max Pool,见第V-B节)以及作者提出的方法

    真实位姿方法为每个部件提供真实的位姿以进行装配。且采用平均完成率(ACR)作为评估标准,计算方式如下

    其中表示实验总次数,为第 次实验完成的步骤数,表示该任务的总步骤数

对每项任务进行了10次试验,每次试验的初始三维零件姿态各不相同。作者在表IV中展示了结果,表明Manual2Skill的方法优于基线方法,并在实际装配任务中实现了较高的成功率

  1. 这些发现强调了Manual2Skill在实际应用中的实用性和有效性
    而主要故障模式源于规划的局限性,尤其是在处理复杂障碍物时。当RRT-Connect算法无法找到可行的轨迹,或者规划路径导致与机械臂或周围物体发生碰撞,或由于抓取姿态不理想时,就会出现失败
  2. 为了提升在实际场景中的鲁棒性,作者计划开发一种用于自适应运动微调的低层策略------这一课题将留待未来研究

1.3.5 对其他装配任务的泛化能力

作者将Manual2Skill设计为一个具有通用性的框架,能够处理多样化的装配任务并支持手工说明

为了评估其多样性,作者在三种不同的装配任务中测试了VLM引导的分层图生成方法,这些任务在复杂性和应用领域上各不相同

具体包括:

  1. 玩具车车轴的组装(一个低复杂度、标准化组件的任务,代表消费类产品装配)
  2. 飞机模型的组装(中等复杂度任务,代表消费品组装)
  3. 机械臂组装(高复杂度任务,涉及非标准化组件,代表科研与原型组装)

对于玩具车轴和飞机模型,作者从文献[46]获取了3D零件,并使用Blender重建了预装配场景图像。且手动按照其标志性风格制作了说明书,每一页通过抽象插图展示单个装配步骤

对于机械臂装配,作者采用了Zortrax机械臂[66],其包含现成的3D零件和结构化说明书。随后,这些输入被送入VLM引导的分层图生成流程,生成的装配图如图8所示

该零样本泛化方法在每个任务的五次试验中实现了100%的成功率。生成的装配图与真实装配序列一致,验证了作者的VLM引导分层图生成方法在多样化基于说明书的装配任务中的泛化能力,并突显了其在更广泛应用中的潜力

本文探讨了从操作手册中学习复杂操作技能的方法,并提出了一种自动化宜家家具组装的方法。尽管取得了一定进展,但仍存在若干局限性

  1. 首先,该方法主要识别需要组装的物体,却忽略了手册中的其他细节,例如,抓取位置标记和精确连接器位置(如螺丝)
    集成视觉-语言模型(VLM)模块以提取这些信息,有望显著提升机器人插接能力
  2. 其次,该方法尚未涵盖自动执行紧固机制,如拧紧或插入等动作,这些操作高度依赖于力觉和触觉传感信号。作者将这些挑战留作未来的研究方向

// 待更

相关推荐
虹科数字化与AR2 个月前
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
人工智能·ar·ar眼镜·船舶智造·数字工作流·智能装配