微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PCL:使用带有标记点的欧几里德聚类提取会导致 LNK 错误

如何解决PCL:使用带有标记点的欧几里德聚类提取会导致 LNK 错误

我有一个包含标记点的点云,因此它是一个 pcl::PointCloud<pcl::PointXYZL>.

我严格遵守本tutorial

我需要这些标签,我需要从点云中提取聚类。但是当我用标签调用 ECE 时,我收到 LNK 错误。但是如果我没有标签,它确实会提取集群:

#include <pcl/segmentation/extract_polygonal_prism_data.h>

#include <pcl/segmentation/extract_clusters.h>

#include <vector>
#include <memory>
#include <pcl/io/ply_io.h>

pcl::PointCloud<pcl::PointXYZL>::Ptr hello(new pcl::PointCloud<pcl::PointXYZL>);
pcl::PLYReader Reader5;
Reader5.read("sidewalk.ply",*hello);


std::shared_ptr<std::vector<pcl::PointCloud<pcl::PointXYZL>>> clusters = std::make_shared < std::vector<pcl::PointCloud<pcl::PointXYZL>>>();

pcl::search::KdTree<pcl::PointXYZL>::Ptr tree(new pcl::search::KdTree<pcl::PointXYZL>);
tree->setInputCloud(hello);


std::vector<pcl::PointIndices> cluster_indices;
pcl::EuclideanClusterExtraction<pcl::PointXYZL> ec;
ec.setClusterTolerance(2.0);
ec.setMinClusterSize(100);
ec.setMaxClusterSize(25000);
ec.setSearchMethod(tree);
ec.setInputCloud(hello);
ec.extract(cluster_indices);

这里是错误

LNK2019 unresolved external symbol "public: void __cdecl pcl::EuclideanClusterExtraction<struct pcl::PointXYZL>::extract(class std::vector<struct pcl::PointIndices,class std::allocator<struct pcl::PointIndices> > &)" (?extract@?$EuclideanClusterExtraction@UPointXYZL@pcl@@@pcl@@QEAAXAEAV?$vector@UPointIndices@pcl@@V?$allocator@UPointIndices@pcl@@@std@@@std@@@Z) referenced in function main  pclProgramme

我是否必须创建一个没有标签的新点云才能继续?

解决方法

我认为你需要使用LabeledEuclideanClusterExtraction,见: https://github.com/PointCloudLibrary/pcl/blob/master/segmentation/include/pcl/segmentation/extract_labeled_clusters.h

这是为带有标签的类型实例化的,因此不会出现带有标签的点类型的链接错误。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?