组成
1.PointNet classification network分类网络
part segmentation network
数据集
1.point clouds sampled from 3D shapes
2.ShapeNetPart dataset.
结构
其主要分成以下三部分:
数据处理
model构建
结果选择
数据处理
将点云处理成程序可用的格式,具体实现在 provider.py 中,主要包含了数据下载、预处理(shuffle->rotate->jitter)、格式转换(hdf5->txt)
shuffle
defshuffle_data(data, labels):"""Shuffle data and labels.
Input:
data: B,N,... numpy array
label: B,... numpy array
Return:
shuffled data, label and shuffle indices"""idx= np.arange(len(labels))#返回一个列表
#print('idx=',idx)#idx= [ 0 1 2 ... 2045 2046 2047]
np.random.shuffle(idx)#把idx进行shuffle
#print('idx=', idx)
return data[idx, ...], labels[idx], idx
rotate旋转处理
defrotate_point_cloud(ba