Semantic Occupancy Prediction with Dual Range-Voxel Representation
June 30, 2026 ยท View on GitHub
Environment
- Create the conda environment
conda create -n occ python=3.7
conda activate occ
- Install the following dependencies
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu116
pip install torch-scatter -f https://data.pyg.org/whl/torch-1.12.0+cu116.html
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu116/torch1.12.1/index.html
pip install spconv-cu116 tensorboard numba nuscenes-devkit
Prepare Dataset
-
SemanticKITTI
- Download SemanticKITTI from SemanticKITTI
- Download SSC labels from SemKitti-SSC
- Modify
utils/preprocess.pyand execute it to preprocess SSC labels.
-
SemanticPOSS
- Download SemanticPOSS from SemanticPOSS
- Download SSC labels from SemPoss-SSC
-
nuScenes-Occupancy
- Download nuScenes from nuScenes
- Download OCC labels from nuScenes-Occupancy
- Download the generated train info file from Google Drive.
- Download the generated val info file from Google Drive.
-
Occ3D-nuScenes
- Download nuScenes from nuScenes
- Download OCC labels from Occ3D-nuScenes
Model Zoo
| Method | Dataset | IoU (%) | mIoU (%) | Weights |
|---|---|---|---|---|
| DRVR | SemanticKITTI | 60.3 | 30.4 | Google-drive |
| DRVR | SemanticPOSS | 58.4 | 22.7 | Google-drive |
| DRVR | nuScenes-Occupancy | 30.6 | 21.3 | Google-drive |
| DRVR | Occ3D (with mask) | 84.7 | 50.1 | Google-drive |
| DRVR | Occ3D (w/o mask) | 40.2 | 29.4 | Google-drive |
Training and Evaluation
-
SemanticKITTI
- Modify the configuration file
config/drvr_semantickitti.yaml. - Enter the
tasks/semantickitti_sscfolder, modifyrun.shand run the command./run.sh.
- Modify the configuration file
-
SemanticPOSS
- Modify the configuration file
config/drvr_semanticposs.yaml. - Enter the
tasks/semanticposs_sscfolder, modifyrun.shand run the command./run.sh.
- Modify the configuration file
-
nuScenes-Occupancy
- Modify the configuration file
config/drvr_nuscenes.yaml. - Enter the
tasks/nuscenes_openoccfolder, modifyrun.shand run the command./run.sh.
- Modify the configuration file
-
Occ3D-nuScenes
- Modify the configuration file
config/drvr_occ3d.yaml. - Enter the
tasks/nuscenes_occ3dfolder, modifyrun.shand run the command./run.sh.
- Modify the configuration file