shellnet安装记录

 github地址: https://github.com/hkust-vgd/shellnet

Installation

The code is based on PointCNN. Please install TensorFlow, and follow the instruction in PointNet++ to compile the customized TF operators in the tf_ops folder.

The code has been tested with Python 3.6, TensorFlow 1.13.2, CUDA 10.0 and cuDNN 7.3 on Ubuntu 14.04.

对于数据集Semantic3D

You can download our preprocessed hdf5 files and labels here.

下载下来处理好的semantic数据集的文件后,按照setting/seg_semantic3d.py文件中的文件结构(参照每个.txt文件中的目录结构)将下载下来的文件打包好备用:

filelist = '../data/semantic3d/downsampled/train_data_files.txt'
filelist_val = '../data/semantic3d/downsampled/val_data_files.txt'
filelist_test = '../data/semantic3d/raw/test_reduced_files.txt'

Then:

python3 train_val_seg.py -x seg_semantic3d
python3 test_seg_semantic3d.py -l log/seg/shellconv_seg_semantic3d_xxxx/ckpts/epoch-xxx
cd evaluation
python3 semantic3d_merge.py -d  -v 

注: If you prefer to process the data by yourself, here are the steps we used. In general, this data preprocessing of this dataset is more involved. First, please download the original Semantic3D dataset. We then downsample the data using this script. Finally, we follow PointCNN's script to split the data into training and validation set, and prepare the .h5 files.

 

1. tensorflow.python.framework.errors_impl.NotFoundError:undefined symbol: _ZN10tensorflow12OpDefBuilder4AttrESs

(此方法对于pointnet++同样适用!!!)

在编译tf_op之后生成.so文件,但是在运行python3 train_val_seg.py -x seg_semantic3d时报上述错误

解决办法: https://github.com/charlesq34/pointnet2/issues/48

修改sampling/.sh文件,见红色字体:

g++ -std=c++11 tf_sampling.cpp tf_sampling_g.cu.o -o tf_sampling_so.so -shared -fPIC -I ${TF_ROOT}/include -I ${CUDA_ROOT}/include -I ${TF_ROOT}/include/external/nsync/public -lcudart -L ${CUDA_ROOT}/lib64/ -L ${TF_ROOT} -ltensorflow_framework -O2 #-D_GLIBCXX_USE_CXX11_ABI=0

This is the script i used for compiling. Hope it helps.

In general if you compiled Tensorflow from source with gcc Version >4 you dont need the option -D_GLIBCXX_USE_CXX11_ABI=0.

 

你可能感兴趣的:(深度学习)