Skip to content

Commit 9015e0f

Browse files
committed
releasing SPT tutorial slides and notebook
1 parent cd4f3a2 commit 9015e0f

20 files changed

+105
-174
lines changed

README.md

+5-2
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,9 @@ Due to its lightweight backbone and scalable formulation, SuperCluster can proce
121121

122122
## 📰 Updates
123123

124+
- **27.06.2024** Released 🧑‍🏫 tutorial
125+
[slides](media/superpoint_transformer_tutorial.pdf) and
126+
[notebook](notebooks/superpoint_transformer_tutorial.ipynb).
124127
- **21.06.2024** [Damien](https://github.com/drprojects) will be giving a
125128
**🧑‍🏫 tutorial on Superpoint Transformer on 📅 27.06.2024 at 1pm CEST**.
126129
Make sure to come if you want to gain some hands-on experience with the project !
@@ -224,9 +227,9 @@ named `spt`.
224227
225228
```
226229

227-
> **Note**: See the [Datasets page](docs/datasets.md) for further details on `data/``.
230+
> **Note**: See the [Datasets page](docs/datasets.md) for further details on `data/`.
228231
229-
> **Note**: See the [Logs page](docs/logging.md) for further details on `logs/``.
232+
> **Note**: See the [Logs page](docs/logging.md) for further details on `logs/`.
230233
231234
<br>
232235

docs/datasets.md

+26-2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ for more details.
2323
<summary><b>S3DIS data directory structure.</b></summary>
2424
<br><br>
2525

26+
<p align="center">
27+
<img width="32%" src="../media/s3dis/input.png">
28+
<img width="32%" src="../media/s3dis/sem_gt.png">
29+
<img width="32%" src="../media/s3dis/pano_gt.png">
30+
</p>
31+
2632
```
2733
└── data
2834
└── s3dis # Structure for S3DIS
@@ -51,6 +57,12 @@ for more details.
5157
<summary><b>ScanNetV2 data directory structure.</b></summary>
5258
<br><br>
5359

60+
<p align="center">
61+
<img width="32%" src="../media/scannet/input.png">
62+
<img width="32%" src="../media/scannet/sem_gt.png">
63+
<img width="32%" src="../media/scannet/pano_gt.png">
64+
</p>
65+
5466
```
5567
└── data
5668
└─── scannet # Structure for ScanNetV2
@@ -79,6 +91,12 @@ for more details.
7991
<summary><b>KITTI-360 data directory structure.</b></summary>
8092
<br><br>
8193

94+
<p align="center">
95+
<img width="32%" src="../media/kitti360/input.png">
96+
<img width="32%" src="../media/kitti360/sem_gt.png">
97+
<img width="32%" src="../media/kitti360/pano_gt.png">
98+
</p>
99+
82100
```
83101
└── data
84102
└─── kitti360 # Structure for KITTI-360
@@ -103,6 +121,12 @@ for more details.
103121
<summary><b>DALES data directory structure.</b></summary>
104122
<br><br>
105123

124+
<p align="center">
125+
<img width="32%" src="../media/dales/input.png">
126+
<img width="32%" src="../media/dales/sem_gt.png">
127+
<img width="32%" src="../media/dales/pano_gt.png">
128+
</p>
129+
106130
```
107131
└── data
108132
└── dales # Structure for DALES
@@ -228,11 +252,11 @@ the `num_classes` you define in your `YourDataset`.
228252
- **All labels $[0, C - 1]$ are assumed to be present in your dataset**. As
229253
such, they will all be used in metrics and losses computation.
230254
- A point with the **$C$ label will be considered void/ignored/unlabeled**
231-
(whichever you call it). As such, it will be excluded from from metrics and
255+
(whichever you call it). As such, it will be excluded from metrics and
232256
losses computation
233257

234258
Hence, make sure the **output of your `YourDataset.read_single_raw_cloud()`
235-
reader method never returns labels outside of your $[0, C]$ range**. Besides,
259+
reader method never returns labels outside your $[0, C]$ range**. Besides,
236260
if some labels in $[0, C - 1]$ are not useful to you (ie absent from your
237261
dataset), we recommend you remap your labels to a new $[0, C' - 1]$ range
238262
(`torch_geometric.nn.pool.consecutive.consecutive_cluster` can help you with

docs/visualization.md

+44-43
Large diffs are not rendered by default.

media/dales/input.png

435 KB
Loading

media/dales/pano_gt.png

458 KB
Loading

media/dales/sem_gt.png

477 KB
Loading

media/dales/sem_gt_demo.png

1.83 MB
Loading

media/kitti360/input.png

593 KB
Loading

media/kitti360/pano_gt.png

597 KB
Loading

media/kitti360/sem_gt.png

568 KB
Loading

media/s3dis/input.png

433 KB
Loading

media/s3dis/pano_gt.png

410 KB
Loading

media/s3dis/sem_gt.png

405 KB
Loading

media/scannet/input.png

446 KB
Loading

media/scannet/pano_gt.png

409 KB
Loading

media/scannet/sem_gt.png

418 KB
Loading
4.17 MB
Binary file not shown.

notebooks/demo.ipynb

+4-13
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,6 @@
2020
"file_path = os.path.dirname(os.path.abspath('')) # for .ipynb notebook\n",
2121
"sys.path.append(file_path)\n",
2222
"\n",
23-
"# Necessary for advanced config parsing with hydra and omegaconf\n",
24-
"from omegaconf import OmegaConf\n",
25-
"OmegaConf.register_new_resolver(\"eval\", eval)\n",
26-
"\n",
2723
"import hydra\n",
2824
"from src.utils import init_config\n",
2925
"import torch\n",
@@ -138,12 +134,7 @@
138134
"\n",
139135
"# Load pretrained weights from a checkpoint file\n",
140136
"if ckpt_widget.value is not None:\n",
141-
" if task_widget.value == 'semantic':\n",
142-
" model = model.__class__.load_from_checkpoint(cfg.ckpt_path, net=model.net, criterion=model.criterion) \n",
143-
" elif task_widget.value == 'panoptic':\n",
144-
" model = model.__class__.load_from_checkpoint(cfg.ckpt_path, net=model.net, edge_affinity_head=model.edge_affinity_head, partitioner=model.partitioner, criterion=model.criterion)\n",
145-
" else:\n",
146-
" raise ValueError(f\"Unknown task '{task_widget.value}'\")\n",
137+
" model = model._load_from_checkpoint(cfg.ckpt_path)\n",
147138
"\n",
148139
"# Move model to selected device\n",
149140
"model = model.eval().to(device_widget.value)"
@@ -475,9 +466,9 @@
475466
],
476467
"metadata": {
477468
"kernelspec": {
478-
"display_name": "Python [conda env:spt_test] *",
469+
"display_name": "Python [conda env:spt] *",
479470
"language": "python",
480-
"name": "conda-env-spt_test-py"
471+
"name": "conda-env-spt-py"
481472
},
482473
"language_info": {
483474
"codemirror_mode": {
@@ -489,7 +480,7 @@
489480
"name": "python",
490481
"nbconvert_exporter": "python",
491482
"pygments_lexer": "ipython3",
492-
"version": "3.8.18"
483+
"version": "3.8.19"
493484
}
494485
},
495486
"nbformat": 4,

0 commit comments

Comments
 (0)