教机器人的手,学会"看人下菜碟"式的抓取
创始人
2026-09-01 17:53:11
0

  炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会!

(来源:科技行者)

你有没有想过,一只机械手抓杯子和抓一把螺丝刀,动作应该完全不一样?

抓杯子,你可能会整只手包裹上去,虎口贴着杯壁,五指自然收拢,这是一种稳妥的"抱住"。但抓螺丝刀准备拧螺丝,你会用拇指和食指捏住手柄末端,其余手指微微翘起,这是一种精细的"捏住"。同一只手,两种截然不同的抓法,背后是完全不同的任务意图。

现在的问题是:现在最先进的机器人抓取算法,几乎完全不懂这个道理。

它们只关心一件事,能不能抓稳。给它一个杯子,它大概率会用五个手指把杯子整个包起来,因为这样最稳,最不容易掉。至于你是想端起来喝水,还是想把杯子倒扣过去晾干,还是想用手指精确捏住杯耳,它一概不管。这就好比你雇了一个搬家工人,他只负责把东西从A点搬到B点不摔碎,但完全不关心你搬这个东西是为了展示还是为了使用。

这篇来自法国原子能委员会(CEA List)和巴黎萨克雷大学团队的论文,就是想解决这个"只管抓稳,不管抓对"的老问题。他们提出了一个叫 CoToGrasp 的框架,核心目标是让机械手能按照人类的抓取分类学,精确生成你指定的那种抓法,哪怕面对的是它从没见过的物体。

当前抓取算法的"审美偏见"

要理解这篇论文的价值,得先弄明白现在的抓取规划器到底出了什么问题。

论文里做了一个挺扎心的实验。他们让四种主流的无条件抓取生成方法(DFC、GenDexGrasp、DRO-Grasp、GOAG)在同一批物体上各生成一百次抓取,然后用一套自动分类系统去统计这些抓取到底属于人类抓取分类学里的哪一种模式。

结果是灾难性的偏向。

绝大多数生成的抓取都挤在"包裹式的力量抓取"这一个区域里,论文用一张直方图画出来,红框圈出的那部分几乎是一座孤峰,剩下二十种精细抓取模式,只能分到零星的几个百分点。这四种方法算出来的语义熵(用来衡量抓取类型分布是否均衡的指标,数值从0到1,越接近1说明分布越均匀,越接近0说明高度集中在少数几种模式上)分别只有0.74、0.60、0.65、0.65,而CoToGrasp达到了0.83。

这个数字差距意味着什么?意味着如果你想让机器人做一个精确的两指捏取动作,用传统方法生成一百次,可能大部分结果都是错的类型,你得不断丢弃重来,这个过程极其低效。

为什么会这样?因为这些方法在训练时优化的目标函数里,压根没有"抓取类型"这个变量,它们只优化物理稳定性和力闭合,而包裹式的抓取天然最稳。这就像你训练一个学生只以"考试不挂科"为目标,他自然会去选最容易拿分的题型去练习,久而久之其他题型完全生疏,哪怕你后来告诉他这次考试必须做某种特定难度的题,他也做不出来。

为什么加标签这么难:数据集的死结

那你可能会问,既然问题这么明显,为什么不干脆给训练数据打上"这是精细抓取""这是力量抓取"的标签,让模型学着区分呢?

这正是论文点出的第二个核心难题:给抓取数据打上任务标签,成本高到不现实。

现有的一些方法,比如论文中提到的 Dexonomy,确实尝试过这条路,它们用海量的解析计算构建数据集,把每一种抓取类型和具体物体的网格严格绑定在一起。问题在于,这种绑定太"死"了。

如果一个新物体的局部几何形状,和预先算好的关节模板对不上,会发生什么?论文里写得很直白:优化直接失败,或者退化成一种功能上完全错误的抓取类型。

这就好比你按照某个特定尺寸的门把手,专门设计了一套开门的手部动作模板,一旦遇到形状稍微不同的门把手,这套动作要么根本用不上,要么勉强用上了但姿势别扭,完全失去了原本要达成的开门效果。物体几何形状的多样性是无穷的,你不可能给每一种可能的形状都算一遍专属模板,这个数据收集的坑本身就填不满。

换个思路:不看物体看手

CoToGrasp 的解法,说出来其实挺反直觉的:既然物体形状千变万化没法穷举,那就干脆别在物体身上学接触规律了,转而在手上学。

论文提出了一个概念叫"物体无关训练"(object-agnostic training),意思是整个模型的训练过程完全不涉及任何具体物体的网格数据,只用机械手自身的点云去训练。

这背后有一个很巧妙的逻辑转换。论文指出,接触这件事本质上是对称的:手上某个点碰到了物体,等价于物体上某个点碰到了手。传统方法习惯站在物体的角度问"物体表面哪里可以被摸",这篇论文把提问方式倒过来,问"这个物体会激活手上的哪些区域"。

这个视角反转听起来只是文字游戏,但它带来了实实在在的好处。

物体表面是一个无穷大、无穷多样的空间,理论上世界上物体的形状组合是无限的。而机械手的表面结构是固定的,它的关节数量、活动范围、几何形状都是已知且有限的。把学习的对象从无边无际的物体空间,换成边界清晰、维度有限的手部空间,问题一下子被简化了。

这就像你要教一个新员工处理客户投诉,与其试图穷举世界上所有可能出现的投诉场景(那是永远学不完的),不如反过来专注训练他自己能做出的几种标准应对动作模块,比如安抚、道歉、补偿、转接。不管客户投诉的内容多么千奇百怪,最终都要落到这几个动作模块的组合上。手的动作能力是有限且固定的,学会这个有限集合,比试图预判所有物体形状要靠谱得多。

一个统一的"练功房":特征化的规范工作空间

光是"在手上学"这个思路还不够,因为训练时用的是手的点云,推理时面对的却是完全陌生的物体点云,两种数据的几何特性天差地别,直接拿训练好的模型去处理物体数据,模型会一脸懵。

为了解决这个训练和推理阶段"不认识对方"的问题,论文设计了一个叫做"特征化规范工作空间"(Feature-based Canonical Workspace)的中间层。

这个工作空间本质上是一组固定分布在机械手周围空间里的采样点,不管你输入的是手还是物体,都要先经过一个 DGCNN 编码器(一种专门处理点云数据的图卷积神经网络,能够提取每个点周围的局部几何特征,比如曲率、法向量等细节)提取局部几何特征,然后通过加权的 k近邻聚合(一种将邻近点的特征信息汇聚到某个固定采样点上的方法,距离越近的点权重越大)把这些特征投影到这组固定的工作空间点上。

关键是,这个投影过程还引入了一个叫做"对齐距离"(aligned distance,一种同时考虑两点之间欧氏距离和表面法向量对齐程度的度量方式,用来判断两个表面是否可能真实接触)的度量方式来控制权重衰减,确保只有法向量方向合适、真正可能发生物理接触的点才会被有效聚合进来,那些法线方向不对的点即使距离很近,权重也会被压低。

论文里做了一个量化验证,用余弦相似度衡量手部特征和物体特征在这个工作空间投影前后的对齐程度。原始的 DGCNN 特征,匹配点对之间的相似度只有0.35,说明手和物体的原始几何特征差异确实很大。但投影到规范工作空间之后,这个相似度跳到了0.61,加上后续的注意力机制处理,进一步提升到0.66。这组数字变化说明,这个"练功房"式的中间层确实成功地把两种截然不同的数据源,拉到了同一个可比较的语义空间里。

这就好比两个说着完全不同方言的人要合作干活,你不能指望他们直接听懂彼此,但如果给他们一套统一的手势信号系统,无论各自原本说什么方言,都通过这套手势系统交流,合作就顺畅了。工作空间起的就是这个手势系统的作用,它不关心你原本是手还是物体,只关心投影后大家都在同一套坐标和特征体系里说话。如果没有这一层转换,模型在训练阶段学到的模式和推理阶段面对的数据分布之间会存在巨大鸿沟,泛化能力会大打折扣。

给每种抓法一个"官方档案":接触拓扑的定义

前面说的都是怎么让手和物体的特征对齐,但还有一个基础问题没解决:怎么定义"这是哪一种抓法"?

论文采用了 Gonzalez 分类法(一套由 Gonzalez 等人在2014年提出的人类抓取分类体系,严格根据手部实际参与接触的表面区域来划分抓取类型,而不是根据物体形状),一共定义了21种接触拓扑模板,从精细的指尖捏取到力量型的整手包裹,还有专门针对工具使用的高度约束型抓法。

每一种模板本质上是一个语义掩码,标记出手上哪些区域应该在这种抓法下参与接触。论文还把这21种模板归纳成三大功能组:精细抓取(Precision)、力量抓取(Power),以及针对特定工具使用场景高度定制的物体专属抓取(Object-Specific)。

这套分类法之所以被选中,是因为它严格基于手的接触表面而不是物体形状,这意味着无论换成什么样的机械手,只要能把手部表面按照对应的解剖区域划分好,就能直接套用同一套语义标签体系。论文里给出了两种不同的机械手,五指的 Shadow Hand 和四指的 Allegro Hand,分别做了这种区域划分的映射,证明了这套分类体系的通用性。

自注意力机制:让模型自己发现哪些接触点该"结伴出现"

有了统一的工作空间和统一的分类标签,接下来要解决的是怎么让模型学会某种抓取类型对应的具体空间分布规律。

论文用了一个 Transformer 编码器(一种基于自注意力机制的神经网络架构,能够让序列中任意两个位置的信息互相交互,捕捉长距离的依赖关系)来处理工作空间里的这些采样点。这里有一个设计细节挺讲究:他们没有采用标准视觉 Transformer 里常见的做法,即用一个单独的全局 CLS 标记来承载条件信息,而是把代表当前请求抓取类型的语义嵌入向量,直接拼接到工作空间里每一个采样点的特征上。

为什么要这么麻烦?论文给出的解释是,如果只用一个孤立的全局标记来传递"我现在要做精细捏取"这个语义信号,这个信号在经过很多层深层注意力计算之后容易被稀释掉,尤其是当你面对成千上万个空间标记的时候。把语义信号"硬编码"进每一个点里,相当于给每个局部特征都反复提醒一遍当前的任务目标,确保深层网络在每一层计算时都不会忘记这个约束。

这就好比你交代团队一个复杂任务时,如果只在开会最开始说一句"记住这次的重点是速度优先",等讨论到后面细节环节,这句提醒可能早就被大家淡忘了。但如果你把"速度优先"这四个字写在每一份分发下去的文件上,团队成员在处理每一个具体子任务时都能重新看到这个提醒,执行时就不容易跑偏。

之后,这些经过注意力处理的特征还会经过一个 Set Transformer(一种专门用于处理无序集合数据的注意力网络,通过"多头注意力池化"和"集合注意力块"两个模块,把一堆散乱的元素压缩成一个统一的描述向量)压缩成一个全局的潜在描述符,最终喂给一个条件变分自编码器(CVAE,一种生成模型,能够在给定条件的情况下,从一个概率分布里采样出多样化但符合条件约束的输出结果)来生成具体的接触概率图。

论文特别提到,因为宏观层面的抓法多样性已经被严格的拓扑条件约束住了,CVAE不需要再去建模那种"同一个物体到底该捏还是该包"的巨大不确定性,它只需要处理同一种拓扑类型下的局部微小变化,比如手指沿着边缘轻微滑动的位置差异。这个约束让原本容易出问题的标准高斯先验分布,在这里反而变得高效且够用,避免了很多生成模型常见的模式坍缩或者输出模糊的问题。

生成之后:三道关卡把关

模型预测出一个接触模板之后,并不能直接拿去执行,论文设计了一套级联式的验证流程,确保最终生成的抓取既符合语义,又物理上站得住脚。

第一道关卡叫标签一致性检查,用来判断预测出的接触区域和真实需要的接触区域差异是不是在可接受范围内,论文允许最多一个区域的偏差,超过这个阈值就直接判定这次生成不合格,果断放弃。

第二道关卡是力闭合验证,这是一种简化的力学稳定性估算方法,快速判断预测出的接触点分布组合起来,理论上能不能形成一个稳定的抓取。如果这一步没通过,模型会重新从潜在空间里采样一个新的方案,最多尝试20次。

第三道关卡是关节配置优化,这一步会用一个能量函数把手的实际几何形状去对齐预测出的三维接触点,同时避免自身碰撞、避免穿透物体、遵守关节活动范围的限制。论文里还专门加了一个"排斥力项",用来把没有被分配接触任务的手指和掌心部分主动推离物体,防止这些多余部位意外贴上物体表面,破坏原本要求的接触拓扑纯粹性。

这套三重验证机制的意义在于,它把"生成一个大概能用的结果"和"生成一个严格符合语义要求的结果"这两件事拆分开来专门处理。如果没有这套过滤流程,模型很可能生成一堆看起来还行,但细看接触区域已经悄悄跑偏的抓取,论文的消融实验也证明了这一点:去掉标签一致性检查之后,成功率和拓扑一致性都出现了明显下滑。

硬碰硬的对比:实验结果说话

方法上的设计说了这么多,最终还是得看实际表现。

在无条件基线对比实验里,论文用 Multidex 物体集测试了 CoToGrasp 和 DFC、GenDexGrasp、DRO-Grasp、GOAG 这四种方法。

| 方法 | 是否物体无关训练 | 成功率SR | 语义熵HTC | 生成速度(秒/次) |

| DFC | 是 | 72.15 | 0.7389 | >1800 |

| GenDexGrasp | 否 | 71.15 | 0.5956 | 14.65 |

| DRO-Grasp | 否 | 63.30 | 0.6504 | 1.72 |

| GOAG | 是 | 77.90 | 0.6527 | 0.20 |

| CoToGrasp | 是 | 36.94 | **0.83** | **0.11** |

乍一看 CoToGrasp 的整体成功率反而是最低的,只有36.94%,比 GOAG 的77.90%差了一大截,这是不是说明这个方法反而更差了?

论文对此的解释是,这恰恰说明了 CoToGrasp 是在认真执行任务,而不是在偷懒走捷径。它被强制要求生成各种各样的拓扑类型,包括那些物体几何形状本身并不天然适合的精细捏取,因此在很多物体上,即使一个精细抓取生成得再标准,物理上也未必能稳当抓起来,因为物体本身可能就不太适合被那样捏。相比之下,其他方法可以自由选择最容易稳定的包裹式抓取,成功率自然显得高,但这份高成功率的代价是完全牺牲了功能多样性。而 CoToGrasp 的语义熵达到0.83,是所有方法里最高的,同时生成速度也是最快的,每次只要0.11秒。

再看和真正带拓扑条件的方法 Dexonomy 的正面对比,这个对比是在 DexGraspNet 这个包含1126个几何多样物体的大规模数据集上做的。

| 方法 | 成功率SR(%) | 拓扑一致性TC(%) | 语义熵HTC |

| Dexonomy | 27.16 | 14.28 | 0.77 |

| CoToGrasp | **29.75** | **17.18** | **0.96** |

这次 CoToGrasp 在成功率和拓扑一致性上都占了优势。论文进一步拆解了力量、精细、物体专属这三大类别的具体表现,CoToGrasp 在精细抓取类别上的优势尤其明显,22.71%对Dexonomy的12.36%,几乎是翻倍的差距。

更值得琢磨的是论文里挖出的一个"伪异常"现象。在针对具体拓扑类型 M11(物体专属类)和 M21(力量类)的单独测试里,Dexonomy 报出了看起来相当亮眼的60.5%和37.2%成功率,但论文通过定性分析发现,这背后其实是严重的模式坍缩:当 Dexonomy 遇到几何形状比较刁钻的物体时,它会悄悄放弃原本要求的拓扑类型,转而默认生成一种未经验证的力量型包裹抓取,因为它没有一个严格的后验拓扑检查机制,这些实际上答非所问的抓取被错误地记录成了成功案例。而 CoToGrasp 因为有前面提到的验证流程,能主动识别并拒绝这类"答非所问"的幻觉输出,最终在 M21 这个类别上依然保持了33.5%的真实成功率。

这个细节其实挺发人深省的,它提醒我们,一个看起来数字很漂亮的评测结果,背后可能藏着某种系统性的偷懒行为,只有配上足够严格的验证手段,这些数字才真正靠得住。

论文还专门分析了物体几何复杂度对两种方法的影响,用凸度(物体体积和其凸包体积的比值,数值越低说明物体形状越不规则、凹陷越多)来衡量物体难度。从凸物体过渡到非凸物体时,CoToGrasp 保留了58.72%的成功率,而 Dexonomy 只保留了37.42%。在凹陷特别严重的物体(凸度小于0.4,约占数据集的4%)上,CoToGrasp 的成功率是18.30%,拓扑一致性居然还逆势上升到19.17%,而 Dexonomy 在这类困难物体上的拓扑一致性直接崩到8.94%。这说明依赖固定关节模板的方法,一旦碰上复杂形状就容易完全放弃语义要求,而基于接触区域推理的方法反而能更好地利用局部复杂特征来锚定语义信息。

从仿真走到真实世界

最后论文没有止步于仿真数据,还做了真实机器人实验。他们用一台6自由度的 UR10 机械臂配上 Allegro Hand(一种四指仿人机械手),在 YCB 数据集(一套广泛用于机器人操作研究的标准测试物体集合)的物体上执行了生成出来的抓取。

因为 Allegro Hand 缺少小指,某些必须五指参与的拓扑类型(比如M6)被主动排除掉了。论文展示了多张真实抓取的照片,涵盖了从精细到力量各个类别的拓扑,证明了在仿真中生成的这些接触拓扑,确实能够在物理硬件上被成功执行并静态保持住。

不过论文也很坦诚地讨论了真实执行中的困难。他们发现,仅靠简单的线性插值让手指闭合,会导致手指到达物体表面的时间不同步,先接触的手指会产生不平衡的力矩,把物体推离预定位置,导致真实接触点偏离了原本预测的最优区域。这提示未来的工作需要往力位混合控制或者触觉反馈这类更主动感知接触状态的方向去改进。

Q&A

Q1:CoToGrasp解决的核心问题是什么?

A:现在主流的机械手抓取算法只优化物理稳定性,导致生成的抓取几乎全部集中在包裹式的力量抓取上,很少能按照人类的抓取分类学生成精细捏取或工具专用的特定抓法。CoToGrasp通过让模型学习接触拓扑而非物体形状本身,解决了这个功能单一化的问题。

Q2:CoToGrasp为什么不需要给每个物体标注抓取类型的数据?

A:因为它采用了物体无关训练方式,模型完全在机械手自身的点云上训练,学习的是手部的接触能力而不是特定物体的几何匹配关系。推理时只需要把新物体投影进同一个规范工作空间,就能实现对未见过物体的零样本泛化。

Q3:CoToGrasp和Dexonomy相比表现如何?

A:在DexGraspNet测试集上,CoToGrasp的成功率是29.75%对Dexonomy的27.16%,拓扑一致性是17.18%对14.28%。在精细抓取类别上优势更明显,而且在几何形状复杂的非凸物体上,CoToGrasp性能保留得也更好。

相关内容

热门资讯

长征五号B遥一运载火箭顺利通过... 2020年1月19日,长征五号B遥一运载火箭顺利通过了航天科技集团有限公司在北京组织的出厂评审。目前...
9所本科高校获教育部批准 6所... 1月19日,教育部官方网站发布了关于批准设置本科高等学校的函件,9所由省级人民政府申报设置的本科高等...
9所本科高校获教育部批准 6所... 1月19日,教育部官方网站发布了关于批准设置本科高等学校的函件,9所由省级人民政府申报设置的本科高等...
湖北省黄冈市人大常委会原党组成... 据湖北省纪委监委消息:经湖北省纪委监委审查调查,黄冈市人大常委会原党组成员、副主任吴美景丧失理想信念...
《大江大河2》剧组暂停拍摄工作... 搜狐娱乐讯 今天下午,《大江大河2》剧组发布公告,称当前防控疫情是重中之重的任务,为了避免剧组工作人...