The code is tested with Python == 3.8, Pytorch == 1.13.1, CUDA == 11.6, mmengine == 0.10.3, mmdet3d == 1.4.0, mmcv == 2.0.0, mmdet == 3.2.0 and MinkowskiEngine == 0.5.4. We recommend you to use Anaconda to make sure that all dependencies are installed correctly.
Step 1: Download and install Miniconda from the official website.
Step 2: Create a new conda environment and activate it:
conda create -n ESAM python=3.8
conda activate ESAM
Step 3: Install PyTorch following official instructions, e.g.
conda install pytorch torchvision -c pytorch
Step 4: Follow mmdetection3d to install mmcv, mmdet3d and mmdet.
Step 5: Install MinkowskiEngine:
conda install openblas-devel -c anaconda
pip install -U git+https://github.com/NVIDIA/MinkowskiEngine -v --no-deps --install-option="--blas_include_dirs=/opt/conda/include" --install-option="--blas=openblas"
Step 6: Install SAM & FastSAM:
-
Please follow here for installation of SAM. Then download the checkpoint for Vit-H SAM model and put it in the folder 'data'.
-
Please follow here for installation of FastSAM. Then download the checkpoint for FastSAM and put it in the folder 'data'.
Step 7: Download backbone checkpoint:
We follow Oneformer3D to initialize the backbone from Mask3D checkpoint. It should be downloaded and put to work_dirs/tmp
before training.
Step 8: Follow SAM3D to install pointops.
Step 9: Get segmentator
repository:
Please refer to segmentator to get mesh segmentator. You should clone the repository in the folder 'data', and it will be imported in 'batch_load_scannet_data.py' for generating mesh segmentation results.
Step 10: Install other dependencies:
pip install -r requirements.txt