基于open3D点云处理—点云可视化(调整窗口背景颜色与点的大小)

因为需要用open3D对点云进行渲染,发现网上唯一的博客介绍自定义点云渲染大小的博客需要订阅专栏,就看官方文档自己写了个,有用的话点个赞吧。

pcd = o3d.geometry.PointCloud()#传入3d点云
pcd.points = o3d.utility.Vector3dVector(point3D)	#point3D二维numpy矩阵,将其转换为open3d点云格式

vis = o3d.visualization.Visualizer()
vis
在使用 Open3D 进行点云可视化时,实现放大功能可以通过多种方式完成。以下是一些常见的方法: ### 1. 放大点云的坐标 可以通过直接修改点云的坐标数据来实现放大效果。例如,可以对点云的某一轴(如 Z 轴)进行放大,以便更清晰地观察其结构特征。 ```python import open3d as o3d import numpy as np # 读取点云文件 pcd = o3d.io.read_point_cloud("aaa.pcd") # 获取点云的坐标数据 point = np.asarray(pcd.points) # 对 Z 坐标进行放大 for i in point: i[2] = i[2] * 10 # Z 坐标放大 10 倍 # 可视化放大的点云 vis = o3d.visualization.Visualizer() vis.create_window(window_name='可视化', width=800, height=600) opt = vis.get_render_option() opt.background_color = np.asarray([0, 0, 0]) # 设置背景色 vis.add_geometry(pcd) # 加载点云可视化窗口 vis.run() # 激活显示窗口 vis.destroy_window() # 销毁窗口 ``` ### 2. 使用 `draw_geometries` 函数调整视角 Open3D 提供了内置的交互式可视化工具 `draw_geometries`,可以通过鼠标或触控板从不同角度查看几何图形,并通过参数调整缩放级别。 ```python import open3d as o3d # 读取点云文件 pcd = o3d.io.read_point_cloud('./fragment.ply') # 可视化点云调整视角和缩放级别 o3d.visualization.draw_geometries([pcd], zoom=0.3412, front=[0.4257, -0.2125, -0.8795], lookat=[2.6172, 2.0475, 1.532], up=[-0.0694, -0.9768, 0.2024]) ``` ### 3. 创建网格模型并放大 如果需要进一步处理点云数据,例如生成三角网格模型,则可以使用 `create_from_point_cloud_alpha_shape` 方法创建网格模型,并对其进行放大操作。 ```python import open3d as o3d # 读取点云文件 pcd = o3d.io.read_point_cloud(r"/Users/air/Desktop/bunny10k.ply") # 创建三角网格模型 trimesh = o3d.geometry.TriangleMesh.create_from_point_cloud_alpha_shape(pcd, 0.03) # 放大网格模型 trimesh.scale(10, center=trimesh.get_center()) # 将网格模型放大 10 倍 # 可视化网格模型 o3d.visualization.draw_geometries([trimesh]) ``` ### 相关问题
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值