diff --git a/cv/point_cloud/Point-BERT/pytorch/README.md b/cv/point_cloud/Point-BERT/pytorch/README.md index d37c9f9c85662d14107aed550c56ac57f9625cf8..4db8ccb5fad88d776209741953dbe9f714d36bb8 100644 --- a/cv/point_cloud/Point-BERT/pytorch/README.md +++ b/cv/point_cloud/Point-BERT/pytorch/README.md @@ -3,60 +3,74 @@ Point-BERT is a new paradigm for learning Transformers to generalize the concept ## Step 1: Installing packages +> Warning: Now only support Ubuntu OS. If your OS is centOS, you may need to compile open3d from source. + * system ```shell -$ apt update -$ apt install libgl1-mesa-glx +apt update +apt install libgl1-mesa-glx ``` * python -``` -$ pip3 install argparse easydict h5py matplotlib numpy open3d==0.10 opencv-python pyyaml scipy tensorboardX timm==0.4.5 tqdm transforms3d termcolor scikit-learn==0.24.1 Ninja --default-timeout=1000 + +```shell +pip3 install argparse easydict h5py matplotlib numpy open3d==0.10 opencv-python pyyaml scipy tensorboardX timm==0.4.5 tqdm transforms3d termcolor scikit-learn==0.24.1 Ninja --default-timeout=1000 ``` * Chamfer Distance -``` -$ cd /path/to/Point-BERT/pytorch -$ bash install.sh + +```shell +bash install.sh ``` * PointNet++ -``` -$ cd ./Pointnet2_PyTorch -$ pip3 install pointnet2_ops_lib/. -$ cd - +```shell +cd ./Pointnet2_PyTorch +pip3 install pointnet2_ops_lib/. +cd - ``` * GPU kNN -``` -$ pip3 install --upgrade https://github.com/unlimblue/KNN_CUDA/releases/download/0.2/KNN_CUDA-0.2-py3-none-any.whl +```shell +pip3 install --upgrade https://github.com/unlimblue/KNN_CUDA/releases/download/0.2/KNN_CUDA-0.2-py3-none-any.whl ``` ## Step 2: Preparing datasets -Please reference [DATASET.md](./DATASET.md) to prepare `ShapeNet55` and `processed ModelNet`. - +Please refer to [DATASET.md](./DATASET.md) for preparing `ShapeNet55` and `processed ModelNet`. +The dataset dircectory tree would be like: +```shell +data/ +├── ModelNet +│   └── modelnet40_normal_resampled +│      ├── modelnet40_test_8192pts_fps.dat +│      └── modelnet40_train_8192pts_fps.dat +├── ScanObjectNN_shape_names.txt +├── ShapeNet55-34 +│   ├── ShapeNet-55 +│   │   ├── test.txt +│   │   └── train.txt +│   └── shapenet_pc +└── shapenet_synset_dict.json +``` ## Step 3: Training * dVAE train -``` -$ cd /path/to/Point-BERT -$ bash scripts/train.sh 0 --config cfgs/ShapeNet55_models/dvae.yaml --exp_name dVAE +```shell +bash scripts/train.sh 0 --config cfgs/ShapeNet55_models/dvae.yaml --exp_name dVAE ``` * Point-BERT pre-training When dVAE has finished training, you should be edit `cfgs/Mixup_models/Point-BERT.yaml`, and add the path of dvae_config-ckpt. -``` -$ cd /path/to/Point-BERT -$ bash ./scripts/dist_train_BERT.sh 12345 --config cfgs/Mixup_models/Point-BERT.yaml --exp_name pointBERT_pretrain --val_freq 2 +```shell +bash ./scripts/dist_train_BERT.sh 12345 --config cfgs/Mixup_models/Point-BERT.yaml --exp_name pointBERT_pretrain --val_freq 2 ``` -> Warning: You may need to compile open3d, when your os is centos. ## Reference