【发布时间】:2019-05-19 19:29:11
【问题描述】:
我有一个带有一些反对意见的点云,我生成了一个长方体,并希望检测长方体与点云中的对象之间的交集/碰撞。
目前我正在使用 Open3D 并从立体视觉相机读取点云(xyzrgb,.ply)并生成 3D 几何(闭合三角形网格)。
如何检测三角形网格与点云中的任何点之间的交点? 我认为最简单的方法是检查点云的每个点是否位于网格内,但我该怎么做呢?
from open3d import *
pcd = read_point_cloud("out.ply")
draw_geometries([pcd])
# print("Let\'s draw some primitives")
mesh_box = create_mesh_box(width=1.0, height=1.0, depth=1.0)
mesh_box.paint_uniform_color([0.9, 0.4, 0.1])
mesh_frame = create_mesh_coordinate_frame(size=0.6, origin=[0, 0, 0])
draw_geometries([pcd, mesh_box, mesh_frame])
TM = np.eye(4, dtype=int)
TM[0, 3] = 10
TM[1, 3] = 10
TM[2, 3] = 10
open3d.geometry.Geometry3D.transform(mesh_box, TM)
draw_geometries([pcd, mesh_box, mesh_frame])
【问题讨论】:
-
请参阅How to Ask。就目前而言,您的问题过于宽泛且超出主题。
标签: python collision-detection intersection point-clouds