【PCL免配置保姆级入门教程】win10 PCL1.8.0 VS2015 x64 使用Kdtree加速的DBSCAN进行点云聚类

前不久看到了大佬基于PCL做的点云聚类 https://www.jianshu.com/p/ae5a53a51ca6 ,自己实现了一遍,发现借助大佬做好的工程还有CmakeList.txt可以快速配置好PCL,免去了繁琐易错的配置过程,比自己配置一遍rabbit.pcd的入门程序来的快多了,很适合作为pcl的入门项目(从配置运行的角度讲的入门,不是大佬的项目入门- -)。

目录

  • 下载 PCL1.8.0 安装包
  • 安装 PCL1.8.0
  • 添加环境变量
  • CMAKE创建工程
    • 下载安装Cmake
    • 下载工程源文件以及CmakeList.txt
    • 解压缩工程文件
    • Cmake进行Configure&Generate
  • 运行程序
    • 可视化
    • 过滤
    • 提取平面
    • 去除平面
    • 基于Kdtree的DBSCAN聚类
  • 自行实现其他功能
    • 绘制rabbit.pcd

下载 PCL1.8.0 安装包

http://unanancyowen.com/en/pcl18/
在这里插入图片描述

安装 PCL1.8.0

在这里插入图片描述
在这里插入图片描述
不要让安装程序直接添加环境变量,会报错:path took too long

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里需要安装OpenNI2,安装在PCL的3rdParty中,这里对应的路径是:

D:\PCL1.8.0\3rdParty\OpenNI2

添加环境变量

新建环境变量:
在这里插入图片描述
Path中插入:
在这里插入图片描述

%PCL_ROOT%\bin
%PCL_ROOT%\Qhull\bin
%PCL_ROOT%\3rdParty\VTK\bin
%PCL_ROOT%\3rdParty\FLANN\bin
%PCL_ROOT%\3rdParty\OpenNI2\Tools    

CMAKE创建工程

下载安装Cmake

如果没有Cmake可以先下载一个Cmake:

我用的是Cmake3.20.1,版本差的不太大应该没什么影响

下载工程源文件以及CmakeList.txt

https://github.com/JaminJiang/dbscan_kdtree

解压缩工程文件

在这里插入图片描述

Cmake进行Configure&Generate

打开Cmake gui

设置好source code的路径以及二进制文件存放路径:
在这里插入图片描述
点击condigure:
在这里插入图片描述
我们下载的PCL1.8.0对应的visual studio的版本就是2015的且是64位的,这些版本都要对上。

点击Finish,开始Configure:
在这里插入图片描述
完成condigure如下所示:
在这里插入图片描述
点击Generate:
在这里插入图片描述
点击Open Project,Solution如图:
在这里插入图片描述

运行程序

此时右键pcl_cluster启动项目可以直接运行。
在这里插入图片描述

可视化

在这里插入图片描述

过滤

在这里插入图片描述

提取平面

在这里插入图片描述

去除平面

在这里插入图片描述

基于Kdtree的DBSCAN聚类

在这里插入图片描述
运行结束。

自行实现其他功能

绘制rabbit.pcd

show_point_cloud之后的代码全部注释,把rabbit.pcd文件复制到build文件夹下即可。

相关pcd资源我上传在这:https://download.csdn.net/download/m0_47634756/33194194
在这里插入图片描述
接下来可以自行探索了。


http://www.niftyadmin.cn/n/1026659.html

相关文章

【C++音视频】mediasoup-demo部署

服务器环境Nodejs & npm 安装git、pyhton安装下载 mediasoup-demo安装server设置配置文件配置ssl证书--配置https环境本地调试环境:真实运行环境配置ssl证书启动服务器安装并启动app浏览器访问服务器环境 Ubuntu 18.04 或其他Python3.7以上Nodejs 12.0以上—文…

解决方案:Windows下Mysql提示Access denied for user ''@'localhost' to database '数据库名'

问题描述 新建了一个blog的账户,并且设置了密码,但是发现使用 “Mysql -ublog -p” 登陆会报错,即使密码正确也不能登录,最后发现,不用输入密码,直接回车就登录进去了。 解决方案 后来,查询了…

学习笔记:Intellij Idea 使用

阅读背景:已知您有 Eclipse基础,是从 Eclipse 向 Intellij Idea 转变的。 文章目录1. Idea须知2. 更改设置3. 快捷键 (实际可以设置成 eclipse的)4. 设置5. Maven5.1 创建 Maven5.11 创建 Java Mavan5.12 创建 Maven Web5.2 打包 …

解决方案:Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource..

昨天 在 Idea 导入了 Eclipse 的项目,练习一下 Idea 的打包方式,第二天 启动 就出现了如下错误。 Description:Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured.Reason: Failed to …

血泪经验:电脑重启后,火狐回到初始配置,特别是书签页没了。

背景: 公司网络是内网,所以 火狐浏览器 并没有更新,一直使用超旧的版本。 问题发生: 今天再做某个大项目 卡的不行,于是 重启了电脑,再 打开火狐浏览器 看到书签页没有任何之前保存的网址了,配…

学习笔记:Oracle

写在开头1. Oracle1.1 VARCHAR21.2 dual1.3 exist 和 in2. 查询2.1 inset into ... select ...2.2 count()2. 多表查询2.1 自连接2.2 子查询2.21 单行子查询2.22 多行子查询2.23 多列子查询小总结2.3 用查询结果创建新表2.4 合并查询(union、union all、intersect、…

学习笔记:Apache POI

POI1. cell.getStringCellValue()2. workbook.write(FileOutputStream out)3. BigDecimal、DecimalFormat3.1 DecimalFormat4. 样式4.1 设置列宽4.2 Excel 类型问题5. 注意5.1 setCellType()1. cell.getStringCellValue() 有可能会 得到一个 null,为了防止空指针&a…

学习笔记:LocalDateTime

LocalDateTime1. 环境2. 代码 2.1 LocalDate: 获取年月日 2.2 LocalTime: 获取时分秒 2.3 LocalDateTime: 获取年月日时分秒 2.4 LocalDateTime 年月日时分秒的 操作. 2.5 时间计算 2.6 格式化时间 2.7 解析时间: 2.8 看得懂的时间输出 2.…