首页 > 解决方案 > 如何将 .pcd 文件中的所有点导入 2d python 数组

问题描述

如何从名为 edge_cloud.pcd 的文件中导入所有 3d 点并将它们放入数组中?我希望数组采用格式

array=[[xvalue1,yvalue1,zvalue1],[xvalue2,yvalue2,zvalue2]] 

标签: python-3.xpoint-cloud-library

解决方案


使用 Python 3.7.3、numPy 1.16.2 和 open3d 0.7.0.0 测试:

import numpy as np 
import open3d as o3d

pcd = o3d.io.read_point_cloud("C:\\Users\\Username\\Source\\pointcloud\\bunny.pcd")
out_arr = np.asarray(pcd.points)  
print ("output array from input list : ", out_arr)  

输出:

output array from input list :  
[[ 0.0054216  0.11349    0.040749 ]
 [-0.0017447  0.11425    0.041273 ]
 [-0.010661   0.11338    0.040916 ]
 ...
 [-0.064992   0.17802   -0.054645 ]
 [-0.069935   0.17983   -0.051988 ]
 [-0.07793    0.17516   -0.0444   ]]

输入 PCD 文件:

https://github.com/PointCloudLibrary/pcl/blob/master/test/bunny.pcd


推荐阅读