《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
来源:互联网 发布:波士顿矩阵的特点 编辑:程序博客网 时间:2024/06/14 09:16
《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
在使用欧式聚类时,发现debug版本可以编译通过并正常运行,而在release版本中,直接编译不通过,开始以为是库编译出了问题,后来在maillist中发现有人遇到同样的问题。
具体错误:
error LINK2019:无法解析的外部符号“public: void __cdecl pcl::EuclideanClusterExtraction<struct pcl::PointNormal> ::extract(class std::vector<pcl::PointIndices,class std::allocator<struct pcl::PointIndices>>&)”......
解决方法:
除了正常的加入的头文件:
#include <pcl::segmentation/extract_clusters.h>
还需加入一下hpp文件才能编译通过:
#include <pcl/segmentation/impl/extract_clusters.hpp>
上面的这个应该就能编译通过了,如果不行,继续加入下面头文件:
#include <pcl/search/impl/search.hpp>
编译通过,问题解决。
///////////////////////////////////////////////////////////////////////////
以上问题在QT中使用时没有任何问题,在MFC中使用时需要注意,可能由于编译器的原因,对于std::numeric_limits::max()函数会报错,使用欧式聚类:
pcl::search::KdTree<PointNormal>::Ptr segtree (new pcl::search::KdTree<PointNormal>); segtree->setInputCloud (doncloud); std::vector<pcl::PointIndices> cluster_indices; pcl::EuclideanClusterExtraction<PointNormal> ec; ec.setClusterTolerance (segradius); ec.setMinClusterSize (50); ec.setMaxClusterSize (100000); ec.setSearchMethod (segtree); ec.setInputCloud (doncloud); ec.extract (cluster_indices);
pcl::EuclideanClusterExtraction ec;此句会报错,由于代码阅读差错时的大意,多次定位到该处但没有解决掉,很莫名其妙的错误。
解决方法:
1、定位到欧式聚类对应的extract_cluster.h头文件中,发现该构造函数的最大聚类参数:max_pts_per_cluster_(std::numeric_limits::max())
2、将上句改为: max_pts_per_cluster_(std::numeric_limits::max()),重新编译,通过。
阅读全文
0 0
- 《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
- 《PCL点云库学习&VS2010(X64)》Part 22 激光雷达点云数据处理相关算法库收集
- 《PCL点云库学习&VS2010(X64)》Part 25 PCL点云操作函数汇集
- 《PCL点云库学习&VS2010(X64)》Part 41 图形学领域的关键算法及源码链接
- 《PCL点云库学习&VS2010(X64)》Part 1 Installation of PCL in VS2010(x64)
- 《PCL点云库学习&VS2010(X64)》Part 28 BoundingBox&addArray
- 《PCL点云库学习&VS2010(X64)》Part 42 OCtreeViewer
- 《PCL点云库学习&VS2010(X64)》Part 31 pcl::PointCloud::Ptr和pcl::PointCloud相互转换
- 《PCL点云库学习&VS2010(X64)》Part 29 PCL使用类成员函数作为pclvisualizer的回调函数
- 《PCL点云库学习&VS2010(X64)》Part 37 FLANN——快速最近邻搜索库
- 《PCL点云库学习&VS2010(X64)》Part 2 A simple test of PCL in MFC
- 《PCL点云库学习&VS2010(X64)》Part 7 PCL双边滤波BilateralFilter
- 《PCL点云库学习&VS2010(X64)》Part 19 PCL1.72(VTK6.2.0)PCL程序计时
- 《PCL点云库学习&VS2010(X64)》Part 20 PCL1.72(VTK6.2.0)PCL控制台程序线程
- 《PCL点云库学习&VS2010(X64)》Part 26 PCL中的fromPCLPointCloud2与toPCLPointCloud2
- 《PCL点云库学习&VS2010(X64)》Part 27 PCL中的区域增长之—Region_Growing算法
- 《PCL点云库学习&VS2010(X64)》Part 39 批处理命令设置PCL的环境变量
- 《PCL点云库学习&VS2010(X64)》Part 3 CMake2.8.2+VTK5.10.1+VS2010 64bit
- border-radius该如何去设置以及怪异盒模型
- myeclipse 10安装aptana
- C#-实体对象的可序列化
- redis
- 为什么不能从子函数中返回临时对象的指针和引用,却可以返回一个临时变量的值
- 《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
- 记录一下常用git命令
- php 运算符
- 蓝牙
- js中的"!!"是什么意思?boolean强制类型转换
- 4泰坦尼克号问题
- Ibatis后台打印sql语句
- 巧用margin/padding的百分比值实现高度自适应(多用于占位,避免闪烁)
- 第一天实训