PCL的github指导这些问题,所以我不知道还能在哪里问这个问题。
我试图实现位姿估计,给定一个网格和一个生成的点云。使用PCL,我知道您可以用来自的两点云来进行姿态估计。在我的例子中,我有一个精确的目标对象的分面模型。是否存在一个PCL姿态估计器,可以消耗多个方面的真实模型?我希望避免将或作为一项工作。
谷歌不会带来任何与我的搜索相关的结果,下面是54个术语
点云库位姿估计
- mesh
- triangles
- facets
- truth data
- model truth data
- model
- mesh truth data
- vertexes
- ver
假设我有两个点云A和B。我想做以下操作: C=A-B,其中C是操作的输出云。我知道PCL有连接两个点云的'+‘操作,比如:
pcl::PointCloud<pcl::PointXYZ> A;
pcl::PointCloud<pcl::PointXYZ> B; //assume A and B have points in them
pcl::PointCloud<pcl::PointXYZ> C = A+B;
然而,我不认为有一个'-‘运算符来从一个点云中删除另一个点。
我可以为A和B创建散列映射吗?输出C只包含在哈希图中出现一次
我正在通过PCL点云库对我房间的点云进行区域分割。彩色云如下所示:
正如你所看到的,大部分星系团都是从表面看的。然而,当我分别显示每个集群时,以下是一些结果:
很明显,星系团和彩色云不一样,但我不明白为什么。我使用这段代码将集群存储到分离的点云中:
//Store clusters into new pcls and all the clusters in an array of pcls
std::vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr> clusters_pcl;
for
我正在可视化PCL Visualizer内的两个点云。以下是代码片段:
#include <pcl/io/pcd_io.h>
#include <pcl/visualization/pcl_visualizer.h>
int main (int argc, char** argv)
{
pcl::visualization::PCLVisualizer viewer("Cloud Viewer");
pcl::PointCloud<pcl::PointXYZRGBA>::Ptr face (new pcl::PointCl
我尝试成对注册云以获得3D模板,但我收到警告
[pcl::SampleConsensusModelRegistration::computeSampleDistanceThreshold] Covariance matrix has NaN values! Is the input cloud finite?
[pcl::RandomSampleConsensus::computeModel] No samples could be selected!
紧随其后的是信号SIGSEGV、分段故障:
0x00007ffff344114d in pcl::registration::Transfor
我有很大的点云,我想在上面应用voxelGrid。但由于点云太大,我有错误,如"[pcl::VoxelGrid::applyFilter] Leaf size is too small for the input dataset. Integer indices would overflow"。所以我想首先从我的点云构建一个八叉树,然后在每个叶子上应用过滤器(即在具有良好索引的点云上应用过滤器)
问题发生在这里,当我应用过滤器时,PCL希望我选择一个PointCloud,它将被保存在其中,并用过滤器的结果替换原始的点云。我想知道是否有可能修改过滤器,使其不删除点,而只将点云中必
我在验证法线点坐标中包含的值时遇到了问题。最初,我估计我的云的正常值,当我检查普通云的xyz坐标时,它将返回nan。
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
pcl::PointCloud<pcl::Normal>::Ptr normals (new pcl::PointCloud<pcl::Normal>);
// Object for normal estimation.
pcl::NormalEstimation<
我只想使用PCL (点云库)提取法线指向向上或接近指向向上的点。有一个用于估计曲面法线的示例代码,但没有如何提取它。已经有人这么做了吗?
#include <pcl/point_types.h>
#include <pcl/features/normal_3d.h>
{
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
// read, pass in or create a point cloud ...
// Cre
我需要一些使用PCL库的帮助。我只是点云的初学者。
我有一个很大的点云,我可以从中提取平面。我最终得到了6个单独存储在不同点云中的曲面。我使用XYZRGB点。然而,每个点云最终都会有几千个点。
pcl::PointCloud<pcl::PointXYZRGB>::Ptr Surfacei
Size of Surface1 before : 216224
Size of Surface2 before : 5407
Size of Surface3 before : 4168
Size of Surface4 before : 7298
Size of Surface5 b
我正在使用PCL库使用两个点云进行配准。这两个点云使用视口v1和v2显示在两个不同的窗口中。第三个窗口显示在两个窗口的下方,以使用视口v3显示已注册的云。所有视口都由一个名为m_viewer的PCLVisualizer使用。工作流程是在v1和v2中选择点对应来进行配准,这将在v3中显示。下面是程序的图片: Main display of the program 现在,我正在尝试实现一个高亮显示用户点击点的功能。因此,如果用户单击视口v1或v2中的某个点,它将在函数markSelectedPoint中使用白色高亮显示。我想将高亮显示的点存储在两个不同的点云markedPointsCloudLe