IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 点云库PCL学习教程问题集 -> 正文阅读

[C++知识库]点云库PCL学习教程问题集

复现程序时遇到问题:

问题一:namespace "PCL"没有成员getFilenameWithoutExtension

1、问题描述:

getFilenameWithoutExtension进行报错:namespace "PCL"没有成员getFilenameWithoutExtension

2、问题图片:

在这里插入图片描述

3、解决办法:

添加file_io的头文件:#include <pcl/common/file_io.h>
在这里插入图片描述

问题二:

E0304 没有与参数列表匹配的 重载函数 “pcl::visualization::PCLVisualizer::addPointCloud” 实例

E0289 没有与参数列表匹配的构造函数 “pcl::visualization::PointCloudColorHandlerCustom::PointCloudColorHandlerCustom [其中 PointT=pcl::PointWithRange]” 实例##

2、问题图片:

在这里插入图片描述

3、问题分析:

给官方解释:
getFilenameWithoutPath()
std::string pcl::getFilenameWithoutPath ( const std::string & input )
Remove the path from the given string and return only the filename (the remaining string after the last ‘/’)
Parameters
input the input filename (with full path)
Returns
the resulting filename, stripped of the path
Definition at line 76 of file file_io.hpp.
是所以要更改range_image_ptr的格式

4、解决办法:

把boost::shared_ptrpcl::RangeImage range_image_ptr(new pcl::RangeImage);
改为:const std::shared_ptrpcl::RangeImage range_image_ptr(new pcl::RangeImage);
下相当于把range_image_ptr的类型进行一个更换

问题三:

E0312 不存在用户定义的从 “boost::shared_ptr” 到 “const std::shared_ptr<const pcl::PointRepresentation>” 的适当转换

C2664 “void pcl::Registration<PointSource,PointTarget,Scalar>::setPointRepresentation(const std::shared_ptr<const pcl::PointRepresentationpcl::PointNormal> &)”: 无法将参数 1 从“boost::shared_ptr”转换为“const std::shared_ptr<const pcl::PointRepresentationpcl::PointNormal> &”

1、问题描述(来源):

本问题来自第13章 点云配准的——13.3.2 如何逐步匹配多幅点云时,遇到了报错

2、问题图片展示:

在这里插入图片描述

3、问题分析:

官方文档解释:
setPointRepresentation()

void pcl::KdTree< PointT >::setPointRepresentation ( const PointRepresentationConstPtr & point_representation )

Provide a pointer to the point representation to use to convert points into k-D vectors.
Parameters
[in] point_representation the const boost shared pointer to a PointRepresentation

4、解决方案:

把原程序的

reg.setPointRepresentation(boost::make_shared<const MyPointRepresentation>(point_representation));

改为:

reg.setPointRepresentation(pcl::make_shared<const MyPointRepresentation>(point_representation));

在这里插入图片描述这里要感谢BoYang_Zz博主的解决方案
链接: PCL 报错修改 pairwise_incremental_registration.

问题四:C2039 “KdTree”: 不是 “pcl::search” 的成员

1、问题描述(来源):
本问题来自第15章中15.3.1基于多项式拟合的法线估计、估计平滑和数据重采样中
2、问题图片展示:
在这里插入图片描述

3、问题分析:
这种大量.h文件的确实,多半是缺少头文件所导致
4、解决方案:
在头文件处添加如下

#include<pcl/search/impl/kdtree.hpp>

问题四:由于找不到 qhull_rd.dll,无法继续执行代码。重新安装程序可能会解决此问题。

1、问题描述(来源):
本问题来自第15章中15.3.1基于多项式拟合的法线估计、估计平滑和数据重采样中,点击运行后,产生的报错
2、问题图片展示:
在这里插入图片描述
3、问题分析:
此问题为,PCL没有检测到.dll文件出现的报错,但是在我们安装的时候此文件是有的,只是放的路径可能需要修改。
4、解决方案:
在安装的PCL中搜索qhull_rd.dll
在这里插入图片描述右键,打开文件夹所在的位置,把qhull_rd.dll文件夹下复制,
在pcl-版本/bin目录下进行复制。
问题解决!

后续更新的模板

1、问题描述(来源):
2、问题图片展示:
3、问题分析:
4、解决方案:

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:08:08  更:2022-04-01 23:09:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:07:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码