关于对SLAM(视觉)的学习

  1. 视觉slam是由搭载传感器的可移动物体,在不知道环境任何信息的情况下,在运动过程中建立环境模型。(同时估计自己的运动)

  2. SLAM解决的是机器关于自身的定位和地图的构建,要求传感器需要以一定形式来观察外部世界(同时传感器还要能估计自己的位置)

  3. 我们根据多张连续运动的图像(采用RGB相机和深度学习相机)来推断相机的运动,构建环境的三维地图。

  4. slam的应用点,机器人在室内工作时需要知道室内的情况,无人机,自动驾驶汽车,虚拟现实和增强现实。

  5. slam需要几何学,数学理论,编程语言(C++,Python)

  6. 以下对环节的排序并不是slam运行时的先后顺序

  7. slam环节 1:视觉里程计:根据拍摄的图像估计相机的运动

  8. slam 环节2:后端优化:由于前端在拍摄的时候误差在不断积累,为了降低误差,便进行后端优化,来降低各部分的误差

  9. slam环节3: 根据传递的数据来构造三维地图

  10. slam环节4: 回环检测:在传感器移动过程中,位姿往往是由上一帧的位姿来估计的,但这样会导致误差一帧帧的积累,为了降低误差,我们可以使用前面的某一帧的位姿来确定这一帧的位姿,而不是前一帧(例如使用第五帧的位姿来估计第十帧的位姿)找到能使误差最小化的某一帧即是回环检测的最终目的。(打这篇博客的时候我还没怎么看第二讲,以上都是百度的,但当我看了第二讲以后,发现与我所百度到的有点不一样,不过到时候学了具体操作估计就知道了,说不定只是表述方式不一样)

  11. 接下来是对课后习题的解答

  12. 有线性方程Ax=b,需要求解如何求解? 该问题可以用线性代数的方法来求解,将A,x,b看成三个向量组,设矩阵A的列数为n,当|b|=0时,若R(A)=n,则该矩阵满秩,x只唯一解,当R(A)<n时x有无数多解。否则,若R(A,b)>R(A),则x无解,R(A,b)=R(A)=n,则该矩阵满秩,x有且只有唯一解。当R(A,b)=R(A)<n时,x有无数解只可求出他的基础解系。

  13. 如何在Ubuntu系统中安装软件,这些软件一般安装在哪里? 可以使用sudo apt install + filename 有些或许要使用sudo apt-get + filename 软件一般被安装在 /usr 内部 部分放在 /opt

  14. 如果只知道软件的模糊名称可以使用yum list|grep + (该库的名称)(yum需要提前安装)

  15. 你知道C++中的类吗?关于STL的一些了解:C++中的类类似C语言的结构,例如将一个学生的名字,学号,成绩这些不同类型的变量分为一类。但是,C语言中的 struct 只能包含变量,而 C++ 中的 class 除了可以包含变量,还可以包含函数display() 是用来处理成员变量的函数(我原本以为display函数是自带的一个函数,可是结果好像是要自己定义写出来,C++库里面没有他,他的作用是输出类的变量) 在C语言中,我们将它放在了 struct Student 外面,它和成员变量是分离的(而在 C++ 中,我们将它放在了 class Student 内部,使它和成员变量聚集在一起,看起来更像一个整体。

    结构体和类都可以看做一种由用户自己定义的复杂数据类型,在C语言中可以通过结构体名来定义变量,在 C++ 中可以通过类名来定义变量。不同的是,通过结构体定义出来的变量还是叫变量,而通过类定义出来的变量有了新的名称,叫做对象(Object)。是一个C++语言的标准模板库(C++库的一部分,不用单独安装),该库包含了许多常用的基本数据结构和基本算法。方便程序员对程序进行复用(这点要区分C语言,C语言的精髓是函数,而c++由于STL不是面向对象,并且C++中的类算是对C语言中结构的扩展,所以导致c++中的精髓是类,并且C++对模板支持的很好)

  16. C++11新标准(由于有一些实在触及到我的知识盲点,这里就不做过多介绍,因为我自己都没怎么打过c++/,可能要先打一会c++再来说些新标准比较好):具体参考https://blog.csdn.net/jiange_zh/article/details/79356417(这是给我自己以后留的网页)

  17. 对高斯分布的了解: 一维形式即经常所见的正态分布,(这张是图片,自己打不太美观,exp(n)=e^n;) ;该函数在计算误差中非常有用,正态分布的值或期望值等于位置参数,决定了分布的位置;其方差的开平方或标准差[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XUcZJr6V-1575084441562)(https://wikimedia.org/api/rest_v1/media/math/render/svg/59f59b7c3e6fdb1d0365a494b81fb9a696138c36)]等于尺度参数,决定了分布的幅度。(百度到的,再我自己解释一遍,u代表那输入一堆数据的平均值,之所以称它为位置参数,是因为它描述正态分布的集中趋势位置。而超过一维形式的高斯分布一般称其为概率密度函数 多维高斯分布一般用协方差矩阵表示(我真的没完全看懂,容许我现在先附上百度到的理论,以后再回来看)

    协方差矩阵可用来表示多维随机变量的概率密度

    为例,由于

    引入矩阵

    的协方差矩阵

    (协方差矩阵的计算方法是先求出矩阵每个维度的平均值,再将每个维度上的所有元素减去其对应的平均值,最后得到的新矩阵再乘上他的转置矩阵乘上他的行数-1的倒数

    3. 求解协方差矩阵的步骤

    举个例子,矩阵 X 按行排列:

    1. 求每个维度的平均值

    2. 将 X 的每一列减去平均值

    其中:

    3. 计算协方差矩阵

    ))))))))(是我百度到比较好描述的)

    由此可得

    由于

    于是

    的概率密度

    此式可以推广到n维正态分布的情形。 [1]

  18. Linux的目录结构是什么样的:(根据百度查找)1. /usr/local 是存放新安装的软件的目录 2. /bin 存放普通用户可以执行的命令,3./boot 存放Linux系统启动时所需使用的文件 4. /mnt 目录中的子目录作为系统中可移动存储设备的挂载点。5. /tmp系统临时目录,很多命令程序在该目录中存放临时使用的文件。 6./usr 目录用于存放大量的系统应用文件。7 /var 目录用于存放系统中经常变化的文件(文件,日志) 8. /dev 目录用于存放系统中的所有设备文件,光盘驱动器,硬盘。 9 /etc 目录用于存放系统中的配置文件,Linux中的配置文件都是文本文件,可以用nano编辑器去编辑。

  19. Ubuntu系统的基本命令:clear :清屏

    pwd :显示当前路径

    cd :进入文件夹或目录

    mv :移动文件,更改文件名

    cp :复制文件(cp+文件路径)

    mkdir:创建文件夹

    rmdir :删除空的文件夹

    rm :删除文件及文件夹(可以删除非空的),需要确认(比较繁琐)

    rm -rf:删除当前目录下的所有文件及目录,无需逐一确认命令行为。

    gedit : 创建文件(gedit + 文件名 .文件格式)

    tat xvf :解压文件(tat xvf 文件名.文件格式)

    “./":运行文件 (./ 文件名.文件格式)

    sudo ./: 以管理员的方式运行文件

    ls :列出当前目录下的所有的文件及文件夹 显示文件会带有不同的颜色 :白色代表普通文件, 蓝色代表目录,绿色代表可执行文件, 红色:压缩文件。浅蓝色:链接文件。黄色:设备文件。灰色:其他文件。

    cat命令的主要作用是显示一个文件的内容(详细请参考https://www.jb51.net/LINUXjishu/457348.html,允许我偷个懒)。

ls :列出当前目录下的所有的文件及文件夹 显示文件会带有不同的颜色 :白色代表普通文件, 蓝色代表目录,绿色代表可执行文件, 红色:压缩文件。浅蓝色:链接文件。黄色:设备文件。灰色:其他文件。

cat命令的主要作用是显示一个文件的内容(详细请参考https://www.jb51.net/LINUXjishu/457348.html,允许我偷个懒)。

关于对SLAM(视觉)的学习相关推荐

  1. 1000人证明过的3D视觉系统学习教程

    写在前面 我们在「3D视觉从入门到精通」星球里已经为大家梳理了以下一些内容: (一) 3D视觉学习路线 (二)线上视频课程 (三)3D视觉顶会|期刊 (四)精华github资源 (五)往期帖子与问答汇 ...

  2. 48本3D视觉领域学习书籍,请自取

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 一.机器视觉 机器视觉(Robot Vision,伯特霍尔德·霍恩) 视觉测量(张广军) 机器视觉算法 ...

  3. SLAM | 视觉SLAM中特征点法与直接法结合:SVO

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 前面的话 VSLAM 是利用多视图几何理论,根据相机拍摄的图像信息对相机进行定位并同时构建周围环境地图 ...

  4. SLAM求职和学习经验

    SLAM求职和学习经验 SLAM要不要学? 行业融资健康 SLAM算法岗20 - 40 k 导师影响力 ---- 无 团队 ----- 无团队 不要自己一个热闭门造车 毕业要求 发论文要求高 个人兴趣 ...

  5. 吐血整理|3D视觉系统化学习路线

    原文首发于微信公众号「3D视觉工坊」:吐血整理|3D视觉系统化学习路线 我们生活在三维空间中,如何智能地感知和探索外部环境一直是个热点难题.2D视觉技术借助强大的计算机视觉和深度学习算法取得了超越人类 ...

  6. 3D视觉的学习路线都在这里了~

    前言 很多粉丝在公众号后台留言,不知如何入门3D视觉.3D领域的主线是什么,一些难点该如何解决,有哪些方法,导师新开的3D视觉方向无人指导等等.这些痛点,工坊的许多童鞋都踩过坑,也为大家提出了许多非常 ...

  7. 汇总|3D视觉系统学习资料下载

    微信公众号推荐 关注公众号 后台回复 3D视觉  即可下载 3D视觉相关资料干货,涉及相机标定. 三维重建.立体视觉.SLAM.深度学习.点云后处理.多视图几何等方向 [3D视觉工坊简介] 公众号[3 ...

  8. SLAM与深度学习融合的研究现状总结

    深度学习结合SLAM 语义slam 语义分割 端到端SLAM CNN-SLAM DenseSLAM orbslam2 + ssd LSD-SLAM + CNN SemanticFusion Mask ...

  9. ViT作者、谷歌大脑研究员翟晓华:大规模视觉表征学习

    智源导读:从2020年,Transformer开始在CV领域大放异彩.ViT(Vision Transformer)是Google在2020年提出的直接将transformer应用在图像分类的模型,后 ...

最新文章

  1. python画曲线图例-如何使用python画曲线图
  2. 后盾网lavarel视频项目---模型一对多关联简单实例
  3. 计算机基础知识预备知识,计算机预备知识详解.ppt
  4. CentOS x64 安装gcc
  5. 苹果WWDC 2019日期曝光 iOS 13也即将到来!
  6. 中小企业 IT 运维福利:快速构建 on-call 机制
  7. python基础(16):学生信息管理系统——Python编写(附全部代码)
  8. 几个轻巧好用的代码检查工具!
  9. plc secs通讯协议_一种SECS/GEM通讯方法与流程
  10. python大数据工程师薪资待遇_2019年就业薪资,凭什么大数据工程师遥遥领先?...
  11. 手把手QQ机器人制作教程,根据官方接口进行开发,基于Python语言制作的详细教程(更新中)
  12. 世界上最经典的二十四句草根哲理
  13. 用计算机探索规律有什么知识点5上,用计算器探索规律知识点
  14. 数据结构考试的一些选择题
  15. airpods版本号_苹果更新 AirPods Pro 固件
  16. 诗:《假如生活欺骗了你》
  17. 大数据和云计算技术周报(第88期)
  18. 吴恩达.深度学习系列-C4卷积神经网络-W2深度卷积模型案例
  19. 欣瑞达TFT串口屏开发资料
  20. unity开发游戏开场问答系统(梦幻模拟战手游)

热门文章

  1. 使用Navicat打开加密SQLite数据库
  2. 2020年9月26日 阵雨转晴
  3. 双十一投影仪怎么买?极米、当贝、坚果、米家投影2000~3000元有什么推荐?
  4. 为什么中国的程序员总被称为码农?
  5. Unity实现 双指触摸放大缩小镜头 单指平移镜头
  6. Ubuntu22.10 安装微信方法
  7. 有或没有Apple Watch情况下远程控制iPhone相机
  8. TCP协议(二) 重传 乱序和丢包
  9. 8、统一处理异常(控制器通知@ControllerAdvice全局配置类、@ExceptionHandler统一处理异常)
  10. linux命令查硬盘wwn,如何查看linux/unix查看wwn号