frustum-pointnets复现过程+遇到的问题+解决方法
系统Ubuntu16.04
1.下载KITTI数据集:
并按照README中的格式解压并重组数据集:
2.运行环境配置:
在复现KPConv的环境(‘python3’)下继续,首先安装一些包,已经安装的包不再安装(可KPConv复现链接中查看):
conda install pillow
pip install opencv-python
注意:若想在纯净的python环境下运行此代码(即:不使用conda,在系统python环境下),首先选择使用系统下的python2还是python3,然后pip安装需要的依赖项。若使用系统下的python3,则需要将frustum-pointnets/scripts/
下的所有.sh文件中的python
改为python3
3.数据准备
在对应目录终端下,运行sh scripts/command_prep_data.sh
训练v1模型(command_train_v1.sh)
4.修改部分代码
(1)frustum-pointnets/train/provider.py
import cPickle as pickle ----> import _pickle as pickle
将self.id_list = pickle.load(fp)
等涉及pickle.load
的函数,修改为
self.id_list = pickle.load(fp, encoding='latin1') # or “ encoding='iso-8859-1' ”
(2)frustum-pointnets/kitti/kitti_util.py
将cv2.CV_AA
修改为cv2.LINE_AA
(因为opencv-python==4.1.0.25)
(3)frustum-pointnets/kitti/prepare_data.py
import cPickle as pickle ----&