建立一个文件夹pclfirst
在pclfirst文件夹下建立pclfirst.cpp,写入

/*
    任何点云格式均可,不要求点云带有RGB字段
*/
#include <iostream>
#include <pcl/point_types.h>
#include <pcl/io/ply_io.h>
#include<pcl/io/pcd_io.h>//pcd 读写类相关的头文件。
#include <pcl/visualization/pcl_visualizer.h>
#include <pcl/io/io.h>

using namespace std;
using namespace pcl;
using namespace io;

int main() {
    PointCloud<PointXYZ>::Ptr cloud(new PointCloud<PointXYZ>);
    char strfilepath[256] = "/home/tianchengyuan/exercise/pclfirst/twoDroneLocalization.pcd";//将自己的点云数据集的路径放在这里就可以了,我这里是一个校使馆的点云集
    if (-1 == io::loadPCDFile(strfilepath, *cloud)) { // 读取.pcd文件
        cerr << "can't read file bunny.pcd" << endl;//如果未找到
        return -1;
    }
    boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("3D Viewer"));
    
    pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ> single_color(cloud, 0,205,205 ); // green
    
    viewer->addPointCloud<pcl::PointXYZ>(cloud, single_color, "sample cloud");

    while (!viewer->wasStopped())
    {
        viewer->spinOnce(100);
        boost::this_thread::sleep(boost::posix_time::microseconds(100000));
    }
    return 0;
}

在pclfirst文件夹下建立配置文件CMakeLists.txt,写入:

cmake_minimum_required(VERSION 2.6)
project(pclfirst)
 
find_package(PCL 1.2 REQUIRED)
 
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
 
add_executable(pclfirst pclfirst.cpp)
 
target_link_libraries (pclfirst ${PCL_LIBRARIES})
 
install(TARGETS pclfirst RUNTIME DESTINATION bin)

然后再在pclfirst文件夹下建一个build文件夹。
开始编译:
1、在build文件夹中打开终端(在文件夹下右键+T)
2、终端输入

cmake ..

3、终端输入

make

4、终端输入

./pclfirst

在这里插入图片描述

至此,显示成功!

2020.12.20
今天发现来更加简单的方法:
可用pcl_viewer 查看:

pcl_viewer xxxx.pcd                #xxxx.pcd 为文件名
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐