Below are instructions on how to setup completion3d training in pytorch. New networks can be added following the template in pytorch/models/PointNetFCAE.py and adding corresponding import statements in pytorch/main.py and pytorch/utils/train_utils.py Feel free to submit new model additions to the benchmark as a pull request.
git clone [email protected]:lynetcha/completion3d.git
Instructions below assume CUDA 9.0 is installed in /usr/local/cuda
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
cd completion3d/pytorch
PYTHON_BIN=/path/to/python3.6
virtualenv -p $PYTHON_BIN comp3d_pth_venv
source comp3d_pth_venv/bin/activate
pip install -r ../requirements/pytorch-requirements.txt
Build Chamfer module (Grouiex et al.)
cd utils/chamfer
python setup.py install
cd ../../
Build EMD module (Xia et al. - KNOWN ISSUES FOR SETUPS OTHER THAN Python 2.7 + Pytorch 0.1.11 - Feel free to submit a pull request with fixes for other setups)
cd utils/emd/src
chmod +x make.sh
./make.sh
cd ../
python build.py
cd ../../../
cd pytorch
Link data (see data-setup.md)
ln -s /path/to/data data
Modify parameters in run.sh
chmod +x run.sh
./run.sh
To submit to the completion3d benchmark, set TRAIN=0
and BENCHMARK=1
in run.sh
and run the script with parameters to evaluate. A submission.zip
file will be generated by the script in the experiment output folder.