This is a official implementation of X-3D proposed by our paper X-3D: Explicit 3D Structure Modeling for Point Cloud Recognition (CVPR 2024).
source install.sh
Please change the version of the relevant package in install.sh
according to your CUDA version.
Please refer to PointNeXt tutorial to download the datasets.
Model | Area-5 mIoU/OA | 6-fold mIoU/OA | Params (M) | FLOPs (G) |
---|---|---|---|---|
PointMetaBase-L | 69.723/90.702 | 75.6/90.6 | 2.7 | 2.0 |
+X-3D | 71.8/91.2 | 76.7/91.1 | 3.8 | 2.2 |
PointMetaBase-XL | 71.597/90.551 | 76.3/91.0 | 15.3 | 9.2 |
+X-3D | 72.1/91.4 | 77.7/91.6 | 18.1 | 9.8 |
CUDA_VISIBLE_DEVICES=0 bash script/main_segmentation.sh cfgs/s3dis/pointmetabase-l-x-3d.yaml wandb.use_wandb=True
CUDA_VISIBLE_DEVICES=0 bash script/main_segmentation.sh cfgs/s3dis/pointmetabase-l-x-3d.yaml wandb.use_wandb=False mode=test --pretrained_path path/to/pretrained/model
CUDA_VISIBLE_DEVICES=0 python examples/profile.py --cfg cfgs/s3dis/pointmetabase-l-x-3d.yaml batch_size=16 num_points=15000 flops=True timing=True
| Model | Val mIoU | Test mIoU | Params (M) | FLOPs (G) | TP (ins./sec.) | | :————–: | :——————————————————————————————-: | :——-: | :——–: | :——-: | :————: | | PointMetaBase-L | 71.0 | - | 2.7 | 2.0 | 187 | | +X-3D | 71.8 | | 3.8 | 2.2 | | | PointMetaBase-XL | 71.8 | - | 15.3 | 9.2 | 104 | | +X-3D | 72.8 | | 18.1 | 9.8 | |
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 python examples/segmentation/main.py --cfg cfgs/scannet/pointmetabase-l-x3d.yaml wandb.use_wandb=True
CUDA_VISIBLE_DEVICES=0 python examples/segmentation/main.py --cfg cfgs/scannet/pointmetabase-l-x3d.yaml mode=test dataset.test.split=val --pretrained_path path/to/pretrained/model
CUDA_VISIBLE_DEVICES=0 python examples/profile.py --cfg cfgs/scannet/pointmetabase-l-x3d.yaml batch_size=16 num_points=15000 flops=True timing=True
This repository is built on reusing codes of OpenPoints, PointNeXt and PointMetaBase