Skip to content

Latest commit

 

History

History

segmentation

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

RepSurf for Segmentation

By Haoxi Ran* , Jun Liu, Chengjie Wang ( * : corresponding contact)

Preparation

Environment

We tested under the environment:

  • python 3.7
  • pytorch 1.6.0 / 1.8.0
  • cuda 10.1 / 11.1
  • gcc 7.2.0
  • h5py
  • sharedarray
  • tensorboardx

For anaconda user, initialize the conda environment repsurf-seg by:

sh init.sh

Experiments

S3DIS Area-5 (Data & Logs: Google Drive)

  • Performance using the same settings:
Model mIoU mAcc OA #Params Training Time Code Training Log Test Log Checkpoint
Point Transformer
(our settings)
70.37 (official: 70.4) 77.02 (official: 76.5) 90.80 (official: 90.8) 7.767M 19.91h pointtransformer.py google drive google drive google drive
(30 MB)
PointNet++ SSG (our settings) 64.05 71.52 87.92 0.968M 9.08h pointnet2_ssg.py google drive google drive google drive
(4 MB)
PointNet++ SSG w/ Umbrella RepSurf (ours) 68.86 76.54 90.22 0.976M 9.18h repsurf_umb_ssg.py google drive google drive google drive
(4 MB)

Note:

  1. The performance (mIoU/mAcc/OA) are from the final predictions on the whole scenes of S3DIS Area-5, while the results during training is on sub-sampled scenes for fast validation.
  2. The training time of all above implementations is estimated on four NVIDIA RTX 3090. The time in the logs contains both training and validating time.
  3. To speed up the training process, we apply Sectorized FPS (in the first stage) for all above methods. It can save 30~40% training time and does not affect the performance.
  4. To lessen the instability from grid sampling during inference, we apply median filtering to all the above implementations. Besides, it can slightly improve the results (~0.4 mIoU).
  • To (firstly install gdown by pip install gdown and) download dataset:
cd ./data/S3DIS
gdown https://drive.google.com/u/1/uc?id=1UDM-bjrtqoIR9FWoIRyqLUJGyKEs22fP
tar zxf s3dis.tar.gz && rm s3dis.tar.gz && cd -
  • To train one model (Umbrella RepSurf, Point Transformer, PointNet2) for S3DIS Area-5:
sh scripts/s3dis/train_[MODEL].sh  # MODEL: repsurf_umb, pointnet2, pointtransformer
  • To test one model (Our Umbrella RepSurf, Point Transformer, PointNet2) for S3DIS Area-5 on whole scenes:
sh scripts/s3dis/test_[MODEL].sh  # MODEL: repsurf_umb, pointnet2, pointtransformer

Acknowledgment

We thank the Point Transformer Implementation for the library pointops.

License

RepSurf is under the Apache-2.0 license. Please contact the primary author Haoxi Ran (ranhaoxi@gmail.com) for commercial use.