python - 如何从存储为 numpy 数组的顶点创建点云文件(.ply)?
问题描述
我有一些顶点的坐标存储为 NumPy 数组。
xyz_np:
array([[ 7, 53, 31],
[ 61, 130, 116],
[ 89, 65, 120],
...,
[ 28, 72, 88],
[ 77, 65, 82],
[117, 90, 72]], dtype=int32)
我想将这些顶点保存为点云文件(例如 .ply)并在 Blender 中可视化。
我没有人脸信息。
解决方案
您可以使用Open3D来执行此操作。
# Pass numpy array to Open3D.o3d.geometry.PointCloud and visualize
xyz = np.random.rand(100, 3)
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(xyz)
o3d.io.write_point_cloud("./data.ply", pcd)
您还可以使用 Open3D 可视化点云。
o3d.visualization.draw_geometries([pcd])
推荐阅读
- opengl - 如何在 spritekit 中构建一个简单的 2d 闪光爆炸
- google-cloud-platform - 谷歌云平台基于内存使用的组实例自动伸缩
- swift - 如何使 Objective-C Swift 包成为 clang 模块,以便`#import "FrameworkName/Header.h"` 工作
- bootstrap-5 - 是否可以在 md 和 sm 设备上以不同方式设置引导轮播项目高度
- security - 如何通过 oauth2 身份验证进行加密?
- powershell - 修复脚本以允许扫描每一行的所有字段以查找该字段是否包含目标文件夹名称
- vim - 在VIM中用#居中和填充多个空间
- javascript - Laravel 将所有用户的年龄更新为 x
- classification - 如何加载图像数据集并计算每个类中的图像数量?
- angular - 以角度获取形式错误在标签旁边显示复选框