pyntcloud

处理 3D 点云的 Python 库
授权协议 MIT
开发语言 Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 不详
投 递 者 柳英资
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

pyntcloud 是一个 Python 3 库,用于利用 Python 科学堆栈的强大功能处理 3D 点云。

安装

conda install pyntcloud -c conda-forge

或者:

pip install pyntcloud

快速概览

开发者可以从其核心类 PyntCloud 访问 pyntcloud 的大部分功能。

使用 PyntCloud,您可以用最少的代码行执行复杂的 3D 处理操作。例如:

  • 从磁盘加载 PLY 点云
  • 通过将 RGB 转换为 HSV,添加 3 个新的标量字段
  • 从点云构建 voxels 网格
  • 构建一个新的点云,只保留与每个占用 voxels 中心最近的点
  • 以 numpy 的 NPZ 格式保存新的点云

使用以下简洁的代码:

from pyntcloud import PyntCloud

cloud = PyntCloud.from_file("some_file.ply")

cloud.add_scalar_field("hsv")

voxelgrid_id = cloud.add_structure("voxelgrid", n_x=32, n_y=32, n_z=32)

new_cloud = cloud.get_sample("voxelgrid_nearest", voxelgrid_id=voxelgrid_id, as_PyntCloud=True)

new_cloud.to_file("out_file.npz")

与其他库的集成

pyntcloud 提供与其他 3D 处理库的无缝集成。

开发者可以使用 from_instance / to_instance 方法从/到许多 3D 处理库创建/转换 PyntCloud 实例:

import open3d as o3d
from pyntcloud import PyntCloud

# FROM Open3D
original_triangle_mesh = o3d.io.read_triangle_mesh("diamond.ply")
cloud = PyntCloud.from_instance("open3d", original_triangle_mesh)

# TO Open3D
cloud = PyntCloud.from_file("diamond.ply")
converted_triangle_mesh = cloud.to_instance("open3d", mesh=True)  # mesh=True by default
import pyvista as pv
from pyntcloud import PyntCloud

# FROM PyVista
original_point_cloud = pv.read("diamond.ply")
cloud = PyntCloud.from_instance("pyvista", original_point_cloud)

# TO PyVista
cloud = PyntCloud.from_file("diamond.ply")
converted_triangle_mesh = cloud.to_instance("pyvista", mesh=True)
  • pyntcloud open3d pyvista pypcl四种格式互换 mark一下 原文链接:https://blog.csdn.net/weixin_39902184/article/details/111448142 先介绍三种格式的转换pyntcloud open3d pyvista pyntcloud只支持 "PYVISTA"和 "OPEN3D"之间的转换 import open3d

  • pyntcloud是一个python3库,用于利用python科学堆栈的强大功能处理3d点云 与open3d相互转换: import open3d as o3d from pyntcloud import PyntCloud # FROM Open3D original_triangle_mesh = o3d.io.read_triangle_mesh("diamond.ply") cloud

  • 在python安装目录的Scripts文件夹下,输入cmd pip install open3d 下载以下模块: pip install numpy pip install matplotlib pip install pandas pip install plyfile pip install pyntcloud  

 相关资料
  • 我有一个盒子的图像。我试图检测角点并从圆圈中标记这些角点。我正在为此使用以下代码:

  • 文:youyou Node Api 升级 由于 Cocos Creator 在 v2.1 支持了 3D 的特性,所以相应节点的 api 也需要由 2D 升级到支持 3D 的使用。 影响比较大的改动是 rotation 的类型将在之后的版本中从 Number 改为 cc.Quat,如果要像之前那样在 2D 空间方便旋转节点,那么可以使用 angle 属性。相应的 setRotation 和 getR

  • Python还能够创建3d图表。 它涉及将子图添加到现有的二维图并将投影参数指定为3d。 绘制3D图 3dPlot由mpl_toolkits.mplot3d绘制,以将子图添加到现有的2d图。 from mpl_toolkits.mplot3d import axes3d import matplotlib.pyplot as plt chart = plt.figure() chart3d = c

  • 情境:我正在尝试使用获取,它使用了两个经过校正的图像(图片可以)。 我使用这些教程来学习如何这样做: 第一教程 第二教程 错误:调用的方法时,程序在运行时崩溃 我尝试了: 1)通过png2pcd转换的图像(命令行:) 2)通过下面的函数从 转换的图像,但没有成功。 将CV::MAT转换为PCL::PointCloud的函数 PCL::AdaptiveCostsoStereoMatching(计算机

  • 问题内容: 我花了很多时间试图寻找一种简单的方法- 理想情况下,一个神奇的库在那里某个地方可以获取我的3D数据点集,并使用两个正交点在最佳拟合线上返回2个点回归或最小二乘,还返回拟合线的误差。这样的事情存在吗?如果存在,在哪里? 问题答案: 这很容易做到,但是要自己编写,您将需要特征值求解器或奇异值分解。将(x-xbar,y-ybar,z-zbar)数据的nx3矩阵A创建为列。保存这些列表示以后,

  • 我正在尝试LWJGL库,但我有点困惑。当我尝试渲染具有2d顶点的四边形时:glVertex2f(0,0);glVertex2f(0, 1000);glVertex2f(1000, 1000);glVertex2f(1000, 0);,那么一切似乎都很好,但是当我使用下面的代码时,我只看到黑屏。是我使用了错误的坐标,因此它没有显示在屏幕上,还是其他问题?