Open3D在点云上画直线

2024-02-20 12:52
文章标签 直线 open3d 点云上

本文主要是介绍Open3D在点云上画直线,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

想在点云上做一些标识,发现画直线比较方便,下面是我画了一个三角形。可以根据自己的情况改变坐标画出不同的形状 

pcd.translate(np.array([0,0,20]))
points = np.asarray(pcd.points)
centroid = points.mean(axis=0)
x1 = length1[1]
y1 = centroid[1]
z1 = centroid[2]+2x2 = length1[2]
y2 = centroid[1]
z2 = centroid[2]+2logger.debug(f"断面坐标  x1= {x1} y1= {y1} z1= {z1}  X2= {x2} y2= {y2} z2= {z2}   " )
#triangle_points = np.array([[2,0,0,],[0,2,0],[0,2,4]],dtype=np.float32)
triangle_points = np.array([[x1,y1,z1],[x2,y2,z2],[0,2,140]],dtype=np.float32)
lines =[[0,1],[1,2],[2,0]]
colors = np.array([[np.random.uniform(), np.random.uniform(), np.random.uniform()] for j in range(len(lines))])
print(colors)
line_set = o3d.geometry.LineSet()
line_set.lines = o3d.utility.Vector2iVector(lines) 
line_set.colors = o3d.utility.Vector3dVector(colors)
line_set.points = o3d.utility.Vector3dVector(triangle_points)if(isShowForm):o3d.visualization.draw_geometries([line_set],window_name="zhixian") 

下图是我在点云上画出来的三角形直线的效果 

这篇关于Open3D在点云上画直线的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/728275

相关文章

Open3D 基于法线的双边滤波

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 输入参数: 输出参数: 参数影响: 2.2完整代码 三、实现效果 3.1原始点云 3.2滤波后点云 Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述         基于法线的双边

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p

求空间直线与平面的交点

若直线不与平面平行,将存在交点。如下图所示,已知直线L过点m(m1,m2,m3),且方向向量为VL(v1,v2,v3),平面P过点n(n1,n2,n3),且法线方向向量为VP(vp1,vp2,vp3),求得直线与平面的交点O的坐标(x,y,z): 将直线方程写成参数方程形式,即有: x = m1+ v1 * t y = m2+ v2 * t

n条直线最多能划分出多少个平面?

N条直线,两两相交,其交点各不不同,则产生的交点数目为N个数中取2个数的组合; 同时,也只有这种情况下(两两相交,也交点不同),分割的平面数最多, 数目为: 2 + (N-1)(N+2)/2.  这里求最少平面数没有意义,因为最少平面数就是N+1, 即N条直线两两平行的时候,分割的平面最少。 举例: 1条直线分割平面数最多为2; a1 = 2 2条直线分割平面数最多为4;

Open3D 体素随机下采样

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 三、实现效果 3.1原始点云 3.2体素下采样后点云 Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述         体素随机下采样是一种常用的点云简化方法,通过将点云划分为立方体体素网格,并从每个体素中随机

Open3D mesh 模型精细化处理--中点剖分

目录 一、概述 1.1原理 1.2实现步骤 二、代码实现 2.1关键函数 输入参数 输出参数 三、实现效果 3.1原始mesh 3.2精细化mesh Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述         在三维模型处理过程中,精细化处理(subdivision)是一个

Open3D 点云添加均匀分布的随机噪声

目录 一、概述 1.1实现步骤 1.2应用场景 二、代码实现 三、实现效果 3.1原始点云 3.2添加噪声后点云 Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述         在 Open3D 中,可以通过向点云的每个点添加随机噪声来模拟实际的测量误差或环境噪声。均匀分布的随机噪声是

Open3D mesh 拉普拉斯laplacian滤波

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数  参数详解 返回值 2.2完整代码 三、实现效果 3.1加入噪点的mesh 3.2迭代10次 3.3迭代100次 Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述         拉普

Open3D mesh Taubin滤波

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 参数详解 返回值 2.2完整代码 三、实现效果 3.1加入噪声的mesh 3.2Taubin迭代10次 3.3Taubin迭代100次 Open3D点云算法汇总及实战案例汇总的目录地址: Open3D点云算法与点云深度学习案例汇总(长期更新)-CSDN博客 一、概述

VS2015+Cmake编译open3d

问题: 下载了open3d源码以后按照官方指导使用CMAKE+VS2015进行编译,但是configure过程中出现 The C compiler identification is unknownThe CXX compiler identification is unknownCMake