capture_depth_float_buffer()函数用于获取深度浮点缓冲区。
open3d.visualization.VisualizerWithEditing.capture_depth_float_buffer()
无参数。
返回值为NumPy数组,数组类型为float32,大小为depth图像的宽高。深度值表示相机到表面的距离。
import open3d as o3d
import numpy as np
# 创建点云
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(np.random.rand(500, 3))
# 创建视图窗口
vis = o3d.visualization.VisualizerWithEditing()
vis.create_window()
# 添加点云到窗口
vis.add_geometry(pcd)
# 获取深度浮点缓冲区
depth_float = vis.capture_depth_float_buffer()
# 显示深度图像
o3d.visualization.draw_geometries([o3d.geometry.Image(depth_float)])
# 关闭窗口
vis.destroy_window()