利用RandLA-Net实现室外点云数据语义分割,参考了https://github.com/QingyongHu/RandLA-Net
本项目是在Linux环境下运行
1.创建虚拟环境
conda create -n randlanet python=3.6
conda activate randlanet
2.运行以下命令,在conda中安装Tf、CUDA和其他必要Python包
pip install numpy==1.19.5 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install h5py~=3.1.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install cython==0.29.15 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install open3d-python==0.3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install pandas==1.1.5 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install scipy==1.5.4 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install scikit-learn==0.21.3 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install PyYAML==6.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
pip install tensorflow-gpu==1.15 -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=120
conda install cudatoolkit=11.2 cudnn=8.1 -c=conda-forge
3.进入RandLA-Net目录
cd utils/nearest_neighbors/
python setup.py install --home="."
cd ../../
cd utils/cpp_wrappers/cpp_subsampling
python setup.py build_ext --inplace
本部分参考了https://zhuanlan.zhihu.com/p/670690151也有部分改动
把测试训练数据存在/data/semantic/original_data/目录下,按照以下格式:

其中有.labels文件为训练数据,没有.labels文件为测试数据
1.数据预处理
python utils/data_prepare_semantic3d.py
2.模型训练
python main_Semantic3D.py --mode train --gpu 0
3.模型测试
python main_Semantic3D.py --mode test --gpu 0
使用CloudCompare对点云数据进行标注,分为以下6类:

本次项目并没有使用颜色信息




