用pcl读ply文件_PCL入门系列二——PCL世界的“hello world”

本节课我们将:

  1. 学习如何利用PCL库编译程序;
  2. 学习一个非常简单的程序在本地生成一个点云pcd文件;

这节内容不对PCL库做深入的探究,只要能够将代码跑成功,了解利用CMake进行编译即可。

前置条件:

请先行安装PCL,如果有安装上的问题请留言。

一、准备文件

我们需要两个文件:程序源码和指导编译的CMakeList文件。后续大部分工程都有相似的配置。不去看文件内部的内容,将代码复制粘贴下来,先运行一下程序。

请从上述地址

Writing Point Cloud data to PCD files​zhuanlan.zhihu.com

下载程序源码或者复制下列代码。

#include 

打开工作文件夹,复制上述内容将上述代码保存为 pcd_write.cpp 文件。在同一个文件夹下创建一个名为CMakeList.txt的文件。在该文件中填入下列内容并保存:

cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
 
project(pcd_write)
 
find_package(PCL 1.2 REQUIRED)
 
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
 
add_executable (pcd_write pcd_write.cpp)
target_link_libraries (pcd_write ${PCL_LIBRARIES})

如图所示我在/media/bunny/_harddisk/code/pclearing/lec1的路径下创建了两个文件。

f5fde297bba49755ba3690ca422630a4.png

在命令行中,切换到/media/bunny/_harddisk/code/pclearing/lec1目录,用ls命令观察目录下确实多了两个文件,后续的操作尽量就放在命令行下进行。至此相关文件的准备工作已经结束。

50659849bb53873a26c5af7e6e97f514.png

二、编译运行项目

这里需要了解如何使用CMake工具进行源码编译。请记住“先动手,再问为什么”。不管怎么样先跑起来再说。

首先请在切换到文件所在路径,比如我存放文件的位置就是:/media/bunny/_harddisk/code/pclearing/lec1

切换到所在路径后输入以下的命令。

cd build
$ cmake ..

4b065ebed5d8f54b27b06bc25d5812fa.png

得到的结果如下所示

-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
…………………………………………………………

继续输入命令,构建工程。

$ make

得到如下的结果,当您看到100%的时候,意味着项目编译成功。

f275f03304f67ec69ebef85e83a6a1bc.png

执行程序观察实验结果:

$ ./pcd_write

至此代码运行成功。下面程序的输入结果表明PCL世界的入门级“hello world”已经运行成功。

19f96f8b5fefba8116e17a6ecb6428bf.png

我们切换到build文件夹下观察文件,pcd_write为可执行文件,test_pcd.pcd为刚刚写入的pcd文件。

1fb8f81aa8a02263811b2d3138f5b90b.png

后续的过程中,我们对上面的两个文件进行更加详细的介绍。

三、CMakeList简介

下面我对CMakeList文件中的内容进行简单的介绍。

(VERSION 2.8 FATAL_ERROR

假设我们要修改CMakeList.txt用于处理我们自己的程序,我们要进行哪些修改呢,改两句话就可以了。

project(pcd_write)
add_executable (pcd_write pcd_write.cpp)

这是不是非常简单?利用CMakeList,我们可以自由的在不同的平台上生成执行文件。关于编译文件的知识,我们暂时先讲到这里,后续再进行补充。

关于文件的读写的内容解释请参见下一节内容。

参考资料:

http://www.pointclouds.org/documentation/tutorials/using_pcl_pcl_config.php#using-pcl-pcl-config

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值