pcl--第八节 点云配准数学原理

news2025/1/13 17:10:41

学习目的:

  1. 能够大致看懂技术算法的论文(理论理解能力)
  2. 能够将论文和代码对应起来(代码追踪能力)
  3. 知道常见算法函数的代码实现方式(算法实现能力)

注意!不要求能够推导、证明算法论文,因为这是理论研究者的重心。这不是我们应用型人才的重心,我们的重心是能够将理论更好的应用于实践。一定要有的放矢,提升自己的核心价值。

概念基础¶

三维点云的配准即是通过对点云的旋转、平移进行对齐,进而得到一个4x4的变换矩阵,包含3x3的旋转矩阵和3x1的平移向量。旋转矩阵可以通过罗格里格斯变换成一个1x3的旋转向量,故而最终是6个变量。

常用的点云配准算法是:迭代最近点算法(ICP),正态分布变换配准(NDT),基于特征不变性的配准 (ORB/FPFH/NARF)

其他演变算法及不同思路算法:

ICP拓展:稳健ICP、point to plane ICP、point to line ICP、MBICP、GICP

NDT拓展:NDT 3D、Multil-Layer NDT

其他:4PCS、Super-4PCS、FPCS、KFPSC、SAC-IA、Line Segment Matching、ICL

  • ICP求解:四元数求解获得旋转矩阵、协方差矩阵求解SVD获得旋转矩阵
  • KD tree优化
  • NDT:probability density functions:PDF概率密度函数
  • 矩阵:正交矩阵,协方差矩阵、雅克比矩阵、黑塞矩阵
  • 概率统计:方差,标准差,正态分布,均匀分布

迭代最近点算法(ICP)¶

本例我们讲解基于奇异值分解(SVD)的方法求解迭代最近点算法(ICP)。目的是匹配两个点云集合。算出他们之间的变换关系。

除此之外还有基于四元数求解ICP。

 

求解步骤¶

1、求最大化目标函数

求最大化目标函数

2、矩阵进行SVD奇异值分解

02-矩阵进行SVD奇异值分解

3、正定矩阵迹的性质

03-正定矩阵迹的性质

4、根据迹性质得出目标函数最大化时R的解

04-根据迹性质得出目标函数最大化时R的解

5、ICP结果注意

05-ICP结果注意

正态分布变换配准(NDT)¶

NDT表示目标表面¶

直接使用点云来表示目标的表面是不够的,比如,点云不能显式的表示关于表面的信息(方向、平滑度、孔洞等)。根据数据采集器的不同,点云的内容也可能是低效的,需要大量不必要的存储信息。为了在远离数据采集器的地方能够得到足够的样本分辨率,通常需要采集大量的冗余数据。

正态分布变换( Normal Distributions Transform , NDT)是一种描述曲面的较好方式。该变换将点云映射到平滑的表面,通过一组局部概率密度函数 local probability density functions(PDFs)来描述,每个PDF描述了表面的一个小局域的形状。

该算法的第一部是将扫描到的内容所占据的空间分割成网格单元cells(2D下为正方形,3D下为正方体),然后基于每个cell内部点的分布,计算其PDF。每个单元cell中的PDF可以理解为内部点⃗x�→的生成器。换句话说,我们可以认为⃗x�→的位置是由PDF生成的。

image-20200507130025546

图6.1:一个2D的激光扫描仪在矿井坑道中扫描到的点,以及对应的PDFs描述的表面形状。本例中,每个小格子边长是2m,发光区域表示了高概率区域。PDFs只计算那些点数量大于5个的单元cell。

image-20200507134655888

图6.2:3D-NDT表面表示的隧道截面,从上面看。更亮、更密集的部分表示更高的概率。cell的边长为1米

正态分布给出了具有连续导数的点云的分段光滑表示。每个PDF都可以看作是局部表面的近似,描述了表面的位置以及它的方向和平滑度。二维激光扫描及其对应的正态分布如图6.1所示。图6.2描述了矿井巷道扫描的三维常规分布。

正态分布

由于目前的工作主要集中在正态分布上,让我们更仔细地研究一下单变量和多变量正态分布的特征。在一维情况下,一个标准随机正态分布的变量x具有一个确定的预期变量μ(均值)和一个用来表示不确定性的变量σ(方差)。

如方程6.1所描述的多元概率函数p(x)在一维的情况下即可以退化到以上6.4的函数。在多维情况下,均值和方差将以均值向量 μ和协方差矩阵 Σ 的形式描述。协方差矩阵的对角元素表示每个变量的方差,非对角元素表示变量的协方差。图6.3说明了在一维、二维、三维情况下的正态分布。

image-20200507182819685

在2D和3D情况下,表面的方向信息和平滑度信息可以从协方差矩阵的特征向量和特征值中估算出来,特征向量描述了分布的主要部分:即一个正交向量集合,对应于各变量协方差的主方向。根据方差的比例,二维正态分布可以是点形(如果方差相似)或线形(如果一个比另一个大得多),或者介于两者之间。在三维情况下,参见图6.4的描述,一个正态分布可以表现为一个点或球体(如果方差的大小在各个方向上差不多),一条线(如果一个方向的方差远远大于另两个方向)或一个平面(如果一个方向的方差远小于另两个方向)。

image-20200507184050048

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1029967.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

导航菜单布局

制作包含logo、菜单、按钮的3分离布局菜单 完成效果 准备html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…

Multisim14.0仿真(二十)74LS161 4位同步二进制加法计数器

一、仿真原理图&#xff1a; 二、仿真效果图&#xff1a;

C/C++内存管理相关知识点

1.内存分布 C/C将内存大体上分为四个区域&#xff1a;栈区、堆区、静态区&#xff08;数据段&#xff09;、常量区&#xff08;代码段&#xff09;。 栈区&#xff1a;用来存储函数调用时的临时信息的结构&#xff0c;存放为运行时函数分配的局部变量、函数参数、返回数据、返…

解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制

一、引言 癌症是全球范围内健康领域的一大挑战&#xff0c;早期预测和诊断对于提高治疗效果和生存率至关重要。机器学习在癌症预测中发挥了重要作用&#xff0c;可以从临床数据中学习并构建癌症预测模型&#xff0c;帮助医生进行早期检测和干预&#xff0c;提高患者的生活质量和…

kubernetes集群证书过期启动失败问题解决方法

1、问题现象 执行kubectl命令异常报告 [rootk8s-master1 ~]# kubectl get node The connection to the server 192.168.227.131:6443 was refused - did you specify the right host or port? [rootk8s-master1 ~]# 查看etcd的日志&#xff0c;报错信息如下 {"level&…

服务器性能测试监控平台export+prometheus(普罗米修斯)+grafana搭建

1. export 数据采集工具 简介&#xff1a; export是prometheus是的数据采集组件的总称&#xff0c;它可以将采集到的数据转为prometheus支持的格式 node_export: 用来监控服务器硬件资源的采集器&#xff0c;端口号为9100mysql_export: 用来监控mysql数据库资源的采集器&…

【Java 基础篇】Java线程:volatile关键字与原子操作详解

在多线程编程中&#xff0c;确保线程之间的可见性和数据一致性是非常重要的。Java中提供了volatile关键字和原子操作机制&#xff0c;用于解决这些问题。本文将深入讨论volatile关键字和原子操作的用法&#xff0c;以及它们在多线程编程中的重要性和注意事项。 volatile关键字…

vue项目升级webpack

vue项目升级webpack 目录 1. vue项目中影响webpack版本的是什么 2.理解package.json中库前缀^和~区别 3.升级webpack4到5操作 1. vue项目中影响webpack版本的是什么 答案是&#xff1a;vue/cli-service版本 2.理解package.json中库前缀^和~区别 x.y.z x代表大版本&#xf…

ES修改字段的数据类型

-- mysql修改字段数据类型语句 ALTER TABLE 表名 MODIFY COLUMN 列名 修改的字段类型;-- hive 修改字段数据类型语句 ALTER TABLE 表名 CHANGE COLUMN 列名 修改的字段类型;--es修改字段数据类型语句无法通过一个语句进行修改。思路&#xff1a; 1、对修改字段重新建修改类型的…

Baichuan2大模型本地部署

作为今年九月份开源的一个中午大语言模型&#xff0c;Baichuan2已经在各个维度上取得了亮眼的结果&#xff0c;效果已经超过了当前火热的ChatGLM2-6B&#xff0c;可以通过自然语言交互的方式为你提供以下服务&#xff1a; 提供知识&#xff1a;我可以回答各领域的问题&#xf…

2023年科技核心目录已更新,24年选择刊物别选错!这些医药类期刊建议收藏!

2023年科技核心目录已更新&#xff0c;医药类期刊有这些&#xff08;部分&#xff09;&#xff0c;编码和期刊名称都给大家整理出来了。点常笑医学网查看全部科技核心期刊目录。 G218 ACTA PHARMACEUTICA SINICA B G001 ACTA PHARMACOLOGICA SINICA G780 CANCER BIOLOGY &am…

交叉编译错误:小心符号链接

交叉编译在进行到链接环节时出现找不到库文件的错误&#xff0c;如下&#xff1a; 一般来说&#xff0c;链接时出现库查找不到则需要将库路径添加到link_directories或者target_link_directories, 这里说查找不到libblas.so.3和liblapack.so.3&#xff0c;那么查找这两个库的路…

9.2 【MySQL】独立表空间结构

9.2.1 区&#xff08;extent&#xff09;的概念 对于16KB的页来说&#xff0c;连续的64个页就是一个 区 &#xff0c;也就是说一个区默认占用1MB空间大小。不论是系统表空间还是独立表空间&#xff0c;都可以看成是由若干个区组成的&#xff0c;每256个区被划分成一组。画个图…

视频文本检索(ICCV 23):Unified Coarse-to-Fine Alignment for Video-Text Retrieval

论文作者&#xff1a;Ziyang Wang,Yi-Lin Sung,Feng Cheng,Gedas Bertasius,Mohit Bansal 作者单位&#xff1a;UNC Chapel Hill 论文链接&#xff1a;http://arxiv.org/abs/2309.10091v1 项目链接&#xff1a;https://github.com/Ziyang412/UCoFiA 内容简介&#xff1a; …

怎么在OPPO手机桌面上添加文字?便签桌面插件添加教程

很多年轻女性在选择手机时&#xff0c;都比较青睐于设计时尚靓丽、轻薄且续航好、系统流畅、拍照清晰的OPPO手机&#xff0c;并且OPPO为不同的用户提供了高中低不同价格档位的手机型号&#xff0c;能够满足绝大多数女性消费者的使用需求。 不过有不少OPPO手机用户表示&#xf…

Linux 打包压缩命令

目前 linux 中打包和压缩的命令很多&#xff0c;最常用的方法有 zip、gzip、bzip2、xz、tar 1.zip 压缩包 //制作 //-r 递归 表示将指定的目录下的所有子目录以及文件一起处理 zip -r public.zip public//解压 unzip public.zip unzip public.zip -d dir//查看 unzip -l publi…

ubuntu 18.04 搭建isaacgym学习环境,并运行legged_gym

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、安装anaconda二、使用conda创建python版本为3.8的虚拟环境三、安装pytorch四、isaac-gym下载安装五、安装legged_gym总结 前言 系统&#xff1a;ubuntu18.…

WebGL HUD(平视显示器)

目录 HUD&#xff08;平视显示器&#xff09; 如何实现HUD 示例程序&#xff08;HUD.html&#xff09; 示例程序&#xff08;HUD.js&#xff09; 代码详解 在网页文字上方显示三维物体 代码详解 HUD&#xff08;平视显示器&#xff09; 平视显示器&#xff08;head…

第3章 MongoDB数据库操作<练习>

1. 创建数据库&#xff0c;名为zhangsan &#xff08;zhangsan修改为自己的姓名全 拼&#xff09; use wuweixian db.createCollection("wwx") 2. 批量插入多条文章评论用于测试 db.wwx.insertMany([ {"_id":"1","articleid":"…

沉降安全监测之静力水准仪安装与精度分析

静力水准仪的安装使用步骤如下&#xff1a; 1、选择合适的安装位置&#xff1a;静力水准仪应该安装在平稳且不易受到外力影响的地面上&#xff0c;以确保测量结果的准确性。同时&#xff0c;应避免安装在有风的地方&#xff0c;因为风会影响水准仪的读数。 2、安装支架&#…