File size: 2,359 Bytes
0780637
 
 
 
 
 
 
 
 
 
6653941
0780637
 
 
 
 
6653941
0780637
6653941
0780637
6653941
 
 
 
0780637
6653941
 
0780637
6653941
0780637
6653941
 
 
 
 
0780637
6653941
0780637
6653941
 
 
 
 
0780637
6653941
0780637
6653941
0780637
6653941
 
 
 
 
0780637
6653941
 
0780637
6653941
0780637
6653941
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
---
license: apache-2.0
pipeline_tag: object-detection
tags:
- graspgen
- grasp-generation
- point-cloud
- robotics
- IB-Robot
- ascend
- torch
- edge-deployment
---

# Model Card for GraspGen (IB-Robot)

GraspGen (Generative Grasp Sampler with Diffusion Denoiser + Discriminator) for point-cloud-based robotic grasp generation, packaged for the [IB-Robot](https://atomgit.com/openeuler/IB_Robot) framework with two deployments sharing one contract.

## Deployments

| deployment | backend | artifacts | notes |
|---|---|---|---|
| `ascend_310p` | Ascend ACL (Ascend310P1) | 8 OM modules | board-side pipeline (generator/discriminator split graph, device links) |
| `torch_cuda` | PyTorch CUDA | — (weights in `assets/`) | host-side debugging and evaluation |

Both deployments share the same `tensor_model/graspgen/generate_grasps` contract
(`observation.object_points [-1,3] -> grasp.poses [-1,4,4] + grasp.confidence [-1]`).

## Weights provenance

- `assets/generator_checkpoint.pth` = NVlabs/GraspGen `checkpoints/graspgen_robotiq_2f_140_gen.pth`
  (sha256 `fe8497108e39d8fc50be06cd7df22a2f680e0495e713d24c3104616f291e00dd`)
- `assets/discriminator_checkpoint.pth` = `graspgen_robotiq_2f_140_dis.pth`
- The 310P OM modules were converted from the same checkpoint — both deployments
  are weight-identical (sha pinned in `assets/adapter.json`).

## Repository Structure

- `inference_manifest.json` — deployment routing (schema v3)
- `assets/adapter.json` — algorithm contract, runtime parameters, checkpoint digests
- `assets/graspgen_config.yml` — upstream omegaconf config (robotiq_2f_140)
- `assets/generator_checkpoint.pth` / `assets/discriminator_checkpoint.pth` — Torch weights
- `artifacts/ascend/ascend_310p/*.om` — compiled 8-role pipeline

## Usage

Host (CUDA, requires the `grasp_gen` package with pointnet2_ops):

```python
from inference_manifest import load_inference_manifest
validated = load_inference_manifest("models/grasp", "torch_cuda")
# driven via manipulation_service.graspgen_wrapper (inference_backend="local_cuda")
```

Board (Ascend 310P): select the `ascend_310p` deployment through the IB-Robot
unified inference runtime.

## License

Code and packaging: Apache-2.0. GraspGen model weights follow the
NVlabs/GraspGen upstream license (NVIDIA Source Code License) — check
compatibility before redistribution.