This document provides a brief intro of the usage of PCM.
The pre-trained weights are available at Hugging Face and Baidu Pan.
Model | OA (ScanObjectNN) | mAcc (ScanObjectNN) | OA (ModelNet40) | mAcc (ModelNet40) | Ins. mIoU (ShapeNetPart) | Cls. mIoU (ShapeNetPart) | mIou (S3DIS) | OA (S3DIS) |
---|---|---|---|---|---|---|---|---|
PCM | 88.0 | 86.4 | 93.1 | 91.2 | 87.3 | 85.6 | 62.8 | 88.7 |
PCM-Tiny | 87.1 | 85.2 | 93.3 | 90.5 | 87.1 | 85.2 | - | - |
# train
CUDA_VISIBLE_DEVICES=0 python examples/classification/main.py --cfg cfgs/scanobjectnn/PCM.yaml
# test
CUDA_VISIBLE_DEVICES=0 python examples/classification/main.py --cfg cfgs/scanobjectnn/PCM.yaml mode=test --pretrained_path /path/to/PCM.pth
# train
CUDA_VISIBLE_DEVICES=0 python examples/classification/main.py --cfg cfgs/modelnet40ply2048/PCM.yaml
# test
CUDA_VISIBLE_DEVICES=0 python examples/classification/main.py --cfg cfgs/modelnet40ply2048/PCM.yaml mode=test --pretrained_path /path/to/PCM.pth
# train
CUDA_VISIBLE_DEVICES=0,1,2,3 python examples/shapenetpart/main.py --cfg cfgs/shapenetpart/PCM.yaml
# test
CUDA_VISIBLE_DEVICES=0 python examples/shapenetpart/main.py --cfg cfgs/shapenetpart/PCM.yaml mode=test --pretrained_path /path/to/PCM.pth
# train
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 python examples/segmentation/main.py --cfg cfgs/s3dis/PCM.yaml
# test
CUDA_VISIBLE_DEVICES=0 bash script/main_segmentation.sh cfgs/s3dis/PCM.yaml wandb.use_wandb=False mode=test --pretrained_path /path/to/PCM.pth
CUDA_VISIBLE_DEVICES=0 python examples/profile.py --cfg cfgs/scanobjectnn/PCM.yaml batch_size=128 num_points=1024 timing=True flops=True