【PCL】PCL点云库介绍及VS环境配置

文章目录

    • PCL介绍
    • Windows PCL环境配置
      • Ubuntu PCL环境配置

PCL介绍

PCL是跨平台点云处理库,用来点云可视化、分割、聚类等应用。

PCL官网在这:https://pointclouds.org/

Github库在这(这里用1.8.1):https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.8.1

Windows PCL环境配置

这位大佬在两年前已经写得很明白了,这里复现一下。

ALLInOne安装:

【PCL】PCL点云库介绍及VS环境配置_第1张图片

第三方库安装(都装在3rdparty):

【PCL】PCL点云库介绍及VS环境配置_第2张图片
【PCL】PCL点云库介绍及VS环境配置_第3张图片

将pdb解包并拷贝到bin:

【PCL】PCL点云库介绍及VS环境配置_第4张图片

添加环境变量:

【PCL】PCL点云库介绍及VS环境配置_第5张图片

添加包含目录:

【PCL】PCL点云库介绍及VS环境配置_第6张图片

添加库目录:

【PCL】PCL点云库介绍及VS环境配置_第7张图片

添加预处理器定义:

【PCL】PCL点云库介绍及VS环境配置_第8张图片

添加附加依赖项(好多个项啊):

【PCL】PCL点云库介绍及VS环境配置_第9张图片

将SDL检查设置为否,否则会出现C4996:

【PCL】PCL点云库介绍及VS环境配置_第10张图片

复制代码到main中:

// pcl181

#include
#include
#include	//pcd 读写类相关的头文件
#include
#include //PCL中支持的点类型头文件
#include

using namespace std;

int user_data;

void viewerOneOff(pcl::visualization::PCLVisualizer& viewer) {
	viewer.setBackgroundColor(1.0, 0.5, 1.0);   //设置背景颜色
}

int main() 
{
	pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);

	char strfilepath[256] = "rabbit.pcd";
	// 判断pcd文件是否存在
	if (-1 == pcl::io::loadPCDFile(strfilepath, *cloud)) {
		cout << "error input!" << endl;
		return -1;
	}

	cout << cloud->points.size() << endl;	//打印点云大小
	pcl::visualization::CloudViewer viewer("Cloud Viewer");     //创建viewer对象

	viewer.showCloud(cloud);	//显示点云
	viewer.runOnVisualizationThreadOnce(viewerOneOff);
	system("pause");
	return 0;
}

如果前面都配置好,运行还提示缺少dll库的话,应该是lib还没有加载到工程中,重启一下工程即可。

最后读取rabbit的效果如下(很漂亮):

【PCL】PCL点云库介绍及VS环境配置_第11张图片

到这里,环境终于配置好了,希望大家配置也一切顺利。(可算能开始敲代码了)

Ubuntu PCL环境配置

ubuntu上大家只要装了ros会默认安装pcl点云库,也可确认安装:sudo apt install libpcl-dev

然后在终端输入pcl_viewer有输出则表示安装没问题。

如果需要安装其他版本可以下载源码编译,暂时我还没这个需求,暂时够用。

以上。

你可能感兴趣的:(c++CV计算机视觉与音视频,pcl,c++,学习)