作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Open3D 在 Python 中可视化点云。本质上,我想做的是以编程方式向点云添加另一个点,然后实时渲染它。
这是我到目前为止。我找不到任何解决方案。
在下面的代码中,我展示了一种可能的解决方案,但它无效。一旦第一个窗口关闭,就会添加点并打开一个新窗口。这不是我想要的。我希望它动态显示新点,而无需再次关闭和打开。以及创建一个新变量的事实,我认为在处理越来越大的数据集时可能会出现问题
import open3d as o3d
import numpy as np
#Create two random points
randomPoints = np.random.rand(2, 3)
pointSet = o3d.geometry.PointCloud()
pointSet.points = o3d.utility.Vector3dVector(randomPoints)
#Visualize the two random points
o3d.visualization.draw_geometries([pointSet])
#Here I want to add more points to the pointSet
#This solution does not work effective
#Create another random set
p1 = np.random.rand(3, 3)
p2 = np.concatenate((pointSet.points, p1), axis=0)
pointSet2 = o3d.geometry.PointCloud()
pointSet2.points = o3d.utility.Vector3dVector(p2)
o3d.visualization.draw_geometries([pointSet2])
有没有可能的解决方案?
最佳答案
在下面的页面中,它解释了如何在不关闭窗口的情况下更新可视化工具。
http://www.open3d.org/docs/release/tutorial/visualization/non_blocking_visualization.html
代码可能如下所示:
//设置一个新的空pcd
//初始化可视化器
//for 循环:
//add new points into pcd
//visualizer update as sample code
//完毕
关于python - 实时向点云添加新点 - Open3D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65774814/
我是一名优秀的程序员,十分优秀!