市中心那栋老楼里,搬家公司老师傅老周正在把一台老式钢琴搬下三楼。他先围着钢琴转了一圈——是硬木还是贴皮?重心偏在哪?楼道哪一段最窄?心里有了数,才弯腰贴近,双手找好发力点,轻轻一抬。钢琴离地的瞬间,他又根据手上的重量感微调了力度:重了怕压坏地板,轻了怕闪了腰。旁边新来的小徒弟看呆了:“师傅,你怎么知道该抓哪儿、用多大力?” 老周这一套本事,浓缩成三个字就是“看、想、搬”。先看清物体长什么样、摆成什么角度(感知),再想好手该放哪里最稳(规划),最后上手时凭手感不断调力道(控制)。机器人抓取策略学的正是这套功夫:机械臂搭配摄像头和触觉传感器,在仓库分拣包裹、在流水线取放零件、在家庭机器人手里端茶倒水。它要解决的,是“面对一个东西,怎么抓才又稳又快又不损坏”——既是物理问题,也是智能问题。
抓取策略是具身智能从“看得见”走向“抓得稳、放得下”的关键一跃。掌握它,你就理解了机器人操作中最接近“手感”的一环,也为踏入具身智能一线岗位打下最扎实的地基。
可视化演示
展示机器人抓取策略的核心流程:抓取点候选生成与评分选择,以及夹持力动态调整与触觉反馈机制。
本节配有交互动效(进入视口后自动加载,约 3KB)。
抓取点选择 P1最高分0.92:最优抓取点位姿 P2评分0.78:次优备选方案 P3评分0.65:低质量候选 多候选评估策略从多个抓取方案中择优,提升未知物体抓取鲁棒性。
抓取任务认知
老周接活有个习惯:先绕着家具转一圈,再上手。徒弟问为什么,老周说“看准了再搬,比瞎使劲强”。这一看一搬,其实就是一套完整的抓取策略——先感知、再规划、后执行。任何抓取任务都逃不开这套章法,机器人也不例外。
机器人操作中的“抓取”,指通过夹爪与物体建立稳定接触、并把它移动到目标位置的过程,是具身智能的基本功。一个标准抓取流程分三大阶段:感知阶段看清物体在哪儿、长什么样;规划阶段决定手放哪里;控制阶段施加力度与位移。搬运工搬琴和机械臂取件,在流程结构上是同构的。
常见的机器人夹爪有平行二指夹爪(结构简单、适合规则物体)、三指灵巧手(形似人手、适合异构物体)、吸盘(适合平板和光滑表面)。抓取的核心挑战在于:物体形状材质未知、位姿存在误差、夹持力过大损坏物品、过小则滑落。把这四件事同时处理好,抓取策略才算合格。整个闭环可以用一个流程公式概括。
老周的“看、想、搬”,本质是一个闭环循环。抓到一半发现要滑了,马上调整,正是公式最后“失败则回退”的含义。抓取策略的成败,就看这个闭环跟不跟得上变化。
- 物体集合 $\mathcal{O}$所有待抓物体的总称。每个物体都包含形状、材质、位姿等属性,对应老周面前“千奇百怪的家具”。
- 感知映射 $\mathrm{Sense}$把物理世界中的物体变成机器人能计算的模型 $\mathcal{M}$,类似老周围着钢琴转圈打量。
- 规划映射 $\mathrm{Plan}$从模型 $\mathcal{M}$ 中生成一组候选抓取方案 $\mathcal{C}$,回答“手放哪儿、怎么使劲”。
- 执行映射 $\mathrm{Act}$控制夹爪真正接触并搬运,输出成功或失败;失败则回到感知重新尝试,形成闭环。
感知物体世界
老周围着钢琴转圈,其实在做三件事:看轮廓(形状)、看木纹漆面(材质)、判断朝向(位姿)。机器人要抓一个物体,同样先回答三个问题:它长什么样?是什么材质?现在摆成什么角度?这三问,就是感知阶段全部任务。
视觉是感知的主力。深度相机(RGB-D)同时输出彩色图和深度图,语义分割从背景中抠出物体轮廓,点云配准重建出三维形状。材质推断则结合颜色、纹理、光泽等线索,必要时用触觉预扫描补充——就像老周偶尔会用手背轻轻碰一下漆面,判断它是不是刚刷过。这一层解决了“形状重建”与“材质推断”。
感知阶段最核心的输出是位姿估计:给出物体在机器人坐标系下的位置和姿态,数学上用 6 个自由度描述——3 个平移加 3 个旋转。这 6 个自由度被统一封装在一个 4×4 的齐次变换矩阵里,属于刚体变换群。
感知越准,规划越省力。老周把钢琴朝向看得越清楚,下手就越有底气;机器人的摄像头与触觉传感器每提升一寸精度,抓取成功率就上一个台阶。
- 旋转矩阵 ${}^C\mathbf{R}_{O}$描述物体坐标系相对相机坐标系的朝向,属于三维旋转,共 3 个自由度。
- 平移向量 ${}^C\mathbf{t}_{O}$描述物体中心相对相机原点的位移,共 3 个自由度。
- 齐次变换 ${}^C\mathbf{T}_{O}$把旋转和平移拼进同一个 4×4 矩阵,让“旋转+平移”能写成一次矩阵乘法。
- 李群 $SE(3)$所有合法刚体变换的集合,保证矩阵永远可逆、物理意义正确。
规划抓取点
老周从不随手乱抓——抓把手断过,抓玻璃碎过。他早已学会在脑子里快速画出一张“可行抓点图”:哪些地方能受力、哪些地方一碰就坏、两只手怎么搭才稳。这张图,就是抓取点规划的雏形。
机器人在建好物体模型后,规划阶段会在物体表面采样大量候选接触点对——两指夹爪的两个手指分别接触的两个点,然后逐对打分。打分的依据叫“几何可抓性”:接触区域是否平整、是否远离易损部位、两指连线是否大致经过质心。这一步与老张打量柜子“哪里能下手”完全对应。
但打分之前,必须先过一关:力封闭。一个抓取方案只有满足力封闭,才能在任意方向外力扰动下保持平衡。数学上,把每个接触点处的力矢量看成空间中的点,如果这些点的凸包能把原点严严实实包在内部,物体就被“锁”在指间,怎么推都推不掉。
有了力封闭这杆秤,规划器再叠加权重评分——抓点离质心越近越好、夹持角度越正越好,最终挑出分数最高的抓点。老周脑子里那张“可行抓点图”,就是搬了几千件家具后练出来的评分器。
- 接触力 $\mathbf{f}_i$第 $i$ 个接触点处物体受到的力矢量,包含大小和方向。
- 凸包 $\operatorname{conv}\{\cdot\}$把 $n$ 个力矢量看成点,凸包是能包住它们的最小凸区域。
- 内部 $\operatorname{int}(\cdot)$强调原点必须落在凸包内部而非边界;边界意味着某方向刚好平衡,一碰就破。
- 原点 $\mathbf{0}$代表合力与合力矩均为零的平衡状态,是“抓稳了”的数学等价表述。
力位控制策略
老周有个原则:能省力就省力,该用力才用力。抬钢琴先试小半力,稳住了再慢慢加,绝不蛮干。机器人控制也是同一个道理——不是夹得越紧越好,而是“够用就好”。
“够用”的标准由物理定律给出。两个手指与物体之间的摩擦力是夹持力的来源,接触面越滑,需要的夹持力越大。库仑摩擦定律告诉我们:切向力不能超过摩擦系数乘以法向力。把这个约束用到两指抓取上,就能算出保证物体不掉落的最小夹持力。
有了目标值,还需要“力位混合控制”去执行:一个回路管位置(手指该到哪),一个回路管力度(接触力该多大),两个回路同时工作,像老周一手扶琴、一手调劲。遇到颠簸或外界扰动,控制器自动增加夹持力,这就是“抗滑调节”与“柔顺操作”的由来。
最小力规划让机器人像老周一样“惜力”,既保护物体,又保护电机。遇到路面颠簸,控制回路自动加力,对应老周感觉到琴身一晃立刻加大手劲——力位控制策略,本质是把“量力而行”变成算法。
- 物体重量 $mg$$m$ 是物体质量,$g$ 是重力加速度,两者相乘得到物体受到的重力。
- 摩擦系数 $\mu$描述接触面粗糙程度,橡胶对木材约为 0.5~0.8,玻璃对金属则更小。
- 分母的 $2$两只手指共同提供摩擦力,总摩擦能力是单指的两倍。
- 最小正压力 $F_{\min}$在刚好不滑落的边界上反解出的法向夹持力,是力控的目标值。
触觉反馈闭环
老周最得意的是自己的“手感”——一上手就知道要不要加力、往哪边歪。这种本领,在机器人身上就叫触觉感知。视觉负责“看清楚”,触觉负责“摸明白”,两者缺一不可。
触觉传感器藏在机器人手指表面,能测接触力的分布、微小的振动纹理甚至温度。它的价值不是给出一次读数,而是构成反馈闭环:检测到滑动征兆,立刻加大夹持力,再重新验证是否稳定。这一个“感知-决策-执行”的小循环,让抓取从开环瞄准变成闭环稳持。
滑动检测是闭环的触发器。物体开始滑动的瞬间,切向力会出现突变,算法盯着这个变化率,一旦超过阈值就判定“要滑了”。这个判断用数学写出来非常简洁。
老周听到柜子发出“嘎吱”声、感觉到木屑摩擦,就立刻调整姿势;机器人靠触觉传感器捕捉同样的“嘎吱声”,完成毫秒级加力。触觉反馈闭环,就是把这些年积累的“手感经验”注入每一次抓取。
- 切向力 $f_{t}$物体与手指接触面上沿切线方向的力,方向与滑动趋势相反。
- 变化率 $\dfrac{df_{t}}{dt}$切向力对时间的导数,反映力在单位时间内的突变程度;滑动瞬间这个值会剧烈飙升。
- 阈值 $\theta$预设的滑动判定门限,由传感器噪声和物体材质共同决定。
- 指示函数 $\mathbb{1}[\cdot]$条件成立输出 1(判定滑动),否则输出 0(保持稳定)。
泛化未知物体
干搬家这行二十年,老周发现最难搬的永远是“没见过的玩意儿”——客户搬来一尊奇形怪状的当代雕塑,他照样能安全搬下楼。这种面对未知事物随机应变的能力,正是机器人抓取最想拥有的。
现实世界是开放世界:机器人不可能预先见过所有物体。工业零件常有新款式,家里的水杯毛巾天天变化。因此抓取策略必须拥有泛化能力,对从未建模过的物体也能抓得稳。“多模态融合”是第一步——把视觉、触觉、深度等多路信号合并成一个统一表征,视觉看不清材质时,触觉立刻补上,互相弥补盲区。
“经验迁移”让机器人在见过的物体上学会的抓取先验,平滑迁移到形状相似但从未见过的新物体上;“持续学习”则让机器人在每次成功与失败中不断更新自己的“手感库”。这两者共同撑起开放世界的应对能力。用贝叶斯视角看,多模态融合就是在综合视觉与触觉两种证据后,再判断“能不能抓住”。
老周的手感库靠二十年积累,机器人靠千万次抓取与强化学习迭代,速度比人快得多。让“没见过”变成“抓得住”,正是抓取策略通往通用机器人操作的最大一块跳板。
- 后验概率 $P(\mathcal{G} \mid I, T)$看到图像 $I$、摸到触觉 $T$ 之后,抓取成功的概率。
- 视觉证据 $P(I \mid \mathcal{G})$已知能成功抓取的物体,其图像特征表现出的似然度。
- 触觉证据 $P(T \mid \mathcal{G})$已知能成功抓取的物体,其触觉信号表现出的似然度。
- 先验 $P(\mathcal{G})$不借助任何观测时,凭历史经验判断“这类东西能抓”的概率。
评估与落地
搬家公司给老周发年终奖,从来不只看“搬了多少件”,还看磕没磕碰、速度跟不跟得上、遇上紧急情况会不会处理。一台机器人的抓取能力,同样需要多维指标来体检。
抓取领域公认的评估体系包含四个维度:准确性——抓取成功率,衡量“抓得住”;鲁棒性——在扰动、光照变化、物体变形下依然稳定;效率——单次抓取耗时,决定流水线节拍;安全性——对易碎品零损伤、对人机共融场景零威胁。四者各有侧重,综合得分取加权和。
落地场景已经开始开花结果:仓储分拣是最典型的练兵场,机械臂在传送带上分拣大小不一、材质各异的包裹;工业精密装配需要克级力控精度,家庭服务未来要抓毛巾、端水杯、递玩具。老周的二十年经验能被量化成指标,机器人的能力也能被指标牵引着迭代。当它在准确、鲁棒、效率、安全四个维度上全面逼近老周时,具身智能就真正装上了一双“会抓的手”。
- 准确率 $A$成功抓取次数占总尝试次数的比例,是最直观的“抓得住”指标。
- 鲁棒性 $R$在扰动幅度变化下成功率保持稳定的程度,常用“扰动-成功率”曲线刻画。
- 效率 $E$单次任务平均耗时,仓储场景通常要求秒级以内。
- 安全 $S_{f}$接触力峰值、物体损伤率、紧急停机响应等安全相关度量的综合评价。
AI 应用场景
智慧仓储分拣机器人
阶段:感知 → 规划 → 控制 → 评估
解决的问题:传统传送带分拣只能处理规则箱体,遇到软包、透明袋、缠绕膜就束手无策。AI抓取策略结合视觉与触觉,动态决定抓点并实时调整力度,把异形包裹的分拣成功率从六成提升到九成以上,同时用多维指标持续监控产线表现。
具体案例:某电商仓库部署机械臂分拣流水线,RGB-D 相机先识别包裹位姿,深度网络采样候选抓点,力控夹爪在触觉反馈下自适应硬盒与软袋,触觉检测到滑动立即加力,单臂每小时分拣超过 800 件,破损率下降一个数量级。
家庭服务机器人
阶段:多模态感知 → 泛化规划 → 柔顺控制
解决的问题:家庭环境充满未知物体——今天的水杯、明天的毛巾、后天的玩具。传统方案需要预先建模,无法落地。抓取策略的“经验迁移+持续学习”让机器人在真实家庭中边用边学,越用越顺手。
具体案例:一台家庭服务机器人在用户客厅尝试抓起桌上的玻璃杯,视觉估计位姿后选择杯身中部作为抓点,触觉传感器感知到杯面光滑,自动提高夹持力并降低移动速度,成功端到主人面前而未打滑。
工业精密装配
阶段:力位混合控制 → 触觉反馈
解决的问题:轴孔装配中毫米级偏差就会卡死,纯位置控制难以为继。抓取策略中的“最小力规划+柔顺操作”让机械臂像老师傅一样“摸着劲干活”,以力为引导完成精密对接,避免损伤工件。
具体案例:某汽车零部件产线使用六维力传感器加持的机械臂进行齿轮装配,力位混合控制将接触力稳定在设定阈值内,遇到卡滞时立刻回退并重新试探,装配一次合格率从 82% 提升至 99% 以上。
Python 演示
import mathimport random class SimGripper: """两指夹爪: 根据触点几何计算稳定分""" def __init__(self, mu=0.7): self.mu = mu def score(self, p1, p2, centroid): cx = (p1[0] + p2[0]) / 2.0 cy = (p1[1] + p2[1]) / 2.0 offset = math.hypot(cx - centroid[0], cy - centroid[1]) span = math.hypot(p2[0] - p1[0], p2[1] - p1[1]) friction = self.mu * span / (offset + 1.0) return friction - offset * 0.1 - span * 0.001 def contour_points(n=24, radius=30.0, wobble=8.0): """生成带随机扰动的闭合轮廓, 模拟未知物体""" pts = [] for i in range(n): a = 2.0 * math.pi * i / n r = radius + random.uniform(-wobble, wobble) pts.append((r * math.cos(a), r * math.sin(a))) return pts def find_best_grasp(points, mu=0.7): g = SimGripper(mu) centroid = ( sum(p[0] for p in points) / len(points), sum(p[1] for p in points) / len(points), ) best = None best_score = -1e9 n = len(points) for i in range(n): for j in range(i + 1, n): d = abs(i - j) d = min(d, n - d) if d < n // 4: continue sc = g.score(points[i], points[j], centroid) if sc > best_score: best_score = sc best = (points[i], points[j]) return best, best_score def main(): random.seed(42) total = 200 ok = 0 for _ in range(total): pts = contour_points() (pa, pb), sc = find_best_grasp(pts) if sc > 0.0: ok += 1 print("测试物体: %d 个" % total) print("稳定抓取: %d 个 (成功率 %.1f%%)" % (ok, ok * 100.0 / total)) print("最佳触点: (%.1f, %.1f) <-> (%.1f, %.1f)" % (pa[0], pa[1], pb[0], pb[1])) if __name__ == "__main__": main()
def score(self, p1, p2, centroid):定义打分函数,把“离质心近、跨度大、摩擦余量足”合并成一个分数。friction = self.mu * span / (offset + 1.0)摩擦余量是稳定性的主要贡献项:摩擦系数越大、触点跨度越大越稳。d = min(d, n - d)计算闭合轮廓上的真实距离,避免把首尾相邻点误当成有效抓点对。if d < n // 4:过滤太近的触点对,太近等于“掐”而不是“抓”,物理上不稳定。if sc > best_score:贪心保留当前最高分方案,模拟规划阶段“取最优”的决策逻辑。random.seed(42)固定随机种子,保证每次运行结果可复现,方便对照实验。if sc > 0.0: ok += 1分数大于 0 视为可稳定抓取,最后汇总得到成功率指标。
常见误区
误区我一开始以为抓取很简单,让夹爪对准物体、用力合上不就行了吗?结果失败好几次才发现,位置差一点、力气大一点,物体就飞出去了。
正解抓取是一个“感知-规划-控制-反馈”的完整闭环。抓点位置由力封闭原理约束,夹持力由摩擦模型规划,滑动由触觉反馈纠正。只做“合拢”相当于蒙着眼睛搬钢琴,跟老周的“看、想、搬”差了三个环节。
为何常见:日常生活中抓东西是肌肉记忆,几乎无意识,很容易把复杂的决策过程简化成“一抓就完事”。
误区现在 3D 相机这么便宜、建模这么准,有了视觉就能算准抓点,触觉传感器是不是多余了?
正解视觉算得出“该抓哪”,算不出“抓得多紧”。湿滑酒杯与干燥木块的重量、摩擦、滑动趋势,只能靠接触后的实时反馈感知。视觉负责开环瞄准,触觉负责闭环稳持,二者是配合关系而非替代关系。
为何常见:视觉的效果在演示视频里太“出镜”,而触觉信息难以直观展示,导致存在感被系统性低估。
误区评估抓取策略看成功率就够了?既然 90% 和 99% 差得很远,那我拼命把成功率刷上去不就完了?
正解单一成功率会掩盖鲁棒性、效率与安全。在易碎品场景,损伤率比成功率更致命;在高速流水线,单次耗时决定产能;在真人旁边干活,安全冗余不可妥协。多维指标加权才是公允的评价方式,老周拿年终奖也不只看搬了多少件。
为何常见:成功率最好量化、最常被论文引用,容易形成“一指标定乾坤”的思维惯性。
误区既然神经网络能端到端直接输出抓点,力封闭、摩擦锥这些老掉牙的几何理论是不是可以扔进故纸堆了?
正解学习式方法擅长从数据中获取先验,但物理约束依然是它的“常识底座”。纯数据拟合在形变物体、极端光照下会崩,主流路线是“学习先验 + 物理校验”互补——几何模型提供上限,学习模型提供泛化。
为何常见:深度学习炫目的端到端效果让人误以为可以完全替代物理建模,忽视了泛化能力背后的归纳偏置。
面试题
Q1. 机器人“抓取策略”的核心闭环流程是?
- A.感知-规划-控制闭环流程← 正确答案
- B.加热-冷却-分离处理流程
- C.搜索-排序-存储处理流程
- D.编译-链接-运行执行流程
答案:A。抓取策略本质是“感知-规划-控制”闭环:先看清物体状态,再规划抓点与力度,最后执行并靠触觉反馈修正。加热冷却、排序存储、编译运行都与抓取无关。老周搬琴正是先看后想再搬。
Q2. 力封闭条件的直观含义是?
- A.接触力凸包包含原点锁死物体← 正确答案
- B.手指温度必须高于物体温度
- C.物体重心必须低于桌面高度
- D.夹爪闭合速度必须快于光速
答案:A。力封闭要求所有接触力的凸包包含原点,表示任意方向的外力都能被接触力抵消,物体被“锁”在指间。手温、重心高度、闭合速度都与稳定抓取无关。
Q3. 两指夹爪提起重物所需的最小法向力与哪个量成反比?
- A.物体质量
- B.摩擦系数← 正确答案
- C.夹爪重量
- D.视觉分辨率
答案:B。由最小力公式 $F_{\min}=mg/(2\mu)$ 可知,所需夹持力与摩擦系数 $\mu$ 成反比:接触面越滑,需要夹得越紧。它与质量成正比,与夹爪重量、视觉分辨率无关。
Q4. 位姿估计中的 $SE(3)$ 描述的是什么?
- A.旋转加平移共六个自由度← 正确答案
- B.仅绕竖直轴的旋转角
- C.物体表面的颜色与纹理
- D.夹爪手指的开合角度
答案:A。$SE(3)$ 是刚体变换空间,包含旋转矩阵(3 个自由度)和平移向量(3 个自由度),共 6 自由度,描述“位置+姿态”。只绕单轴、颜色纹理、开合角度都不是位姿估计的完整描述。
Q5. 下列属于抓取策略多维评估指标的是?
- A.抓取成功等准确指标← 正确答案
- B.抗干扰鲁棒性指标← 正确答案
- C.单次抓取效率指标← 正确答案
- D.表面鲜艳美观指标
答案:ABC。多维指标体系包含准确性、鲁棒性、效率与安全。表面鲜艳程度与抓取能力无关。老周拿年终奖看的是“搬得稳、搬得快、不出事”,不是“搬得好看”。
Q6. 触觉反馈在抓取中的核心作用是什么?
- A.替代视觉处理场景语义理解
- B.检测滑动并实时调节夹持力← 正确答案
- C.计算物体在图像中的像素面积
- D.生成环境三维彩色地图
答案:B。触觉反馈的核心价值是闭环:检测切向力突变判断滑动,再实时调节夹持力保持稳定。替代视觉语义理解、计算像素面积、生成三维地图都不是触觉传感器的职责。
Q7. 提升未知物体抓取泛化能力的手段包括?
- A.视觉触觉等多模态融合← 正确答案
- B.跨场景的经验迁移学习← 正确答案
- C.持续学习不断遇见的新物体← 正确答案
- D.只固定使用一种标准夹爪
答案:ABC。多模态融合补盲区、经验迁移借先验、持续学习更新手感库,三者共同提升开放世界抓取能力。只固定使用一种夹爪会限制可抓物体的范围,无法应对未知物体。
Q8. 摩擦锥条件 $f_t \leq \mu f_n$ 说明什么?
- A.切向力超过摩擦上限即滑动← 正确答案
- B.法向力越大物体越容易滑落
- C.摩擦系数与温度成正比关系
- D.夹持力越小抓取越稳定可靠
答案:A。摩擦锥说明切向力不能超过“摩擦系数 × 法向力”,超过上限物体就会滑动。法向力越大越不易滑,摩擦系数与温度无必然关系,夹持力越小越不稳定。
Q9. 关于“学习式抓取方法”,下列说法正确的是?
- A.可从大量数据中学习抓取先验← 正确答案
- B.完全不需要物理约束知识的参与
- C.可与几何力封闭方法互补使用← 正确答案
- D.仅能处理规则形状的简单物体
答案:AC。学习式方法从数据中学习抓取先验,且主流路线是与几何力封闭互补;“完全不要物理约束”是对深度学习能力的过度放大的误解,“仅能处理规则形状”则低估了它的泛化能力。
Q10. 仓储分拣场景对抓取策略最典型的多维要求是?
- A.高成功率高效率与高安全性并重← 正确答案
- B.只针对单一形状的高精度抓取
- C.完全离线工作且不感知物体状态
- D.单纯追求夹爪的最快移动速度
答案:A。仓储分拣节奏快、物件杂、常与工人共处,必须成功率、效率、安全并重。只针对单一形状、离线不感知、只求速度快都无法适应真实调度,这正是多维指标体系的用武之地。