视觉SLAM十四讲需要提前知道的数学基础知识

news2024/11/13 8:55:30

学习视觉SLAM十四讲之前的必备数学基础知识

  • 1. 正交矩阵
  • 2. 线性关系
  • 3. 求矩阵的逆
  • 4. 叉乘
  • 5.反对称矩阵
  • 6. 复数

1. 正交矩阵

定义: 设n阶矩阵A满足AAT=ATA=I ,则称A为正交矩阵
性质:
以下为手写,从小字丑,请多担待。。
正交矩阵手写

2. 线性关系

定义: 两个变量之间存在一次方函数关系,就称它们之间存在线性关系。正比例关系是线性关系中的特例,反比例关系不是线性关系
向量的线性关系:
在这里插入图片描述
注意: 这里主要说明以下自己理解的线性关系分为函数线性关系和向量的线性关系,因为在SLAM中,我们使用的是向量的线性关系,因此这里主要理解向量的线性相关和无关即可。在此自己通俗的将向量的线性相关理解为 b ⃗ = k a ⃗ \vec{b}=k\vec{a} b =ka ,也就是函数中的正比例关系。

3. 求矩阵的逆

定义: 对于矩阵 A ∈ F m × n A\in F^{m×n} AFm×n ,如果存在 B ∈ F m × n B\in F^{m×n} BFm×n ,使得 A B = I m ∈ F m AB= I_m\in F^m AB=ImFm,且 B A = I m ∈ F n BA= I_m\in F^n BA=ImFn,则称 A A A可逆,称 B B B A A A的逆矩阵,又记作 A − 1 A^{-1} A1.
逆矩阵具有唯一性!!!
这里介绍两种最简单的方法:
方法一: 待定系数法
在这里插入图片描述
方法二: 初等行变换
已知矩阵 A A A和对应维度的单位矩阵 I I I,先写出增广矩阵 A ∣ I A|I AI,然后对 A A A进行高斯消元,在对 A A A消元的同时,单位矩阵I也在变,直到把 A A A消成单位矩阵, A A A旁边的单位矩阵也会随之变成 A A A的逆矩阵。在这里插入图片描述
有两个博主对这一部分介绍的十分详细,可以参考:
https://blog.csdn.net/daduzimama/article/details/120509856
https://zhuanlan.zhihu.com/p/422839754

4. 叉乘

叉乘(Cross Product) 又称向量积(Vector Product)
在空间中有两个向量: a ⃗ = ( x 1 , y 1 , z 1 ) \vec{a}=(x_1,y_1,z_1) a =(x1,y1,z1) b ⃗ = ( x 2 , y 2 , z 2 ) \vec{b}=(x_2,y_2,z_2) b =(x2,y2,z2) a ⃗ \vec{a} a b ⃗ \vec{b} b 之间的夹角为 θ \theta θ
代数角度计算:
a ⃗ × b ⃗ = ( y 1 z 2 − z 1 y 2 , z 1 x 2 − x 1 z 2 , x 1 y 2 − y 1 x 2 ) \vec{a}×\vec{b}=(y_1z_2-z_1y_2,z_1x_2-x_1z_2,x_1y_2-y_1x_2) a ×b =(y1z2z1y2,z1x2x1z2,x1y2y1x2)
几何角度计算:( n ⃗ \vec{n} n a ⃗ \vec{a} a b ⃗ \vec{b} b 所构成平面的单位向量)
a ⃗ × b ⃗ = ∣ a ⃗ ∣ ∣ b ⃗ ∣ s i n θ n ⃗ \vec{a}×\vec{b}=|\vec{a}||\vec{b}|sin\theta\vec{n} a ×b =a ∣∣b sinθn
其运算结果是一个向量,并且与这两个向量都垂直,是这两个向量所在平面的法线向量。使用右手定则确定其方向。
在这里插入图片描述
几何意义:
如果以向量 a ⃗ \vec{a} a b ⃗ \vec{b} b 为边构成一个平行四边形,那么这两个向量外积的模长与这个平行四边形的面积相等。
在这里插入图片描述
参考文章:https://zhuanlan.zhihu.com/p/148780358

5.反对称矩阵

定义: A A A n n n维方阵,若有 A T = − A A^T=-A AT=A,则称矩阵 A A A反对称矩阵
对于反对称矩阵,它的主对角线上的元素全为零,而位于主对角线两侧对称的元素反号。
反对称矩阵具有很多良好的性质,如若 A A A为反对称矩阵,则 A T , λ A A^T,λA ATλA均为反对称矩阵;
A , B A,B A,B均为反对称矩阵,则 A ± B A±B A±B也为反对称矩阵;
A A A为反对称矩阵, B B B为对称矩阵,则 A B − B A AB-BA ABBA为对称矩阵;
奇数阶反对称矩阵的行列式必为0。反对称矩阵的特征值是0或纯虚数,并且对应于纯虚数的特征向量的实部和虚部形成的实向量等长且互相正交。
性质:
在这里插入图片描述

6. 复数

复数由实部和虚部组成,复数相加时实部和实部相加,虚部和虚部相加,复数相乘时则利用 i 2 = 1 i^2 =1 i2=1
有关复数的介绍,发现了一篇质量较高的文章:https://zhuanlan.zhihu.com/p/94300315
这里我们主要说一下复数中存在的运算, q 1 = a + b i , q 2 = c + d i q_1=a+bi,q_2=c+di q1=a+bi,q2=c+di
复数的加法运算
q 1 + q 2 = ( a + b i ) + ( c + d i ) = ( a + c ) + ( b + d ) i q_1+q_2=(a+bi)+(c+di)=(a+c)+(b+d)i q1+q2=(a+bi)+(c+di)=(a+c)+(b+d)i
复数的减法运算
q 1 + q 2 = ( a + b i ) − ( c + d i ) = ( a − c ) + ( b − d ) i q_1+q_2=(a+bi)-(c+di)=(a-c)+(b-d)i q1+q2=(a+bi)(c+di)=(ac)+(bd)i
复数的乘法运算
q 1 q 2 ( a + b i ) ( c + d i ) = ( a c − b d ) + ( b c + a d ) i q_1q_2(a+bi)(c+di)=(ac-bd)+(bc+ad)i q1q2(a+bi)(c+di)=(acbd)+(bc+ad)i
复数的模长
∣ q 1 ∣ = a 2 + b 2 , ∣ q 2 ∣ = c 2 + d 2 , ∣ q 1 q 2 ∣ = ∣ q 1 ∣ ∣ q 2 ∣ |q_1|=\sqrt{a^2+b^2},|q_2|=\sqrt{c^2+d^2},|q_1q_2|=|q_1||q_2| q1=a2+b2 ,q2=c2+d2 ,q1q2=q1∣∣q2

复数的共轭
共轭复数,两个实部相等,虚部互为相反数的复数互为共轭复数(conjugate complex number)。当虚部不为零时,共轭复数就是实部相等,虚部相反,如果虚部为零,其共轭复数就是自身(当虚部不等于0时也叫共轭虚数)。复数z的共轭复数记作 z z z(上加一横),有时也可表示为 Z ∗ Z* Z。同时, 复数 z z z(上加一横)称为复数z的复共轭(complex conjugate)。
在这里插入图片描述
复数的:
q − 1 = q ∗ / ∣ q ∣ 2 q^{-1}=q^*/|q|^2 q1=q/∣q2
按此定义, q q − 1 = q − 1 q = 1 qq^{-1} = q^{-1}q=1 qq1=q1q=1

目前知道这些知识后,在第三中是可用的。

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

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

相关文章

第二阶段、数据库的使用

数据库:在这里一mysql为例 首先使用数据库就必须安装 安装数据库(mysql) 数据库的安装和下载 数据库的使用和命令 连接和断开服务器 启动mysql服务: sudo service mysql start 停止mysql服务: sudo service mysql …

加载Bert预训练模型时报错:huggingface_hub.utils._validators.HFValidationError

具体报错情况如下: huggingface_hub.utils._validators.HFValidationError: Repo id must be in the form repo_name or namespace/repo_name: ./bert/bert_base_cased_ICEWS14. Userepo_typeargument if needed. 很简单,我download下来的代码没有并没有…

Java中生成指定长度验证码

Java中生成指定长度验证码 1.方法一:执行效率高 /*** 生成指定位数验证码,纯数字运算效率最高** param maxSize* return*/public static Long generateRandomCode(int maxSize) {if (maxSize < 0) {throw new BizException(ErrorCodeEnum.PARAM_ERROR);}//小数点后16位的do…

Mysql内外连接的详细用法与示例

当处理关系型数据库时&#xff0c;连接操作是非常常见且重要的。MySQL提供了多种连接类型&#xff0c;其中包括内连接、外连接和交叉连接。在本篇博文中&#xff0c;我们将详细介绍MySQL中内连接和外连接的用法&#xff0c;并提供一些复杂的例子来帮助理解。 文章目录 1.内连接…

计网之运输层

因特网协议概述 常用协议应用层HTTP&#xff08;超文本传输协议&#xff09;、FTP&#xff08;文件传输协议&#xff09;、SMTP&#xff08;简单邮件传输协议&#xff09;、DNS&#xff08;域名系统&#xff09;、DHCP&#xff08;动态主机配置协议&#xff09;、SNMP&#xff…

Texlive2023安装过程中点击install-tl-windows.bat一直闪退

我安装了Texlive的镜像&#xff0c;因为数学建模会用到&#xff0c;在安装过程中我遇到了一个问题&#xff1a; install-tl-windows.bat一直闪退 当我解压完texlive.iso的时候,正常应该点击.bat文件就能出现页面&#xff0c;但是我cmd窗口一直闪退 怎样解决&#xff1f; 这个…

为什么从 MVC 到 DDD,架构的本质是什么?

作者&#xff1a;小傅哥 博客&#xff1a;https://bugstack.cn 沉淀、分享、成长&#xff0c;让自己和他人都能有所收获&#xff01;&#x1f604; 本文来自于小傅哥新编写的 《Java简明教程》 系列内容&#xff0c;本教程意在于通过简单、明了、清晰的成体系内容&#xff0c;教…

UE4/5用GeneratedDynamicMeshActor创建多个模型,并发生Boolean(两个网格体之间的,有3种模式)

目录 制作 只创建一个球&#xff1a; 效果&#xff1a; 制作多个效果&#xff1a; 制作&#xff1a; 效果&#xff1a; 代码&#xff1a; 一代码&#xff1a; 二代码&#xff1a; 制作 假如我们创建两个模型&#xff0c;第一个是之前就创建的正方体&#xff0c;而第二…

PHP:查询数据库,并将数据传给前端(在script中直接嵌套php语句)

例子&#xff1a;在php中定义数据&#xff0c; 并将数据通过js在控制台输出 <script><?php// 在这里插入你的PHP代码&#xff0c;例如执行查询操作获取数据$data array(array(name > Alice, age > 25),array(name > Bob, age > 30),array(name > Ch…

(7)深度学习学习笔记-卷积层

文章目录 前言一、实现二维互相关和卷积层二、用nn的Conv2d给定输入X和输出Y&#xff0c;生成核K1.引入库2.简单实现 来源 前言 在卷积层中&#xff0c;输入张量和核张量通过互相关运算产生输出张量。 阴影部分是第一个输出元素&#xff0c;以及用于计算输出的输入张量元素和…

【直播预告】HarmonyOS极客松赋能直播第四期:HarmonyOS开发经验分享

直播预约通道&#xff1a;【直播预告】HarmonyOS极客松赋能直播第四期&#xff1a;HarmonyOS开发经验分享

【数据库】使用DBever连接人大金仓数据库

下载安装DBever 首先需要下载并安装DBever&#xff0c;可以在DBever官网上下载最新版的安装程序&#xff0c;根据提示进行安装即可。 下载驱动程序 首先需要从人大金仓官方网站下载适用于DBever的驱动程序。下载完成后&#xff0c;将驱动程序保存到本地计算机上。 添加驱动…

docker deploy rancher

docker run --privileged -d --name rancher --restartunless-stopped -p 80:80 -p 443:443 rancher/rancher:latest docker ps docker logs 4d890c673011 2>&1 | grep “Bootstrap Password:”

LCD屏幕显示文字(含交叉编译freetype字体矢量库)

文章目录 字符的编码方式编码与字体ASCIIANSIUNICODEUNICODE 编码实现 ASCII 字符的点阵显示ASCII字符文件主要代码 中文字符的点阵显示指定编码格式汉字的点阵数据&#xff08;汉字区位码&#xff09; 交叉编译 freetype 矢量库程序运行的一些基础知识怎么确定“系统目录”&am…

【08】STM32·HAL库开发-HAL库介绍 | STM32Cube固件库介绍 | HAL库框架结构 | 如何使用HAL库及使用注意事项

目录 1.初识HAL库&#xff08;了解&#xff09;1.1CMSIS简介1.2HAL库简介 2.STM32Cube固件包浅析&#xff08;了解&#xff09;2.1如何获取STM32Cube固件包&#xff1f;2.2STM32Cube固件包文件夹简介2.3CMSIS文件夹关键文件2.3.1CMSIS标准规定软件包目录2.3.2Device和Include文…

背光图像增强论文调研

背光图像增强 M. Akai, Y. Ueda, T. Koga and N. Suetake, “A Single Backlit Image Enhancement Method For Improvement Of Visibility Of Dark Part,” 2021 IEEE International Conference on Image Processing (ICIP), Anchorage, AK, USA, 2021, pp. 1659-1663, doi: 10…

山西电力市场日前价格预测【2023-07-05】

日前价格预测 预测明日&#xff08;2023-07-05&#xff09;山西电力市场全天平均日前电价为168.88元/MWh。其中&#xff0c;最高日前电价为334.22元/MWh&#xff0c;预计出现在20: 30。最低日前电价为0.00元/MWh&#xff0c;预计出现在09: 45-17: 15。 以上预测仅供学习参考&a…

【Git】中文显示数字的问题的解决方案

目录 问题截图解决方案 问题截图 运行git status命令&#xff0c;会出现图片中不正常显示中文的问题 解决方案 设置终端: 右键窗口头部 -> Options...执行命令: git config --global core.quotepath false

电脑屏幕监控软件是什么?有哪些功能?

电脑屏幕监控软件是一种用于监视和记录电脑屏幕活动的工具。它可以捕捉屏幕上的所有操作&#xff0c;包括键盘输入、鼠标点击、应用程序使用等。这些软件通常被用于家庭、教育机构和企业等环境中&#xff0c;以确保电脑的安全和监督员工或孩子的活动。 为什么需要电脑屏幕监控软…

STM32实战项目—密码锁

该项目的完整工程可以在博主的资源里找到&#xff0c;仅供参考。 文章目录 一、任务要求二、实现方法2.1 输入密码判断2.2 管理员模式2.3 修改密码 三、程序设计3.1 输入密码判断3.2 进入管理员模式3.3 修改密码 四、问题总结4.1 输入内容一直提示Error4.2 密码判断一直错误 五…