问题标签 [pcl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
66 浏览

c++ - PCL 贪心三角剖分 - point_traits.h 和 concatenate.h 错误

我想对点云集群执行贪婪三角剖分。我制作了一个与 PCL 示例代码几乎相同的函数,如下所示:

我刚刚删除了最初在 PCL 示例中的以下行,认为每个集群都可以直接用作云(我不确定这是否可能导致错误)

我这样调用函数:

我的点云是 XYZRGB(是 pcl::PointXYZRGB)。

我收到以下错误:

这是错误的屏幕截图: 在此处输入图像描述

我对 PCL 或 C++ 没有那么丰富的经验,并且真的需要帮助解决这些错误。

0 投票
0 回答
90 浏览

c++ - PCL 加载 .ply 文件 --- 找不到字段/用户定义点的匹配项

我有一个 .ply 文件,标题是

然后我编写C++/PCL如下代码:

然后我得到结果

找不到字段“红色”的匹配项。

找不到字段“绿色”的匹配项。

找不到字段“蓝色”的匹配项。


它真的很连线,因为我可以读取除 RGB 之外的所有其他字段!

另外,如果我更改文件的字段名称或类型(以及代码),我可以阅读它,但显然,我不想一一修改文件。

寻求您的帮助~

您可以在此处找到代码和 .ply驱动器

0 投票
0 回答
21 浏览

xamarin.forms - 错误 com.opennetcf.extensions.pcl is not compatible with netstandard1.5

我试图了解这个错误的根源:

包 com.opennetcf.extensions.pcl 与 netstandard1.5 不兼容

当我尝试在我的 xamarin 表单项目中从 nuget 更新 xamarin 必需品时,我得到了它。如果我不更新该包,该项目工作正常。这是我不明白的。如果 PCL 与 .net 标准 1.5 不兼容,为什么当我同时使用这两个项目时该项目当前工作。为什么我在尝试更新 xamarin Essentials 时只看到此错误?

我一直在阅读很多关于 PCL 支持的文章,但我不确定在这种情况下我需要做什么。我主要关心的是更新 xamarin 必需品。

有什么想法吗?

0 投票
1 回答
33 浏览

point-cloud-library - 如何初始化 SACSegmentation 的搜索树指针?

在 PCL 中,我使用SACSegmentation函数从点云中找到特定形状。我希望使用的选项之一称为setSamplesMaxDist(A,B). A是半径(双变量),而B用 设置SearchPtr

我不确定如何初始化SearchPtr.

我已经尝试过设置pcl::search::Search<PointT>::Ptr B,它的构建在启动过程中崩溃了。当我尝试pcl::search::Search<PointT>::Ptr B(new search::Search<PointT>)时,Visual Studio 不允许我这样做。

那么正确的方法是什么?

0 投票
1 回答
68 浏览

python - 在 ROS 中发布法线

我是 ROS 的新手,我与正常人有斗争。所以这是我的情况。

我订阅了我的相机(realsense 相机),我得到了点云,我将点云从 ROS_to_pcl 转换,最后我使用 python_pcl 的函数 make_NormalEstimation() 来获取法线。到目前为止,一切都很好!现在我想以某种方式将这些法线发布到一个 ROS 主题中,并且通过发布我的意思是在 RVIZ 中也将它们可视化。python_pcl 函数 make_NormalEstimation() 以向量的形式返回 4 个值。第 3 个值是 normal_x、normal_y、normal_z,第 4 个值是曲率。我想通过 PoseStamed 消息发布和可视化 RVIZ 中的法线。据我所知,PoseStamped 消息需要一个姿势和一个四元数。对于姿势字段,我使用点云中所需点的 x、y、z 来找到法线。但是当涉及到四元数时(这是我的主要问题和斗争),我不知道 不知道用什么!我尝试使用返回的值,因为它们是 quaternion_x、quaternion_y、quaernion_z、quaternion_w,但结果不太好......

所以。我的问题是:

  • 如何使用 make_NormalEstimation() 的返回值来创建 PoseStamed 消息?
  • 有没有办法将返回的值转换为四元数?
  • 我是否缺少有关返回值的信息?
  • 是否有另一种在 ROS 中查找和使用法线的方法?
  • 如何在 ROS 中生成和发布法线?不仅是 normal_x、normal_y、normal_z 值,还有方向。
  • 我是否必须同时发布它的 normal_x、normal_y、normal_z 和方向,或者只是它的 normal_x、normal_y、normal_z 值?如果是这样,机器人如何知道接近兴趣点所需的方向?

对不起,我的问题混乱!我真的希望他们有意义!

提前致谢!

0 投票
0 回答
64 浏览

c++ - PCL 1.8 和 PCL 1.10 的区别

有人可以描述一下有什么区别:

  • PCL 1.8被使用Ubuntu 18.04
  • PCL 1.10被使用Ubuntu 20.04

在 上运行相同的代码时PCL 1.8,它可以正常工作或提供预期的输出。当我在 上运行相同的代码时PCL 1.10,它无法分割所有必需的对象?

这是 PCL 1.10 的输出屏幕截图。

在此处输入图像描述.

谢谢

0 投票
0 回答
39 浏览

three.js - 如何在three.js中翻转一些顶点几何的法线?

我已经测试了这里介绍的 PCL 三角测量:

从实验中我得到了一个 .vtk 文件。我试图通过 web 浏览器在 windows 上使用 three.js 来渲染它。如下所示:

看! 有很多洞

看!有很多洞。这些孔是具有相反法线向量的三角形。

法线向量未对齐

我需要的是翻转那些与其他相反的法线向量。这样我相信我会得到干净的网格图像,如下所示:

这是我想要的预期图像

我怎样才能做到这一点?我是否使用three.js?我是否可以更好地使用 pcl 库?- 三角测量?

这是我测试的html:

感谢WestLangley,我终于得到了预期的结果,如下所示:

这是预期的结果!

谢谢 WestLangley 和 Stackoverflow!

但问题仍然存在。WestLangley 的建议有所帮助,但它不是唯一的解决方案。正如你在下面看到的,一些法线向量正对着我的手的身体。我相信有一种方法可以使所有法线向量都从我的手体中取出。这个问题的答案仍然需要......

一些法线向量仍然面向我的手体

0 投票
0 回答
55 浏览

c++ - 如何在 PCL 中将标签合并到 PointCloud 中?

pcl::EuclideanClusterExtraction可用于分割点云。结果是std::vector形成每个集群的点集合。

问题:pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_in将和结合cluster_indices到标记点云的优雅方式是什么pcl::PointCloud<pcl::PointXYZL>::Ptr cloud_out?我想我不必手动遍历所有点来设置标签。

0 投票
1 回答
64 浏览

c++11 - 初始化(并填充)一个 pcl::PointCloud图像中的每个点索引

我是 PCL 的新手,如果这是一个微不足道的问题,我很抱歉。

我想知道是否有一种“简单”的方法可以做到这一点:

我有一个 3dPoints (X, Y, Z) 的服装“点云”。我有每个 3dPoint 的像素索引,如下所示:

我想对服装点云的所有点进行循环,对它们做一些事情,并 pcl::PointCloud<pcl::PointXYZ> pointcloud用相同的像素索引填充(在循环之前初始化)。

谢谢你的帮助

0 投票
0 回答
72 浏览

cluster-computing - 如何解决PCL算法(Euclidean Cluster Extraction)无法执行得到结果的问题

我正在尝试使用 PCL 示例代码(欧几里得集群提取https ://pcl.readthedocs.io/projects/tutorials/en/latest/cluster_extraction.html#cluster-extraction )来获取集群 PCL。

我使用BuildRoot构建代码并在 RK3568 板上运行演示,但无法执行结果。在 Ubuntu 中运行代码可以得到结果。我用gdb调试代码,调试信息如下:</p>

代码

CMakeLists