PCL安装及Demo示例

PCL安装及Demo示例

1. PCL介绍

PCL(The Point of Library) 是一个用于2D/3D图像和点云处理的大型的开源项目。PCL框架由许多先进算法构成,包括滤波、特征估计、表面重构、配准、模型拼合和分割等。这些算法有许多应用,例如,过滤噪声数据中的异常值,拼合多组3D点云,分割场景中的相关部分,提取关键点并计算几何外形的描述子用于识别物体,利用点云创建并可视化物体表面,等等。PCL目前已成功编译并配置在Linux, MacOS, Windows, 和Android/iOS等平台上。

2. 安装

2.1 Ubuntu

unix系统下可以直接通过apt,yum等包安装命令进去安装。以ubuntu举例来说:

执行:

apt-get install libpcl-dev pcl-tools
即可安装成功

2.2 Mac

mac系统下可以直接通过brew来安装. 通过以下命令我们就可以安装成功

brew install pcl

3.开发Demo 示例

打开命令行窗口,创建一个项目目录。如下

cd /home/admin
mkdir pcl-demo
cd pcl-demo

在项目目录下创建CMakeLists.txt,以及项目文件

touch CMakeLists.txt
mkdir build
touch application.cpp
vim CMakeLists.txt

在CMakeLists.txt里面填写如下内容.

cmake_minimum_required(VERSION 2.6) 
project(pcl_demo)
find_package(PCL REQUIRED)
 
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
 
add_executable(pcl_demo application.cpp)
 
target_link_libraries (pcl_demo ${PCL_LIBRARIES})

通过CMakeList.txt将项目编译结构列举出来.其关键通过 find_package去找到系统中所安装的PCL,找到后,会自动注入PCL_INCLUDE_DIRS,PCL_LIBRARY_DIRS,PCL_DEFINITIONS,PCL_LIBRARIES变量,只想将相关的变量引入链接,即可将项目搭建成功。

在项目搭建后,编写application.cpp文件,

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/visualization/cloud_viewer.h>

#include <thread>
using namespace std::chrono_literals;

int main (int argc, char** argv)
{
   pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>);
   pcl::io::loadPCDFile("./../test_pcl_logo.pcd",*cloud);
   pcl::visualization::PCLVisualizer visualizer("view");
    visualizer.addPointCloud(cloud);
    while (!visualizer.wasStopped()){
	visualizer.spinOnce(100);
        std::this_thread::sleep_for(100ms);
    }
    cloud.reset();
  return 0;
}

首先我们先建立一个pcl点云对象,通过PCL加载文件函数,将点云对象填充。在通过PCLVisualizer建立起可视化对象,即可将相关内容展示出来。通过下述命令进行编译运行

cd build
cmake ..
make
./plc_demo
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

myenjoy_1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值