零基础视觉SLAM(一)

2023-05-16

文章目录

  • SLAM简介
    • 什么是SLAM?
    • 传感器
    • VSLAM架构
      • 视觉里程计
      • 后端优化
  • SLAM应用
  • 自学参考书
  • 预备知识

SLAM简介

什么是SLAM?

SLAM从本质上来说它要实现的就是通过传感器去实时地估计自身位置及经过的轨迹。对于我们人来说这是很简单的一件事情,但是想要通过计算机算法来实现的话,难度还是相当大的。
在这里插入图片描述从图中可以看出上面是相机直接观测到的图像,利用特征提取拼接成白底的稀疏地图及路径。
从VSLAM角度出发,VSLAM建出的地图可以分为稀疏、半稠密、稠密地图
半稠密稠密重建总结:定位、轨迹、建图、实时

传感器

使用不同的传感器,所对应的SLAM算法也不同,这里简单介绍一个能够进行SLAM的传感器。
传感器分为内质外质,内质传感器主要是同传感器本身的去估计出自己的位置,外质则是外界来告诉你自己准确的定位。
内质: imu、Lidar、Camera等
外质: GPS、二维码等外界定位方法
并不是所有场景都能使用所有的传感器,要根据周围环境而定,比如光线条件较差的场景无法使用camera,室内无法使用GPS,周围场景形状单一不能使用Lidar等等,需要根据自己的需求选用特定的传感器,再选择特定的SLAM算法。

VSLAM架构

在这里插入图片描述

视觉里程计

使用特征法直接法估计临近时刻(或两帧之间)相机的运动。

后端优化

从带有噪声的视觉里程计拼接的局部地图中,估计出最优轨迹与地图(最大后验概率、图优化、其他滤波器)。

SLAM应用

  • 室内建图
  • 相机定位
  • 机器人定位
  • 无人驾驶定位
  • 稠密建图AR互动

在这里插入图片描述在这里插入图片描述

自学参考书

  • 《Multiple View Geometry in computer vision》
  • 《State Estimation For Robotics》
  • 《视觉SLAM十四讲》

预备知识

  • 高等数学
  • 线性代数
  • 概率论
  • C++
  • LINUX
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

零基础视觉SLAM(一) 的相关文章

  • SLAM方法汇总

    原文 http blog csdn net smartxxyx article details 53068855 目录 SLAM概述 SLAM一般处理流程包括track和map两部分 所谓的track是用来估计相机的位姿 也叫front e
  • Ubuntu20.04编译安装opencv3.2和opencv_contrib-3.2

    图像特征提取中需要用到SIFT等算法 因此不得不安装从源码编译安装opencv contrib 网上有很多教程 但是在不同的环境下多少会出现一些错误 针对Ubuntu20 04 gcc 7环境下对opencv opencv contrib编
  • 从0.3开始搭建LeGO-LOAM+VLP雷达+小车实时建图(保姆级教程,小白踩坑日记)

    背景 SLAM小白 因为项目需要花了两天时间编译代码 连接雷达实现了交互 踩了很多坑 简单记录一下 让后面感兴趣的朋友少走点弯路 肯定有很多不专业的 错误的地方 还请大家不吝赐教 噗通 也可以见知乎 https zhuanlan zhihu
  • np.meshgrid()函数 以及 三维空间中的坐标位置生成 以及 numpy.repeat()函数介绍

    一 np meshgrid 函数 1 np meshgrid 介绍 X Y np meshgrid x y 代表的是将x中每一个数据和y中每一个数据组合生成很多点 然后将这些点的x坐标放入到X中 y坐标放入Y中 并且相应位置是对应的 下面是
  • 【SLAM】卡尔曼滤波(Kalman Filter)

    卡尔曼滤波 Kalman filter 一种利用线性系统状态方程 通过系统输入输出观测数据 对系统状态进行最优估计的算法 由于观测数据中包括系统中的噪声和干扰的影响 所以最优估计也可看作是滤波过程 卡尔曼滤波器的原理解释如下 首先 我们先要
  • 【大一立项】如何亲手搭建ROS小车:硬件和软件介绍

    本次博客将详细介绍上篇博客中提到的ROS小车的硬件和软件部分 由于十一实验室不开门 所以部分代码还没有上传到Github 下位机 下位机使用Arduino 因为大一上刚学完用Arduino做循迹小车 其实Arduino作为ROS小车的下位机
  • 对最小二乘法的一点理解 - slam学习笔记

    我对最小二乘法的理解 在给定参数个数和函数模型之后 根据测试数据 找出与所有测试数据的偏差的平方和最小的参数 这里面应该有两个问题 1 为什么选取与真实数据平方和最小的拟合函数 2 如何求参数 为什么选取与真实数据平方和最小的拟合函数 极大
  • 经典坐标变换案例代码剖析

    题目 设有小萝卜一号和小萝卜二号位于世界坐标系中 记世界坐标系为W 小萝卜们的坐标系为R1和 R2 小萝卜一号的位姿为q2 0 35 0 2 0 3 0 1 T t1 0 3 0 1 0 1 T 小萝卜二号的位姿为q2 0 5 0 4 0
  • Difference Between LiDAR and RADAR——LiDAR和RADAR的不同

    Difference Between LiDAR and RADAR 原文连接 https www differencebetween com difference between lidar and vs radar 翻译 RADAR和L
  • LeGO-LOAM论文翻译(内容精简)

    LeGO LOAM是一种在LOAM之上进行改进的激光雷达建图方法 建图效果比LOAM要好 但是建图较为稀疏 计算量也更小了 本文原地址 wykxwyc的博客 github注释后LeGO LOAM源码 LeGO LOAM NOTED 关于代码
  • LeGO-LOAM 系列(1): LeGO-LOAM 安装以及概述

    一 github GitHub RobustFieldAutonomyLab LeGO LOAM 二 安装依赖 1 ROS Ubuntu 64 bit 16 04 ROS Kinetic 比较常规 就不赘述了 2 gtsam Georgia
  • ORB-SLAM2:基于可识别特征的自主导航与地图构建

    目录 ORB SLAM2 基于可识别特征的自主导航与地图构建 简介 地图 A 地图特征点或3D ORB B 关键帧 C 可视化图像 位置识别 A 图像识别数据库 B 高效优化的ORB匹配 C 视觉一致性 自主导航追踪 A ORB特征获取 B
  • LeGO-LOAM代码详细注释版

    学习LeGO LOAM时 写的代码注释github代码链接 一部分注释来自github用户wykxwyc 一部分来自网上查阅 还有一部分是自己的理解 持续更新中
  • SLAM--三角测量SVD分解法、最小二乘法及R t矩阵的判断

    目录 一 三角测量 方法一 SVD分解法的推导 方法二 最小二乘法求解 二 ORB SLAM2 三角测量源码 三 利用Eigen源码实现三角测量 方法一 SVD分解法 方法二 最小二乘法求解 速度最快 方法三 利用OpenCV自带函数 四
  • 1-如何安装ROS

    如何安装ROS 大家好 我是如何 今天尝试在Ubantu下安装ROS Robot Operating System 测试环境 虚拟机VMware Ubantu20 04 准备步骤 添加ROS软件源 sudo sh c echo deb ht
  • docker dbus-x11

    本来想用terminator启动nvidia docker 显示出图形界面的 结果发现启动的时候出问题了 terminator 1 dbind WARNING 07 31 53 725 Couldn t connect to accessi
  • BLAM跑自己的数据包无法显示全局点云地图解决(速腾聚创RS-LiDAR-16 雷达 )-SLAM不学无术小问题

    BLAM算法跑自己的数据包无法显示全局点云地图解决 适配速腾聚创RS LiDAR 16 雷达 提示 本文笔者使用环境Ubuntu18 04 ROS melodic版本 首先放一个效果链接 由b站up VladimirDuan上传 非官方 官
  • SLAM练习题(十一)—— G2O实战

    SLAM 学习笔记 写在前面的话 算是一点小小的感悟吧 估计位姿的方法有线性方法和非线性方法 线性方法就是特征点法中的2D 2D的对极约束 3D 2D的PnP问题 非线性方法有BA优化 它将位姿的估计问题转换成了一个误差关于优化量的最小二乘
  • LIO-SAM运行自己数据包遇到的问题解决--SLAM不学无数术小问题

    LIO SAM 成功适配自己数据集 注意本文测试环境 Ubuntu18 04 ROS melodic版本 笔者用到的硬件以简单参数 激光雷达 速腾聚创16线激光雷达 RS Lidar 16 IMU 超核电子CH110型 9轴惯导 使用频率1
  • 高翔博士Faster-LIO论文和算法解析

    说明 题目 Faster LIO 快速激光IMU里程计 参考链接 Faster LIO 快速激光IMU里程计 iVox Faster Lio 智行者高博团队开源的增量式稀疏体素结构 Faster Lio是高翔博士在Fast系列的新作 对标基

随机推荐

  • 项目篇:移动平台机械臂视觉定位抓取实施(基于ROS架构)

    ROS包内容 xff1a 代码暂不公开 这篇日志的目的是快速项目实施 xff0c 所以详细的部分会不断补充 举例如下 xff1a 项目包1 xff1a 项目地址 Pylon Camera Aruco ros AUBO Robot 大寰机械手
  • 查看rospackage包的依赖

    rospack libs only l my package
  • 转载:Snorkel - 可编程的数据标注神器

    我知道你已经用上了最先进的深度学习模型 xff0c 不过 xff0c 还在人工标注数据吗 xff1f 这有点过时了 xff01 快来了解下Snorkel 最新的基于弱监督学习的大规模训练数据标注神器 现在的机器学习尤其是深度学习模型很强大
  • ubuntu16.04使用阿路比-LPMS-IG1进行ros数据发布

    官方资料下载 https www alubi cn support download 这个是ros包下载地址 https bitbucket org lpresearch openzenros src master 这个包比较坑 xff0c
  • C++总结1-vector的指针

    在使用vector的时候犯了一个导致编译错误 xff0c 在这里记录一下 vector是非常常见也非常好用的容器 xff0c 但是vector的指针有一些特殊 如果想要获得vector的数组的指针 xff0c 我找到了两种方法 amp ve
  • Unity项目关闭Debug.Log没有Log

    接手的项目打包后没有记录自定义Log 卧槽 xff0c 这我怎么debug 搜索了一堆都只有说怎么关闭 xff0c 没什么怎么打开的 以至于我明明加了Andrid关键词还有说设置Use Player Log的 换了个关键词搜索怎么关闭 xf
  • 发行商提供证书打包iOS时 遇到的若干问题

    No signing certificate ios Development found No ios Development signing certificate matching 开发和发布总共收到了2个 p12文件 xff0c 另外
  • RPGMakerMV接入Greenworks,以支持steamworks API

    RPGMaker MV的基本原理 在查看Greenworks的github页面时有提到NW JS xff0c 实际上RPGMakerMV部署好的工程就是基于NW JS运行的 在根目录下的Game exe实际上可以用网上下载的NW exe替代
  • MBP合上盖子后仍反复自动唤醒

    现象 每天早上起来电脑都有点温度 xff0c 明明一直合着盖子但总是隔了几天就没电了 在办公室的时候开着steam就看到提示家里的笔记本可以远程流传输 通过休眠命令查看 xff0c 几乎每10分钟就有一条唤醒记录 大部分唤醒理由是 xff0
  • MAC 关闭office软件自动更新提示 (Microsoft AutoUpdate)

    参考 xff1a https blog csdn net weixin 42873928 article details 115936349 sudo chmod 000 Microsoft AutoUpdate app 执行的功能是设置文
  • git 出现 “fatal: The remote end hung up unexpectedly“

    情况 xff1a 有台两年没开的电脑长期没有更新git等工具版本 xff0c clone跟checkout的时候都有报这个问题 实际上没注意到git lfs filter process git lfs command not found这
  • VSCode智能补全代码片段技巧

    小技巧 foreach的代码片段中没有快速建议智能建议不优先推荐代码片段 xff08 试过也不大行 xff09 foreach的代码片段中没有快速建议 通过快速建议输入一个foreach之类的代码片段 xff0c 保持tab键可以切换输入位
  • Windows下搭建局域网内简易git服务器

    这里写自定义目录标题 概述配置步骤1 任意位置创建git 仓库2 启动Git Daemon3 其他电脑克隆工程4 开机自动启动5 其他配置注意事项 概述 由于和朋友小规模制作项目 xff0c 又使用了UE5这样的庞然大物 xff0c 准备整
  • 如果OpenStack给虚机自动分配的ip和其他静态配置的ip重复了怎么办

    1 查找你要修改ip地址的网卡id root 64 node 1 neutron port list 2 允许ip地址为10 10 1 56通过 root 64 node 1 neutron port update 4e79200f ac5
  • Lisp笔记

    变量 动态变量 defvar defparameter span class token punctuation span span class token car dafvar span paraname default value sp
  • MSDK接入 中的各种问题

    检查顺序 包名注意一下 Unity报 Found plugins with same names Found plugins with same names Assets Msdk BuglyPlugins Android libs bug
  • C++ Windows 窗体程序入门 - 1.你的第亿个窗体程序

    前言 43 学Windows窗体已经有一段时日了 xff0c 奈何没有什么浅显易懂 amp 便宜 xff01 xff01 的书籍 就想来 算是记笔记吧 顺便还能给你们总结一些经验 注 有许多内容源于我看过的一些视频 比如Chili和Cher
  • CSS替换元素和非替换元素

    根据是否可以通过修改某个属性值更改元素呈现的内容 xff0c 可以分为替换元素和非替换元素 替换元素 以下元素都是可替换元素 xff0c 以及在各种浏览器下的默认display值 xff08 图片来源 CSS世界 张鑫旭 xff09 针对
  • SD-WAN加速保障跨国公司数据传输质量

    很多企业开启国际化业务 xff0c 跨国文件传输越来越频繁 xff0c 而且随着业务的开展 xff0c 公司规模的扩张 xff0c 很多企业都在海外设置了分支机构 不得不说 xff0c 随着经济一体化的进程不断加快 xff0c 企业跨国经营
  • 零基础视觉SLAM(一)

    文章目录 SLAM简介什么是SLAM xff1f 传感器VSLAM架构视觉里程计后端优化 SLAM应用自学参考书预备知识 SLAM简介 什么是SLAM xff1f SLAM从本质上来说它要实现的就是通过传感器去实时地估计自身位置及经过的轨迹