配置要求:
ubuntu18.04(ubuntu20建议用docker)
安装miniconda
显卡驱动,cuda,cudnn安装完成
cuda版本不限,cuda11.1也可以
创建虚拟环境
conda create -n 环境名称 python=3.6
conda activate 环境名称
安装依赖
按照github说明操作
pip3 install Cython numpy --user
然后安装pytorch
pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html
然后安装其他依赖
pip3 install -r requirements.txt
sudo apt install python3-tk
会提示pprint找不到,去requirements.txt把他删掉即可
安装python-pcl
首先安装pcl,ubuntu18直接运行命令即可
ubuntu20自动安装pcl1.10,版本太高,所以需要自行编译pcl1.8,太繁琐,建议用docker
sudo apt install libpcl-dev libvtk6-dev
git clone https://github.com/Tuebel/python-pcl
cd python-pcl/
python3 setup.py install
安装pointnet2
git clone https://github.com/erikwijmans/Pointnet2_PyTorch
cd Pointnet2_PyTorch
pip3 install -r requirements.txt
最终编译
回到PVN3D-pytorch-1.5文件夹目录
python3 setup.py build_ext
会提示一个错误信息,百度即可解决,再次运行就会开始编译,等待几分钟即可
之后按照github的流程,链接数据集,下载预训练文件,开始测试
由于我没找到百度云链接,所以自己下载了一份,需要自取Linemod数据集下载链接(付费)
docker
最后,给配置依旧不成功的提供一个docker
pvn3d_complete
需要注意的是,依旧需要根据github链接操作一遍,因为有些库文件是编译产生的。
下载docker之后,启动docker命令为
docker run -it --name 容器名称 -v /home/yuenlin/Documents/PVN3D-pytorch-1.5/:/project -v /media/yuenlin/tinyel/Linemod_pre/Linemod_preprocessed:/project/pvn3d/datasets/linemod/Linemod_preprocessed -p 8080:22 --shm-size 8G --gpus all yel1998/pvn3d_complete /bin/bash
其中-v参数后面是挂载到容器中的地址,第一个是项目文件,第二个是数据集链接