第一步,克隆项目

git clone https://github.com/QingyongHu/RandLA-Net

第二步,创建Python虚拟环境

虽然文档给的要求是Python3.5,但是我实际踩坑一遍发现是要Python3.6才好使。
Miniconda3的部署方法可以看我之前的文章。

conda create -n randlanet python=3.6

第三步,安装依赖

由于项目给的helper_requirements.txt依赖,我实际安装后还是缺东西,所以建议保存以下文本为requirements.txt安装。tensorflow的版本不对会导致项目无法运行,我根据项目发布的时间和tensorflow不同版本发布的时间进行推断,并且进行了数次不同版本的测试,确定1.15.0版本的tensorflow是可以使用的版本。

tensorflow-gpu==1.15.0
tensorflow==1.15.0
numpy==1.16.1
h5py==2.10.0
cython==0.29.15
open3d-python==0.3.0
pandas==0.25.3
scikit-learn==0.21.3
scipy==1.4.1
PyYAML==5.4

然后在pip指导文件安装依赖。

pip install -r requirements.txt

安装好依赖后,根据项目的需要还要编译一个文件,在项目文件夹内执行以下命令编译:

sh compile_op.sh

第四步,放置训练数据集

这里要注意!项目说明文档说数据集放在/data/S3DIS,这个路径是根目录,不是在项目文件夹创建data/S3DIS这个目录!同时不要忘了改一下文件夹的权限,以下命令要切换到root:

su
mkdir /data
mkdir /data/S3DIS
chmod -R 777 /data/*

后面我发现其实可以用ln命令创建软连接:

cd /data
ln -s /run/media/chocola/6T-DATA/Projects/RandLA-Net/data/S3DIS/ S3DIS

这个坑一开始我也掉进去了,想不明白为什么非要放在/data文件夹,取项目所在文件夹再创建目录不好吗,非要塞到/根分区里面,无语。
可以拿他给的实例数据进行测试训练,由于根据项目给的实例数据需要填表才能获取下载连接,我在这里直接给出下载的连接:https://cvg-data.inf.ethz.ch/s3dis/
下好他的数据集并且放到/data/S3DIS这个目录下就可以开始后面的各项工作了。
scr.png