PCL common中常见的基础功能函数

2024-06-22 10:12

本文主要是介绍PCL common中常见的基础功能函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • 一、common模块中的头文件
      • 二、common模块中的基本函数
        • 1、angles.h
        • 2、centroid.h
          • 1)计算给定一群点的3D中心点,并且返回一个三维向量
          • 2)计算给定的三维点云的协方差矩阵。
          • 3)计算正则化的3*3的协方差矩阵以及给定点云数据的中心点
          • 4)利用一组点的指数对其进行一般的、通用的nD中心估计。
        • 3、common.h
          • 1)计算两个向量之间的角度
          • 2)同时计算给定点云数据的均值和标准方差
          • 3)在给定边界的情况下,获取一组位于框中的点
          • 4)给定点云数据中点与点之间的最大距离的值
          • 5)获取给定点云中的在XYZ轴上的最大和最小值
          • 6)计算由三个点pa、pb和pc构成的三角形的外接圆半径。
          • 7)获取点直方图上的最小值和最大值。
          • 8)根据给定的多边形的点云计算多边形的面积
        • 4、copy_point.h
          • 1)从Point_in把字段数据赋值到Point_out
        • 5、distance.h
          • 1)获取两条三维直线之间的最短三维线段
          • 2)获取点到线的平方距离(由点和方向表示)
          • 3)在给定的一组点中获得最大分段,并返回最小和最大点。
        • 6、eigen.h
          • 1)确定最小特征值及其对应的特征向量
          • 2)确定对称半正定输入矩阵给定特征值对应的特征向量
          • 3)确定对称半正定输入矩阵最小特征值的特征向量和特征值
          • 4)计算2x2矩阵的逆。
          • 5)计算3x3对称矩阵的逆。
          • 6)计算3x3矩阵的行列式
          • 7)获得唯一 的3D旋转,将Z轴旋转成(0,0,1)Y轴旋转成(0,1,0)并且两个轴是正交的。
          • 11)得到将origin转化为(0,0,0)的变换,并将Z轴旋转成(0,0,1)和Y方向(0,1,0)
          • 12)从给定的变换矩阵中提取欧拉角
          • 13)给定的转换中,提取XYZ以及欧拉角
          • 14)从给定的平移和欧拉角创建转换矩阵
          • 15)保存或者写矩阵到一个输出流中
          • 16)从输入流中读取矩阵
        • 7、intersection.h
          • 1)获取空间中两条三维直线作为三维点的交点。
        • 8、io.h
          • 1)获取指定字段的索引(即维度/通道)
          • 2)获取给定点云中所有可用字段的列表
          • 3)获取特定字段数据类型的大小(字节)。
          • 4)连接 pcl::PCLPointCloud2类型的点云字段

pcl_common中主要是包含了 PCL库常用的公共数据结构和方法,比如 PointCloud的类和许多用于表示 点,曲面,法向量,特征描述等点的类型,用于计算距离,均值以及协方差,角度转换以及几何变化的函数

对于各种点,特征的类型的数据结构在这里就不再一一举例说明,这需要根据实际情况而定。

这里主要介绍一下基本的常见的功能函数,这些函数其实用C++也可以自行实现,在PCL中提供了更多的重载接口,方便使用。

一、common模块中的头文件

angles.h 定义了标准的C接口的角度计算函数

centriod.h 定义了中心点的估算以及协方差矩阵的计算

commo.h 标准的C以及C++类,是其他common 函数的父类

copy_point.h 有一个简单的copy函数

distance.h 定义标准的C接口用于计算距离

eigen.h 一些线性代数函数

file_io.h 定义了一些文件帮助写或者读方面的功能。

random.h 定义一些随机点云生成的函数

geometry.h 定义一些基本的几何功能的函数

intersection.h 定义线与线相交的函数

norm.h 定义了标准的C方法计算矩阵的正则化

tim

这篇关于PCL common中常见的基础功能函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1083995

相关文章

Java如何用乘号来重复字符串的功能

《Java如何用乘号来重复字符串的功能》:本文主要介绍Java使用乘号来重复字符串的功能,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java乘号来重复字符串的功能1、利用循环2、使用StringBuilder3、采用 Java 11 引入的String.rep

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

C语言中的常见进制转换详解(从二进制到十六进制)

《C语言中的常见进制转换详解(从二进制到十六进制)》进制转换是计算机编程中的一个常见任务,特别是在处理低级别的数据操作时,C语言作为一门底层编程语言,在进制转换方面提供了灵活的操作方式,今天,我们将深... 目录1、进制基础2、C语言中的进制转换2.1 从十进制转换为其他进制十进制转二进制十进制转八进制十进

在 PyQt 加载 UI 三种常见方法

《在PyQt加载UI三种常见方法》在PyQt中,加载UI文件通常指的是使用QtDesigner设计的.ui文件,并将其转换为Python代码,以便在PyQt应用程序中使用,这篇文章给大家介绍在... 目录方法一:使用 uic 模块动态加载 (不推荐用于大型项目)方法二:将 UI 文件编译为 python 模

Python将字库文件打包成可执行文件的常见方法

《Python将字库文件打包成可执行文件的常见方法》在Python打包时,如果你想将字库文件一起打包成一个可执行文件,有几种常见的方法,具体取决于你使用的打包工具,下面就跟随小编一起了解下具体的实现方... 目录使用 PyInstaller基本方法 - 使用 --add-data 参数使用 spec 文件(

在React聊天应用中实现图片上传功能

《在React聊天应用中实现图片上传功能》在现代聊天应用中,除了文字和表情,图片分享也是一个重要的功能,本文将详细介绍如何在基于React的聊天应用中实现图片上传和预览功能,感兴趣的小伙伴跟着小编一起... 目录技术栈实现步骤1. 消息组件改造2. 图片预览组件3. 聊天输入组件改造功能特点使用说明注意事项

基于Redis实现附近商铺查询功能

《基于Redis实现附近商铺查询功能》:本文主要介绍基于Redis实现-附近商铺查询功能,这个功能将使用到Redis中的GEO这种数据结构来实现,需要的朋友可以参考下... 目录基于Redis实现-附近查询1.GEO相关命令2.使用GEO来实现以下功能3.使用Java实现简China编程单的附近商铺查询4.Red

使用Python实现实时金价监控并自动提醒功能

《使用Python实现实时金价监控并自动提醒功能》在日常投资中,很多朋友喜欢在一些平台买点黄金,低买高卖赚点小差价,但黄金价格实时波动频繁,总是盯着手机太累了,于是我用Python写了一个实时金价监控... 目录工具能干啥?手把手教你用1、先装好这些"食材"2、代码实现讲解1. 用户输入参数2. 设置无头浏