高翔【自动驾驶与机器人中的SLAM技术】学习笔记(三)基变换与坐标变换;微分方程;李群和李代数;雅可比矩阵

一、基变换与坐标变换 

字小,事不小。

因为第一反应:坐标咋变,坐标轴就咋变呀。事实却与我们想象的相反。这俩互为逆矩阵。

第一次读没有读明白,后面到事上才明白。

起因是多传感器标定:多传感器,就代表了多个坐标系,多个基底。激光雷达和imu标定。这个标定程序,网上,我搜了一下。

  • 浙大的LI-Calib,
  • 港大的LiDAR_IMU_Init

跑测的结果,始终是相反的。跟上面的情况对上了。所以我们必须要弄懂这个互为逆矩阵咋回事。

1、基变换公式:

旧基底:x_1,x_2,...,x_n

新基底:y_1,y_2,...,y_n

新基底下向量用旧基底线性表示:

\left\{\begin{matrix} y_1 = c_{11}x_1 + c_{21}x_2 + ...+ c_{n1}x_n & & & \\ y_2 = c_{12}x_1 + c_{22}x_2 + ...+ c_{n2}x_n & & & \\ ...... & & & \\ y_n = c_{1n}x_1 + c_{2n}x_2 + ...+ c_{nn}x_n \end{matrix}\right.
======>>>>>>>>>简化

\left ( y_1, y_2, ..., y_n \right ) = \left ( x_1, x_2, ..., x_n \right )C

Y = XC

C = \begin{bmatrix} c_{11} & c_{12} & ... & c_{1n}\\ c_{21} & c_{22} & ... & c_{2n}\\ ...& ... & ... & ...\\ c_{n1} & c_{n2} & ... & c_{nn}\\ \end{bmatrix}

 C为旧基底改变为新基底的过度(变换)矩阵。

2、坐标变换公式:

向量\underset{P}{\rightarrow}在新旧两组基下的坐标表示:

旧基坐标表示:\alpha = \left ( \xi_{1}, \xi_{2}, ..., \xi_{n} \right )^{T}

新基坐标表示:\beta = \left ( \eta_{1}, \eta_{2}, ...., \eta_{n} \right )^{T}

\underset{P}{\rightarrow} =(x_1, x_2, ..., x_n)\alpha = (y_1, y_2,..., y_n)\beta=(x_1, x_2, ..., x_n) C\beta \\ \Rightarrow \alpha = C\beta \\ \Rightarrow\beta = C^{-1}\alpha

结论:互为逆矩阵,也就解释了,为何标定时,求出来的是个相反的值了。





 二、 我那有限的微积分知识呀。

1、李群视角下运动学

我向读到此处的朋友请教,请给我一个指引,我需要看一下哪方面的知识。

我用有限的回忆,理解如下:如有不对,请大家给我指引一下。

{f}'(x) = f(x)\cdot w

一个函数的导数,是它自身乘以一个常数,第一反应:这个函数应该是e^x形式。然后有个系数w,这个函数呼之欲出了。

f(x) = Ce^{wx}

因为只考虑瞬时变化,所以:在t_0时刻附近的形式为:

f(x) = f(t_0)e^{(w(x - t_0))} = f(t_0)exp(w(x-t_0))

换成随时间变换的R(t)形式,并带入泊松方程。

R(t) = R(t_0)exp(w^{\wedge }(t - t_0))

然后联系指数映射形式:将时间差用\Delta t代替,新的李群R(t)是在R(t0)上瞬时扰动产生的,所以有了2.55的公式。

下一步泰勒展开:一阶展开。后面公式通顺了。

关注一下:泊松公式:记忆一下,对李群视角下的运动学公式:

李群(旋转矩阵这个李群)求导之后,是一个自身,乘以一个公式2.52的反对称矩阵,反对称矩阵都可以写成一个向量形式。

所以结论:旋转矩阵这个李群求导之后,就是原矩阵乘以一个向量(这个向量是反对称矩阵转的)

PS:公式中微分结果为

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【VSCode】安装 【ESP-IDF】插件及【ESP32-S3】新建工程和工程配置

一、搭建基础工程 二、基础工程的文件架构解析 三、调试相关工具介绍 1、串口下载2、JTAG 下载与调试 四、工程的文件架构解析 五、基础工程配置 一、搭建基础工程 在 VS Code 中新建 ESP-IDF 基础工程的步骤如下: 1、启动 VS Code 并打开命令面板 按下“Ctrl…

1小时上手Alibaba Sentinel流控安全组件

微服务的雪崩效应 假如我们开发了一套分布式应用系统,前端应用分别向A/H/I/P四个服务发起调用请求: 但随着时间推移,假如服务 I 因为优化问题,导致需要 20 秒才能返回响应,这就必然会导致20秒内该请求线程会一直处于阻…

科研绘图系列:R语言TCGA分组饼图(multiple pie charts)

介绍 在诸如癌症基因组图谱(TCGA)等群体研究项目中,为了有效地表征和比较不同群体的属性分布,科研人员广泛采用饼图作为数据可视化的工具。饼图通过将一个完整的圆形划分为若干个扇形区域,每个扇形区域的面积大小直接对应其代表的属性在整体中的占比。这种图形化的展示方…

代码审计 | .NET SqlSugar框架注入漏洞

01阅读须知 此文所节选自小报童《.NET 代码审计》专栏,主要内容有涉及的.NET目录和文件操作、SQL注入方向的敏感函数、还有不安全的配置导致的漏洞挖掘思路,对.NET代码审计感兴趣的朋友们可以解锁该电子报刊,解锁更多的报刊内容。 02基本介…

【06】LLaMA-Factory微调大模型——微调模型评估

上文【05】LLaMA-Factory微调大模型——初尝微调模型,对LLama-3与Qwen-2进行了指令微调,本文则介绍如何对微调后的模型进行评估分析。 一、部署微调后的LLama-3模型 激活虚拟环境,打开LLaMA-Factory的webui页面 conda activate GLM cd LLa…

C# Program to print pyramid pattern (打印金字塔图案的程序)

编写程序打印由星星组成的金字塔图案 例子 : 输入:n 6输出: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 我们强烈建…

Python 机器学习求解 PDE 学习项目——PINN 求解一维 Poisson 方程

本文使用 TensorFlow 1.15 环境搭建深度神经网络(PINN)求解一维 Poisson 方程: − Δ u f in Ω , u 0 on Γ : ∂ Ω . \begin{align} -\Delta u & f \quad & \text{in } \Omega,\\ u & 0 \quad & \text{on } \Gamma:\partial \Om…

Flink笔记整理(三)

Flink笔记整理(三) 文章目录 Flink笔记整理(三)五、DataStream API5.1Environment5.2 Source5.3 Transformation5.4 Sink 总结 五、DataStream API DataStream API是Flink的核心层API,一个Flink程序,其实本…

NoSQL之Redis非关系型数据库

目录 一、数据库类型 1)关系型数据库 2)非关系型数据库 二、Redis远程字典服务器 1)redis介绍 2)redis的优点 3)Redis 为什么那么快? 4)Redis使用场景 三、Redis安装部署 1&#xff0…

批量打断相交线——ArcGISpro 解决方法

在数据处理,特别是地理空间数据处理或是任何涉及图形和线条分析的场景中,有时候需要把相交的线全部从交点打断一个常见的需求。这个过程对于后续的分析、编辑、或是可视化展现都至关重要,因为它可以确保每条线都是独立的,避免了因…

c++ primer plus 第16章string 类和标准模板库, 16.3.3 对矢量可执行的其他操作

c primer plus 第16章string 类和标准模板库, 16.3.3 对矢量可执行的其他操作 c primer plus 第16章string 类和标准模板库, 16.3.3 对矢量可执行的其他操作 文章目录 c primer plus 第16章string 类和标准模板库, 16.3.3 对矢量可执行的其他操作16.3.3 对矢量可执行的其他操作…

DB-GPT:LLM应用的集大成者

整体架构 架构解读 可以看到,DB-GPT把架构抽象为7层,自下而上分别为: 运行环境:支持本地/云端&单机/分布式等部署方式。顺便一提,RAY是蚂蚁深度参与的一个开源项目,所以对RAY功能的支持应该非常完善。…

matlab 声音信号希尔伯特黄变换

1、内容简介 略 91-可以交流、咨询、答疑 2、内容说明 略 Hilbert-Huang变换(HHT)是一种基于经验的数据分析方法 方法。它的扩展基础是自适应的,因此它可以从非线性和非平稳过程中产生具有物理意义的数据表示。这个 适应性的优势是有代价…

MySQL --- 库的操作

一、创建数据库 create database [ if not exists ] 数据库名; // []中的为可选项 在创建库时,也可以指定数据库采用的字符集(character set)和数据库字符集的校验规则(collate) (当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集&#x…

运行 npm install 报错-4048

我在已经开发中的项目,执行 npm install 命令时,出现报错: 并且之前在帖子中提到的报错类型还不一样(帖子内容如下): 运行 npm run dev 总报错_运行npm run dev报错-CSDN博客 该报错内容主要为权限导致的&…

华清数据结构day5 24-7-22

1>使用栈,完成进制转换输入:一个整数,进制数输出:该数的对应的进制数 seqstack.h #ifndef SEQSTACK_H #define SEQSTACK_H #define MAX 10 #include"myhead.h" typedef int datatype;typedef struct {datatype *d…

Nginx详解(超级详细)

目录 Nginx简介 1. 为什么使用Nginx 2. 安装Nginx Nginx的核心功能 1. Nginx反向代理功能 2. Nginx的负载均衡 3 Nginx动静分离 Nginx简介 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协…

OpenCV分水岭算法watershed函数的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 描述 我们将学会使用基于标记的分水岭算法来进行图像分割。我们将看到:watershed()函数的用法。 任何灰度图像都可以被视为一个地形表…

199.二叉树的右视图(BFS)

给定一个二叉树的根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [] 输出: [] 解题…

centos/Ubuntu安装Java/Maven

上图就是今天在Linux环境下安装好Java和Maven后,打包Spring Boot项目的截图! 安装Java centos # 安装 yum install -y java-1.8.0-openjdk*# 查看版本检测是否成功安装 java -versionUbuntu # 更新软件包 sudo apt-get update# 安装 sudo apt-get in…