将 4d numpy 数组保存为 pcd(点云)文件

Fou*_*lux 3 python opencv numpy open3d

如何将 4d numpy 数组转换为 pcd 文件?Open3d 似乎可以让您保存 3 个维度,但不能保存第四个维度(强度)。

小智 5

应该可以使用open3d.t命名空间:

import open3d as o3d
import numpy as np

xyzi = np.random.rand(100, 4)

xyz = xyzi[:,0:3]
i = [[i] for i in xyzi[:,3]]

pcd = o3d.t.geometry.PointCloud()

pcd.point["positions"] = o3d.core.Tensor(xyz)
pcd.point["intensities"] = o3d.core.Tensor(i)

o3d.t.io.write_point_cloud("pointcloud.pcd", pcd)
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅此线程