自定义对象的3D对象检测;数据集创建

时间:2020-05-20 16:10:56

标签: 3d object-detection tensorflow-datasets point-cloud-library point-clouds

如何创建用于3D对象检测的自定义数据集,我想使用“ Stanford3dDataset”或“ Scannet”作为基线并将我感兴趣的对象添加到数据集中。我具有从3D摄像机[Realsense]捕获的PCD文件,并且对于3D对象检测,我使用的是Pointnet模型。

我看到数据集以文本文件作为输入,而不是PCD或PLY格式,如何将PLY / PCD文件转换为文本文件。

2 个答案:

答案 0 :(得分:0)

您可以在github上的此存储库中读取层文件https://github.com/HuguesTHOMAS/KPConv/blob/master/utils/ply.py,然后从层文件中读取内容,只需使用numpy.savetxt()将层文件转换为文本文件即可。

答案 1 :(得分:0)

将open3d导入为o3d

将numpy导入为np

加载保存的点云

pcd_load = o3d.io.read_point_cloud(“ try.ply”)

将PointCloud转换为numpy数组

xyz_load = np.asarray(pcd_load.points)

将点保存到文本文件中

np.savetxt('test.txt',xyz_load)`

更多信息可在链接中找到-NumPy <-> open3d.PointCloud