PCL点云库基础学习笔记(一)

本文详细介绍了PCD文件格式,包括其版本、字段、尺寸、类型和点云数据的组织方式。接着,展示了如何利用CMakeLists.txt配置文件来构建PCL项目,解析了文件中的关键指令。此外,还提供了两个示例,分别演示了如何读取和写入点云数据到PCD文件。通过这些步骤,读者能够掌握PCL库在处理点云数据方面的基本操作。

目录

1. PCD文件格式

2. 如何使用CMakeLists.txt

3. PCD文件读取点云数据

4. 将点云数据写入 PCD 文件


1. PCD文件格式

 #.PCD V.7-Point Cloud Data file format
 VERSION.7
 FIELDS X y zrgb
 SIZE 4 4 4 4
 TYPE F F F F
 COUNT 1 1 1 1
 WIDTH 2 1 3
 HEIGHT 1
 VIEWPOINT 0001000
 POINTS 213
 DATAascii
 0.93773 0.33763 0 4.2108e+06
  • VERSION: 指的是PCD文件的版本

  • FIELDS:指定一个点可以有的每一个维度和字段的名字

  • SIZE:用字节数指定每一个维度的大小

  • TYPE:用一个字符指定每一个维度的类型

  • COUNT:指定每个维度有多少元素,默认没有COUNT时,所有维度的数目被设置为1

  • WIDTH:指定数据集的宽度,根据是有序点云还是无序点云,WIDTH有两层解释:

    1. 它能确定无序数据集的点云中点的个数(和下面的POINTS 一样)

    2. 它能确定有序点云数据集的宽度(一行中点的数目)

      注意:有序点云数据集,意味着点云是类似于图像(或者矩阵)的结构,数据分为行和列。这种点云的实例包括立体摄像机和时间飞行摄像机生成的数据。有序数据集的优势在于,预先了解相邻点(和像素点类似)的关系,邻域操作更加高效,这样就加速了计算并降低了PCL中某些算法的成本。 

  • HEIGHT:用点的数目表示点云数据集的高度。类似于WIDTH,HEIGHT也有两层解释。

    1.  它表示有序点云数据集的高度(行的总数)

    2.  对于无序数据集,它被设置成1(被用来检查一个数据集是有序还是无序)

      有序点云例子:

      wIDTH 640 #像图像一样的有序结构,有640行和 480列 
      HEIGHT 480 #这样该数据集中共有640*480=307200个点 
      
      无序点云例子: 
      WIDTH 307200 
      HEIGHT 1   #有307200个点的无序点云数据集
  • VIEWPOINT:指定数据集中点云的获取视点

  • POINTS:指定点云中点的总数

2. 如何使用CMakeLists.txt

CMakeLists.txt文件一般形式:

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(MY_GRAND_PROJECT)
find_package(PCL 1.3 REQUIRED COMPONENTS common io)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值