PCD可视化
在home下,新建文件夹PointCloud(我建在这里,大家随意),在PointCloud文件里继续新建文件夹view_pcd,在view_pcd文件里继续新建空文件夹build,同时新建文档view_pcd.cpp和CMakeLists.txt,到此,新建操作结束。其中,view_pcd.cpp的代码如下:
#include <iostream>
#include <pcl/io/pcd_io.h> //PCL的PCD格式文件的输入输出头文件
#include <pcl/point_types.h> //PCL对各种格式的点的支持头文件
#include <pcl/visualization/cloud_viewer.h>//点云查看窗口头文件
int main(int argc, char **argv) {
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>); // 创建点云(指针)
if (pcl::io::loadPCDFile<pcl::PointXYZ>("/home/terry/PointCloud/bin2pcd/velodyne/pcd/1.pcd", *cloud) == -1) //* 读入PCD格式的文件,如果文件不存在,返回-1
{
PCL_ERROR("Couldn't read file test_pcd.pcd \n"); //文件不存在时,返回错误,终止程序。
return (-1);
}
pcl::visualization::CloudViewer viewer("Simple Cloud Viewer");//直接创造一个显示窗口
viewer.showCloud(cloud);//在这个窗口显示点云
while (!viewer.wasStopped())
{
}
return 0;
}
CMakeLists.txt的代码如下:
cmake_minimum_required(VERSION 3.5)
project(view_pcd)
find_package(PCL 1.2 REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable(view_pcd view_pcd.cpp)
target_link_libraries (view_pcd ${PCL_LIBRARIES})
install(TARGETS view_pcd RUNTIME DESTINATION bin)
最后,终端运行如下代码:
cd PointCloud/view_pcd/build
cmake ..
make
make成功之后,运行view_pcd程序,即可视化了pcd文件。
./view_pcd
参考链接:
https://blog.csdn.net/tuyim7124/article/details/88615937