将点云从 .asc 格式转换为 .ply 文件并在此过程中计算法线

问题描述 投票:0回答:0

我有很多点云数据保存在扩展名为.asc的文件中。我需要一种方法来自动转换为 PLY 并计算它们的法线。

我打算在 Open3D 中使用云,并使用 o3d.t.io.read_point_cloud() 函数加载它们,以获得张量点云数据类型。我找不到直接将 .asc 文件加载到 Open3D 中的方法。

.asc 文件数据如下所示:

1074.9755859,5.6643524,-305.2966309,59.0000000,1.0000000

1076.0521240,6.5306702,-305.5505371,68.0000000,1.0000000

1077.0552979,7.4164429,-305.5427246,65.0000000,1.0000000

我手动转换了一些云并尝试使用 Open3D 方法计算法线,但我没有得到好的结果,事实上所有轴(x、y、z)和所有点的所有值最终都是相同的,这变得毫无用处。我假设是因为点云是一个平面,但我不确定这是否是原因。

我尝试使用 Cloud Compare 命令行模式:

cloudcompare.CloudCompare -O "path/to/ascii/file" -OCTREE_NORMALS 10 -C_EXPORT_FMT PLY -SAVE_CLOUDS

但这仅适用于一个文件,问题在于它需要我按下 Cloud Compare 弹出窗口上的按钮才能完成该过程。我不确定如何在没有我干预的情况下一个接一个地适应多次转换。

我安装了 Cloud Compare,使用的是 snap 包。

使用 Cloud Compare 或任何其他方法的解决方案将不胜感激!

point-clouds file-conversion open3d ply-file-format cloudcompare
© www.soinside.com 2019 - 2024. All rights reserved.