Views
No views yet
| Metric | Value |
|---|---|
| ModelNet40 Val OA | 90.36% |
| ModelNet40 Test OA | 90.24% |
| Training Epochs | 300 |
| Batch Size | 192 |
| Format | File | Use Case |
|---|---|---|
| PyTorch (.pth) | pytorch/desenat_v1.pth | Training, fine-tuning |
| SafeTensors | pytorch/desenat_v1.safetensors | Fast loading, safe |
| ONNX | N/A | Not exportable (custom CUDA FPS/ball_query ops) |
| TensorRT | Deferred | Generate on target hardware |
1import torch
2from safetensors.torch import load_file
3
4# Load weights
5state_dict = load_file("pytorch/desenat_v1.safetensors")
6
7# Build model (requires openpoints from DesenAT repo)
8from openpoints.models import build_model_from_cfg
9from openpoints.utils import EasyConfig
10cfg = EasyConfig()
11cfg.load("cfgs/modelnet40ply2048/pointnet++.yaml", recursive=True)
12cfg.model.criterion_args = {"NAME": "CrossEntropy"}
13model = build_model_from_cfg(cfg.model)
14model.load_state_dict(state_dict)
15model.eval()
16
17# Inference
18points = torch.randn(1, 1024, 3).cuda()
19data = {"pos": points, "x": points.transpose(1, 2)}
20logits = model(data) # (1, 40)configs/baseline_st.toml