open3d,读取stl/ply/obj/off/gltf/glb三维模型,并转换成点云,保存

1.三维模型获取

在这里插入图片描述

2.导入open3d

import open3d as o3d

3.open3d模型读取与可视化

#模型路径,支持后缀:stl/ply/obj/off/gltf/glb
path_obj = 'Rmk3.obj'
#读入网格模型
mesh = o3d.io.read_triangle_mesh(path_obj)
#计算网格顶点
mesh.compute_vertex_normals()
#可视化网格模型
o3d.visualization.draw_geometries([mesh])
  • 效果:
    在这里插入图片描述

4.均匀采样生成点云并可视化

#均匀采样5000个点
pcd = mesh.sample_points_uniformly(number_of_points=5000)
#可视化点云模型
o3d.visualization.draw_geometries([pcd])
  • 效果:
    在这里插入图片描述

5.泊松采样并可视化

  • 均匀采样会在表面出现采样点聚集的现象,open3d实现了一种基于poisson_disk方法的采样,能实现表面的均匀采样
  • 原理:参数umber_of_points是最终采样的点数量,实际会先采样init_factor乘umber_of_points数量的点,然后去除多余的点
  • 代码实现:
#poisson_disk方法采样5000个点
pcd = mesh.sample_points_poisson_disk(number_of_points=5000, init_factor=10)
#可视化点云模型
o3d.visualization.draw_geometries([pcd])
  • 效果:可以看出边缘点分布更加均匀,但是耗时更长
    在这里插入图片描述

6.保存点云文件

#保存
o3d.io.write_point_cloud("Rmk3.pcd", pcd)
  • 10
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
1. Ply格式的mesh Ply格式是一种通用的3D模型文件格式,可以存储点云、网格和曲面等各种类型的3D数据。Ply文件通常包含顶点信息、面信息、法线信息、纹理坐标信息和颜色信息等。Ply文件可以通过Ply解析器来加载和处理。 2. STL格式的mesh STL格式是一种简单的3D模型文件格式,通常用于存储三角形网格数据。STL文件包含了每个三角形的三个顶点坐标和法线向量信息。STL文件可以通过STL解析器来加载和处理。 3. OBJ格式的mesh OBJ格式是一种通用的3D模型文件格式,它可以存储多边形网格、曲面和点云等各种类型的3D数据。OBJ文件通常包含顶点信息、面信息、纹理坐标信息和法线信息等。OBJ文件可以通过OBJ解析器来加载和处理。 4. OFF格式的mesh OFF格式是一种简单的3D模型文件格式,通常用于存储多边形网格数据。OFF文件包含了每个顶点的坐标信息和每个面的顶点索引信息。OFF文件可以通过OFF解析器来加载和处理。 5. glTF格式的mesh glTF格式是一种新兴的3D模型文件格式,它使用JSON作为数据格式,可以存储多种类型的3D数据,例如网格、材质、动画和场景等。glTF文件可以通过glTF解析器来加载和处理。 6. glb格式的mesh glb格式是一种二进制的glTF格式,它将glTF文件打包成一个二进制文件,可以更快地加载和渲染3D模型glb文件可以通过glTF解析器来加载和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿航626

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值