我需要用Python来读取、操作和编写复合文件。铺层是一种存储3D对象的格式。通过简单的搜索,我找到了两个相关的库,PyMesh和叠层文件。有没有人对这两种方法有过任何的经验,有没有人有任何建议?plyfile似乎已经休眠了一年了,据吉特布判断。
我知道这个问题激发了基于意见的答案,但我不知道还能在哪里问这个问题。
发布于 2016-04-28 18:34:27
在处理点云时,我成功地使用了plyfile。
的确,从很长一段时间以来,poject并没有提出任何活动,但它符合它的目的。
也不像解析复合文件这样的事实,它允许您通过添加新特性来重新创建自己。
另一方面,除了解析层文件之外,PyMesh还提供了许多其他特性。
所以也许问题是:
您是只想“读取、操作和写入复合文件”,还是要寻找一个提供更多额外功能的库?
我之所以选择plyfile,是因为我只需复制一个源文件就可以将它合并到我的项目中。另外,我对PyMesh提供的任何其他特性都不感兴趣。
更新
我结束了编写自己的函数来读取/写入复合文件(支持ascii和二进制),因为我发现plyfile源代码有点混乱。
如果有人感兴趣,这里有一个指向文件的链接:读者/作者
发布于 2020-01-28 14:59:14
截至2020年1月。
无,请使用open3d。这是最简单的,可以直接将.ply文件读入numpy。
import numpy as np
import open3d as o3d
# Read .ply file
input_file = "input.ply"
pcd = o3d.io.read_point_cloud(input_file) # Read the point cloud
# Visualize the point cloud within open3d
o3d.visualization.draw_geometries([pcd])
# Convert open3d format to numpy array
# Here, you have the point cloud in numpy format.
point_cloud_in_numpy = np.asarray(pcd.points) 参考文献:
发布于 2019-10-19 12:13:38
我刚刚更新了中雄,以支持其他20种格式。安装用
pip install meshio并在命令行中使用
meshio convert in.ply out.vtk或者从Python内部
import meshio
mesh = meshio.read("in.ply")
# mesh.points, mesh.cells, ...https://stackoverflow.com/questions/36920562
复制相似问题