视觉SLAM第一讲

第一讲-预备知识

SLAM是什么?

SLAM(Simultaneous Localization and Mapping)是同时定位与地图构建。

它是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动

SLAM 的目的是解决“定位”与“地图构建”这两个问题。当用相机作为传感器时,我们要做的就是根据一张张连续运动的图像(它们形成了一段视频),从中快速推断、跟踪相机的运动,以及周围环境的情况。

本书中会介绍SLAM 所牵涉的背景知识,例如射影几何、计算机视觉、状态估计理论、李群李代数等。完整的 SLAM 系统分成几个模块:视觉里程计、后端优化、建图,以及回环检测

代码

本书所有源代码均托管在 GitHub 上:

GitHub - gaoxiang12/slambook2: edition 2 of the slambook

线性代数基础知识

线性代数是研究线性问题的代数理论。线性是指可加性和比例性(齐次性)。

从实际中来的数学问题无非分为两类:一类线性问题,一类非线性问题。线性问题是研究最久、理论最完善的;而非线性问题则可以在一定基础上转化为线性问题求解。因此遇到一个具体的问题,首先判断是线性还是上非线性的;其次若是线性问题如何处理,若是非线性问题如何转化为线性问题。

行列式的几何意义是指行列式的行向量或列向量所构成的平行多面体的有向体积。

矩阵的几何意义:线性空间上的线性映射。其作用的主要过程是对一个向量进行旋转和缩放的综合过程(即线性变换的过程)。可以把矩阵看做是列向量的数组。

矩阵乘法不满足交换律,左乘不等于右乘。

高斯分布

高斯分布,又称为正态分布,是一种在概率论和统计学中非常重要的连续概率分布。

高斯分布的定义

一个一维的高斯分布由两个参数确定:均值(mean)( μ \mu μ)和方差(variance)( σ 2 \sigma^2 σ2)。其概率密度函数(PDF)为:
在这里插入图片描述

特性
  1. 对称性:正态分布的图形是关于均值 ( μ \mu μ) 对称的钟形曲线。
  2. 均值( μ \mu μ):正态分布的中心位置。
  3. 方差( σ 2 \sigma^2 σ2)和标准差( σ \sigma σ):决定分布的宽度,标准差越大,分布越宽,曲线越平坦。
  4. 68-95-99.7 规则:在正态分布中,大约68%的数据落在均值( ± \pm ±)1个标准差范围内,大约95%的数据落在均值( ± \pm ±)2个标准差范围内,大约99.7%的数据落在均值( ± \pm ±)3个标准差范围内。
多维高斯分布

多维(即多变量)高斯分布或正态分布是指在高维空间中的正态分布,它由均值向量 ( μ \mathbf{\mu} μ) 和协方差矩阵 ( Σ \mathbf{\Sigma} Σ) 确定。其概率密度函数为:
$f(\mathbf{x}) = \frac{1}{(2\pi)^{k/2} |\mathbf{\Sigma}|^{1/2}} \exp\left(-\frac{1}{2} (\mathbf{x} - \mathbf{\mu})^T \mathbf{\Sigma}^{-1} (\mathbf{x} - \mathbf{\mu})\right) $

其中 ( x \mathbf{x} x) 是 (k) 维向量,( μ \mathbf{\mu} μ) 是 (k) 维均值向量,( Σ \mathbf{\Sigma} Σ) 是 ( k × k k \times k k×k) 协方差矩阵。

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

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

相关文章

长效IP有哪些应用场景?

不同于经常重置的短效IP,长效IP以其长久稳定的特性,为各行各业提供了更为广阔的应用舞台。今天,就让我们一起探索极光http这一长效IP服务的魅力,看看它是如何成为众多领域首选的。 1. 远程工作的稳定后盾 在远程办公日益普及的今…

昇思25天学习打卡营第23天|LSTM+CRF序列标注

Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|(一)序列标注与条件随机场的关系 Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|(二)CRF模型构建 Mindspore框架CRF条件随机场概率图模型实现文本…

【Beyond Compare】Beyond Compare下载、安装与使用详细教程

目录 🌺1 概述 🎄2 Beyond Compare 安装包下载 🌼3 安装详细教程 🍂4 免费注册 🌍5 使用详情 🌺1 概述 Beyond Compare 是一款强大的文件和文件夹比较工具,广泛应用于软件开发、文档管理和…

Web动画(lottie篇)

一、Lottie简介 Lottie是一个库,可以解析使用AE制作的动画(需要用bodymovin导出为json格式),支持web、ios、android和react native。在web侧,lottie-web库可以解析导出的动画json文件,并将其以svg或者canva…

electron调试

electron 调试 electron 的调试分两步,界面的调试,和主进程的调试。 界面调试类似浏览器F12,可是调试不到主进程。 主进程调试有vscode、命令行提示和外部调试器调试。 本篇记录的练习是vscode调试。命令行和外部调试器的方式可以参考官网&a…

CJS与ESM:CJS

模块化方案 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的require、Python 的import,甚至…

PEFT LoRA 介绍(LoRA微调使用的参数及方法)

一 PEFT LoRA 介绍 官网简介如下图: 翻译过来是:低秩自适应(LoRA)是一种PEFT方法,它将一个大矩阵在注意层分解成两个较小的低秩矩阵。这大大减少了需要微调的参数数量。 说的只是针对注意力层,其实我自己平时微调操作注意力层多…

nacos2.x作为配置中心和服务注册和发现以及springcloud使用

目录 一、nacos是什么 二、windows下安装配置nacos 1、准备 2、安装nacos 3、配置nacos 4、启动并且访问nacos 三、springcloud使用nacos作为配置中心 四、springcloud使用nacos进行服务注册与发现 五、springcloud使用nacos进行服务消费 六、nacos的一些高级配置 1…

Ubuntu上编译多个版本的frida

准备工作 Ubuntu20(WSL) 略 安装依赖 sudo apt update sudo apt-get install build-essential git lib32stdc-9-dev libc6-dev-i386 -y nodejs 去官网[1]下载nodejs,版本的话我就选的20.15.1: tar -xf node-v20.15.1-linux-x64.tar.xz 下载源码 …

AbutionGraph时序(流式)图数据库开发文档地址

AbutionGraph-时序(流式)图数据库,官方开发文档(API)地址: http://www.thutmose.cn

JavaSE从零开始到精通(九) - 双列集合

1.前言 Java 中的双列集合主要指的是可以存储键值对的集合类型,其中最常用的包括 Map 接口及其实现类。这些集合允许你以键值对的形式存储和管理数据,提供了便捷的按键访问值的方式。 2. HashMap HashMap 是基于哈希表实现的 Map 接口的类&#xff0c…

java算法day23

java算法day23 121买卖股票的最佳时机55 跳跃游戏45 跳跃游戏Ⅱ763划分子母区间 121买卖股票的最佳时机 最容易想的应该就是两个for暴力枚举。但是超时 本题用贪心做应该是最快的。 先看清楚题,题目要求在某一天买入,然后在某一天卖出,要求…

MarkTool集合篇

MarkTool目前包含以下几种工具 1、TCP客户端 2、TCP服务端 3、UDP客户端 4、Web客户端 5、Web服务端 6、串口网口 7、PLC 8、获取本机设备 9、Log 10、密钥 11、系统设置 11-1、基本设置 11-2、角色设置 11-3、用户设置 11-4、log记录 开启软件需要找我解密&#…

S7-1200PLC通过111报文和EPOS模式实现位置轴轴控功能(FB284封装)

EASY_SINA_POS的详细使用介绍请参考下面文章链接: S7-1200PLC使用标准报文111和EPOS模式实现V90 PN总线伺服定位(Easy_SINA_Pos)_西门子sinapos-CSDN博客文章浏览阅读132次。文章浏览阅读7k次。先简单说下如何获取FB284,一般有2种方法,Startdrive软件可以操作大部分西门子的…

PostgreSQL使用(四)——数据查询

说明:对于一门SQL语言,数据查询是我们非常常用的,也是SQL语言中非常大的一块。本文介绍PostgreSQL使用中的数据查询,如有一张表,内容如下: 简单查询 --- 1.查询某张表的全部数据 select * from tb_student…

【Qt】QLabel常用属性相关API

QLabel是Qt框架中用于显示文本或图案的小部件。在Qt应用程序中,QLabel是用来呈现静态文本或图像给用户的重要部分 QLabel属性陈列 属性说明textQLabel中的文本内容textFormat 文本的格式 Qt::PlainText 纯文本Qt::RichText 富文本Qt::MarkdownText markdown…

【数据结构】排序算法(冒泡排序、插入排序、希尔排序、选择排序、堆排序、计数排序)

生命不可能有两次,但许多人连一次也不善于度过。💓💓💓 目录 ✨说在前面 🍋知识点一:排序的概念和应用 • 🌰1.排序及其概念 • 🌰2.排序的应用 • 🌰3.常见的排序算…

qt做的分页控件

介绍 qt做的分页控件 如何使用 创建 Pagination必须基于一个QWidget创建,否则会引发错误。 Pagination* pa new Pagination(QWidget*);设置总页数 Pagination需要设置一个总的页数,来初始化页码。 pa->SetTotalItem(count);设置可选的每页数量…

前端养成记-实现一个低配版简单版本的vue3表单自定义设计组件

简介: 通过使用了最新的vue3,vite2,TypeScript等主流技术开发,并配合使用vuedraggable 插件以及antd design vue 组件库实现低配版本的自定义表单设计组件; 项目地址:https://gitee.com/hejunqing/vue3-antdv-generator

PyTorch模型训练步步详解:从零开始构建深度学习流程

P y T o r c h 训练模型流程图 PyTorch训练模型流程图 P y T orc h 训练模型流程图