本节课我们将了解到以下内容:
- 基本的PCL可视化方法;
- 使用PCL完成一个完整的可视化案例。
一、数据准备:
请您自行准备好待可视化的pcd文件,或者采用本文提供的数据。本节课提供来自Semantic3D数据集的一帧数据集(经过压缩,完整数据较大),可访问
https://pan.baidu.com/s/1ATChVvHUHpeJBzrdlt3dNwpan.baidu.com进行下载,网盘密码b5w7。
二、功能说明:
运行该程序可以可视化一组点云数据。运行效果如下图所示:

三、运行说明:
访问http://www.pointclouds.org/documentation/tutorials/cloud_viewer.php#cloud-viewer下载源码进行修改(修改代码中的背景颜色等等),请注意要将代码中“my_point_cloud.pcd”改为您的待可视化文件,或者直接复制下列代码保存到cloud_viewer.cpp文件,并在同一级目录下保存本节课提供的数据。
#include
复制CMakeList.txt代码,按照前几课的方法编译,如有问题请留言。
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
project(cloud_viewer)
find_package(PCL 1.2 REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable (cloud_viewer cloud_viewer.cpp)
target_link_libraries (cloud_viewer ${PCL_LIBRARIES})
请在切换到文件所在路径,切换到所在路径后输入以下的命令。
cd build
$ cmake ..
$ make

四、代码分析
请注意本节课仅仅介绍简单的可视化方法,复杂些的内容会在后续的课程中接着介绍。我们来看一个简单的案例,这个案例包含了PCL可视化的最基本的要素。
#include
细分一下程序的工作:导入库文件、新建可视化对象、可视化渲染、呈现、其它业务逻辑。
我们再看一个完整的例子,这个例子同样包含了上述内容甚至并没有增加新的环节:
#include
至此,一个简单的PCL可视化工作完成了,目前的内容尚且比较简单,后续我们将介绍涉及三维点云的相关算法、实现,在实际案例中穿插介绍更为复杂的可视化工作。
参考资料:
http://www.pointclouds.org/documentation/tutorials/cloud_viewer.php#cloud-viewer