点云拼接有2种方式:两个点云的点数相加,和两个点云的维度相加。

(1)点数相加

当两个点云的维度(字段)相同时,两个点云可以通过数学符号"+"拼接,形成新的点云,新的点云维度(字段不变),点数为两个点云的点数之和,例如:

pcl::PointCloudpcl::PointXYZ> cloud_a;

pcl::PointCloudpcl::PointXYZ> cloud_b;

cloud_a的数据为:

1,1,1

2,2,2

cloud_b的数据为:

3,3,3

4,4,4

5,5,5

此时,cloud_a和cloud_b的维度为都为3(x,y,z),不同的是cloud_a的点数是2,cloud_b的点数是3,这时,执行

pcl::PointCloudpcl::PointXYZ> cloud_c = cloud_a + cloud_b;

则cloud_c的数据为:

1,1,1

2,2,2

3,3,3

4,4,4

5,5,5

cloud_c的维度(字段)还是3(x,y,z),但是点数变为2+3=5。

(2)维度相加

当两个点云的维度(字段)不同,但是点数相同时,可以通过函数pcl::concatenateFields将两个点云拼接,形成新的点云, 新的点云维度数变为两个点云的维度数之和,点数不变,例如:

pcl::PointCloudpcl::PointXYZ> cloud_a;

pcl::PointCloudpcl::Normal> cloud_b;

cloud_a的数据为:

1,1,1

2,2,2

cloud_b的数据为:

3,3,3

4,4,4

此时,cloud_a维度为都为3(x,y,z),cloud_b的维度为也为3(normal[0],normal[1],normal[2]),cloud_a和cloud_b的点数都是2,这时,执行

pcl::PointCloudpcl::PointNormal> cloud_c;

pcl::concatenateFields(cloud_a, cloud_b, cloud_c);

则cloud_c的数据为:

1,1,1,3,3,3

2,2,2,4,4,4

cloud_c的维度(字段)变为6(x,y,z,normal[0],normal[1],normal[2]),但是点数仍然为2。

PCL点云库 点云拼接相关推荐

  1. (学习笔记)PCL点云库的基本使用

    目录 前言 1.理解点云库 1.1.不同的点云类型 1.2.PCL中的算法 1.3.ROS的PCL接口 2.创建第一个PCL程序 2.1.创建点云 2.2.加载点云文件 2.3.创建点云文件 2.4. ...

  2. 一文详解点云库PCL

    3D is here: Point Cloud Library (PCL) 摘要: 随着新型,低成本的3D传感器硬件的出现(例如Kinect),以及科研人员在高级点云处理研究上的不断努力,3D感知在机 ...

  3. 编译安装PCL点云库,Kinect2驱动,乐视Astra相机驱动

    编译安装PCL点云库 安装方法一 3d点云安装 apt-cache cearch pcl 安装 sudo apt install 上面查出来的 opencv不建议用以上方法因为需要 安装 opencv ...

  4. ubuntu pcl 点云库使用

    pcl 点云库使用(cmakeList.xtx) cmake_minimum_required(VERSION 2.6) project(pcl_test)   find_package(PCL 1. ...

  5. PCL点云库:ICP算法

    ICP(Iterative Closest Point迭代最近点)算法是一种点集对点集配准方法.在VTK.PCL.MRPT.MeshLab等C++库或软件中都有实现,可以参见维基百科中的ICP Alg ...

  6. PCL点云库(Point Cloud Library)简介

    PCL点云库(Point Cloud Library)简介 什么是PCL PCL(Point Cloud Library)是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C++编程库,它实现了 ...

  7. 点云库PCL学习笔记 -- 点云滤波Filtering -- 3. StatisticalOutlierRemoval 统计滤波器

    点云库PCL学习笔记 -- 点云滤波Filtering -- 3.StatisticalOutlierRemoval 统计滤波器 StatisticalOutlierRemoval 统计滤波器相关简介 ...

  8. 《PCL点云库学习VS2010(X64)》Part 34 旋转平移矩阵用法

    <PCL点云库学习&VS2010(X64)>Part 34 旋转平移矩阵用法 1.变换与投影矩阵讲解: https://en.wikipedia.org/wiki/Transfor ...

  9. Kinectfusion开源实现_配置Kinfu环境_Cmake编译PCL点云库_Kinect3D重建

    Kinectfusion开源实现-配置Kinfu环境-Cmake编译PCL点云库 注: 1.此教程在win10_x64.VS2010_x86环境下,配置运行Kinfu.编译PCL点云库成功,其他环境也 ...

最新文章

  1. 使用let替换var实现块级作用域的小发现
  2. linq学习笔记(2):DataContext
  3. 平板电脑怎么投屏到电视上_电脑屏幕投屏到平板、IPAD、艾派德
  4. 关于jenkins的安装及自动部署
  5. Linux内核:关于中断你需要知道的【转】
  6. LeetCode 475. Heaters
  7. 什么是分布式任务调度
  8. java金字塔的流程图,R中的金字塔图
  9. 工作92:500错误
  10. 05.序列模型 W2.自然语言处理与词嵌入
  11. linux网卡为啥叫ens160这些,centos8将网卡名ens160修改为eth0
  12. 程序员谨防加班猝死之十大建议(转)
  13. idesk卸载教程_iDesk助手使用帮助
  14. Android开发案例源码解析之使用sqlite数据库记录并读取GPS信息
  15. 计算机基础到底是哪些基础?为什么很重要!
  16. 李一男起伏人生如高速过山车 栽大跟头后还回得来吗
  17. metasequoia :Summoner
  18. 8个重要的电子邮件黑名单及如何从黑名单中删除?
  19. NLP 实战 (7) | 热榜算法更新
  20. 常见的数据埋点方式介绍

热门文章

  1. boorstrap v5轮播图
  2. 使用 iPhone 手机作为 UE5 中的拍摄设备(安卓可能相同)
  3. 软件测试基础知识-测试用例设计方法
  4. 网站性能优化总结(前端篇)
  5. 如何使用Python对中文文档进行可视化的主题建模?
  6. 国际PEO和EOR服务2022年全球行业分析报告
  7. 儿童七彩浏览器 隐私声明
  8. 如何制作并使用ico图标呢?
  9. 中信量化项目总结报告
  10. C语言 基础数字输出左直角三角形