P-GraspNet-2020:6-DoF 抓取的大规模基准与判别式方法
动机
到 2019 年抓取研究的硬伤:每篇论文用自己的物体集(Dex-Net 用自己的合成、Cornell Dataset 240 张图、Jacquard 54k 图),方法间不可比。更严重的是:
- 大多数数据集是 2D 抓取(俯视 + 旋转角),不能表达 6-DoF(夹爪位姿 = 平移 3D + 旋转 SO(3))。
- 6-DoF 数据极缺:Dex-Net 2.0 是合成的, Cornell/Jacquard 是真实但 2D。
- 评估不统一:每篇论文用不同 metric(antipodal score / force-closure / 真机成功率),无法跨论文比较。
GraspNet-1Billion 的 question:能不能造一个大规模、6-DoF、统一评估的抓取 benchmark,让抓取研究从「自家小数据集」走向「共享大规模基准」?
数据集构造
物体集:GraspNet-1Billion Object
- 88 个 3D 物体模型(均带高质量 mesh),来源(论文 §3.2 原文):
- YCB 32 个(Calli 2017 的标准抓取基准物体集)
- Dex-Net 2.0 13 个对抗性物体(Mahler 2017 中刻意挑出来的难抓物体)
- 自采 43 个(SJTU 团队自行扫描重建)
- 物体尺度从 cm 级(杯子、笔)到 dm 级(厨具、工具),覆盖 shape/texture/size/material 多样性。
- 跨域分布:实物扫描 mesh + 已有 benchmark 物体,直接对齐真实场景几何。
场景集:97,280 RGB-D 帧 / 190 场景
- 190 个 clustered 场景(arXiv v2 为 170 场景,CVPR 终版扩到 190),每场景从 88 物体集中随机抽约 10 个堆叠放置。
- 每场景用机械臂末端在四分之一球面上采 256 个视角,同时挂 Intel RealSense 435 + Kinect 4 Azure 两台 RGB-D 相机同步拍摄。
- 帧数:190 场景 × 256 视角 × 2 相机 = 97,280 RGB-D 帧(arXiv v2 是 170 × 256 × 2 = 87,040)。
- 相机配准到桌面世界坐标;每帧附带相机位姿,便于多帧点云融合。
- 每帧每个物体标注 6-DoF pose(首帧人工标 + ArUco marker ICP 传播到其余帧)。
抓取标注:1B+ 个 6-DoF grasp 候选
对每个物体的每个视角,用两阶段 pipeline(论文 §3.3)生成密集候选:
- 6-DoF 表示:$(R, t)$,$R \in SO(3)$ 是 3×3 旋转、$t \in \mathbb{R}^3$ 是夹爪中心位置,再加 1-DoF 夹爪宽度 $w$。共 7-DoF(位置 3 + 旋转 3 + 宽度 1)。
- 采样策略(论文 Fig. 4):
- 物体表面下采样得到均匀分布的 grasp point;
- 每个 grasp point 上采 $V$ 个 grasp view(球面均匀分布的接近方向);
- 每个view 在「in-plane rotation × gripper depth」二维网格上搜可行 grasp;
- 按 gripper width 收紧到无空抓/无碰撞,得到候选。
- 总计 370M 候选(arXiv v2)/ 1B+ 候选(CVPR 终版)。arXiv v2 论文 §3.1 明言每场景 grasp 数 1.5M–2.5M;CVPR 终版按 1B+/190 场景推算约 5M/场景量级(PDF 未直接给终版每场景数)。
grasp 质量评估:analytic force-closure(解析力封闭)
关键贡献:每个 grasp 候选用 解析力封闭(analytic force-closure)计算判「抓不抓得住」——论文 §3.3 原文明言 "our evaluation system directly reports whether a grasping is successful or not by analytic computation"。不是 Bullet 物理仿真。
- 力封闭判定(Nguyen 1988 经典 metric,论文采 Liang 等 2019 改进版):给定夹爪位姿 + 物体 mesh + 摩擦系数 µ,输出二值标签「该 µ 下是否构成 antipodal 力封闭」。
- score 定义:从 µ = 0.1 起以 ∆µ = 0.1 步长增大,直到 grasp 首次 antipodal;越小的 µ 越稳。论文给
$$s = 1.1 - \mu,\quad s \in (0, 1]$$
(s = 1.0 对应 µ = 0.1 极稳,s 越小越易掉。)
- 正/负样本比约 1 : 2(论文 §3.3 原文 "the ratio of positive and negative labels in our dataset is around 1:2"),即约 1/3 候选被标正。
- 论文 §4 真机验证:score = 1 的 grasp 真机成功率约 93–98%;score = 0.1 的降到 5–23%。这是「analytic score 确实预测真机」的关键证据。
这套评估避免了之前 Cornell/Jacquard 的 rectangle metric(只能评 2D、阈值宽松、Cornell 已 saturate 到 99%+)的局限,是 GraspNet 把抓取评估标准化、可跨方法比较的关键。
评估协议
GraspNet benchmark(公开 leaderboard)
给定一帧 RGB-D + 对齐点云,方法输出 top-N 个 grasp 候选(N ∈ {1, 5, 10, 25, 50, 100})按 score 排序,benchmark 用 analytic force-closure 在线评估:
- AP(Average Precision):top-N 中能成功执行的 grasp 占比,平均 Precision@k(k = 1..50),按 COCO 风格在 µ = 0.1..0.5 上平均。
- Coverage:对每个物体的「可达 grasp 集」中,方法覆盖到的比例。
- Diversity:方法输出 grasp 在 6-DoF 空间的多样性。
- 评估前先做 pose-NMS(平移 < 1 cm、旋转 < 5°、每物体至多 K = 10 grasp)防止单物体/相似姿态 dominate。
- 在「Seen」「Similar」「Novel」三类物体上分别评估(arXiv v2 划分:100 训练场景 / 70 测试场景,测试再分 30 seen + 30 similar + 10 novel),测泛化。
三种堆叠模式 × 三类物体 = 9 个 setting
- 模式:single object / packed(紧密堆叠)/ pile(乱堆)
- 物体类:seen / similar / novel
这 9 个 setting 给出 9 个 AP 表,每个方法在 leaderboard 上报全。
方法(GraspNet baseline)
GraspNet-1Billion 论文同时给出一个判别式 baseline。CVPR 2020 摘要对其一句话定位:"learn approaching direction and operation parameters in a decoupled manner",并引入 grasp affinity field 作为连续 region-based 表示。
网络结构(要点)
- 输入:对齐点云(scene-level)。
- 解耦预测:把 grasp 拆成「approaching direction」+「operation parameters(in-plane rotation / gripper depth / width)」两条头,解耦而非联合回归。
- Grasp affinity field:一种连续的 grasp-quality 场表示,替代离散 top-K 候选打分。
- 待核:精确的 backbone(PointNet++/U-Net 系或其它)、层数、loss 权重未在 arXiv v2 摘要给死,本仓库 PDF 是 arXiv v2(只描述数据集与 analytic 评估,未含 baseline 实现);CVPR 终版正文与
graspnet-baselineREADME 是其权威源,若需正文级精度请查这两处。
推理流程(要点)
- 对场景点云预测每个候选 grasp 的 approaching direction + operation parameters + affinity score。
- 用 grasp affinity field 选 top-K 候选。
- 对候选做 collision check 过滤无效 grasp。
- 按 score 排序输出。
关键工程 trick
- View-based sampling:在物体表面密集采 grasp view(接近方向),再 NMS 去重(trans < 1 cm、rot < 5°)。
- Collision label:训练时预计算哪些 grasp 会和环境/其它物体碰撞,作为过滤信号。
- Multi-view fusion:单帧点云不完整,借助 256 视角数据做多帧 fuse。
实验结果(论文 baseline)
官方 graspnet/graspnet-baseline README 报告的 AP(In-paper,AP 平均 over µ ∈ [0.1, 0.5]):
| 相机 | Seen | Similar | Novel |
|---|---|---|---|
| RealSense | 27.56 | 26.11 | 10.55 |
| Kinect | 29.88 | 27.84 | 11.51 |
- baseline 表现远低于 saturate(novel 仅 ~10% AP)——给后续工作留出大量改进空间,也是 leaderboard 持续活跃至今的原因。
- 待核:上表是 graspnet-baseline README 公开数字;论文正文 Table 的 single/packed/pile × seen/similar/novel 完整 9 项细分请查 PDF CVPR 终版。
后续 SOTA(AnyGrasp 2023,arXiv:2212.08333)在同样的 benchmark 上显著推高 AP,方法上换成稀疏卷积骨干 + grasp correspondence 跨帧跟踪,但benchmark 协议不变——这是 GraspNet 的最大遗产。
为什么重要
- 抓取的 ImageNet 时刻:第一次提供 6-DoF 抓取的统一大规模 benchmark + 评估协议,让后续抓取工作可直接比较。后续 AnyGrasp、Diffusion-EDMF、DexGraspNet 等都基于此训/评。
- 从 2D 抓取推进到 6-DoF:之前 Cornell / Jacquard 是俯视 2D grasp,GraspNet 把抓取空间从 4-DoF(位置 2 + 旋转 1 + 宽度 1)扩到 7-DoF,是规划维度升级。
- analytic force-closure 评估成为事实标准:之前 Cornell rectangle metric(IOU > 0.25 + 角度 < 30°)只能评 2D、且 Cornell 已 saturate 到 99%+。GraspNet 用 analytic force-closure + AP@µ 直接评 6-DoF 抓取稳定性,是后续抓取 benchmark 默认协议。
- 数据规模 1B+ 让深度学习可用:之前抓取数据集最大 5 万级(Cornell 8k grasps、Jacquard 1.1M、Dex-Net 6.7M),深度模型训不动。1B+ grasp 候选让判别式深度模型有足够样本。
- 开源 + leaderboard 持续维护:graspnet.net 持续接收新方法提交,是抓取领域少数持续活跃的公开 benchmark。
局限(被后续工作补足)
- 只针对 parallel-jaw:灵巧手(Shadow 24-DoF / Allegro 16-DoF)的抓取空间维度爆炸,GraspNet 没覆盖。DexGraspNet [Wang 2023] 用类似 pipeline 生成 1.32 亿灵巧手 grasp 补齐。
- 几何分析而非生成式:GraspNet baseline 是 discriminative(每个候选打分),不能生成多模态 grasp 分布。SE(3)-DiffusionFields / Diffusion-EDMF 改用 diffusion/flow 生成。
- 物体 set 主要静态/桌面:移动场景、人在环(人手递物)等不覆盖。后续 GraspNet-AnyGrasp Pro 部分扩到 moving camera。
- analytic 评分与真机的 gap:analytic force-closure 标注的 score ≠ 真机 100% 成功(论文 §4 真机表显 score=1 时 93–98%、score=0.1 时 5–23%),sim-to-real gap 在抓取上仍 5–10%。
- 每帧决策 vs temporal:GraspNet 是单帧 grasp 规划,不建模「抓取过程中物体姿态变化」。后续「dynamic grasping」线补这块。
复现要点
- 复现门槛:⭐⭐(数据 + 代码全开源,单 GPU 可跑)
- 数据:github.com/graspnet/graspnet-1billion 下载(~30 GB 含点云 + 物体 + 标注)。
- baseline:github.com/graspnet/graspnet-baseline,PyTorch + Open3D。
- 评估:
graspnetAPI提供 AP/Coverage/Diversity 计算和 leaderboard 提交接口(内置 analytic force-closure 评估器)。 - 关键坑:① seen/similar/novel 物体划分要严格按官方 split;② depth 图要按相机内参配准到点云;③ µ 扫描区间与 ∆µ 必须与论文一致(µ = 0.1..0.5、∆µ = 0.1),否则 AP 不可比。
相关
- 建立在:PointNet/PointNet++ [Qi 2017]、Dex-Net 2.0/3.0 [Mahler 2017]、antipodal grasp sampling 与 force-closure 经典理论(Nguyen 1988)、Cornell Dataset / Jacquard(前作 2D 抓取集)。
- 同期/后续抓取:
- AnyGrasp [Fang 2023]——同团队商业化版,spatial+temporal 鲁棒、移动相机可用。
- Diffusion-EDMF [2023]——把 diffusion 抓取生成和 GraspNet 结合。
- DexGraspNet [Wang 2023]——灵巧手 1.32 亿 grasp,同 pipeline。
- SE(3)-DiffusionFields [2022, arxiv:2209.03855]——diffusion 在 SE(3) 学 cost。
- FoundationPose [Wen 2023]——6-DoF pose 估计 + 抓取联动。
- 本仓库线索:T14 抓取 枢纽、T11 灵巧操作(DexGraspNet 是 T11 数据基石)、T02 数据集 抓取数据基石。