视觉SLAM-基本原理

以视觉传感器作为感知方式的SLAM称为视觉SLAM。按照建图稀疏程度来分,视觉SLAM技术可以分为稀疏SLAM,半稠密SLAM和稠密SLAM。虽然同为SLAM系统,但它们的侧重点并不完全一样。SLAM 系统最初的设想是为机器人提供在未知环境中探索时的定位和导航能力,其核心在于实时定位。以定位为目的,需要建立周围环境的路标点地图,进而确定机器人相对路标点的位置,这里的路标点地图即稀疏地图,地图服务于定位。但随着算法和算力的进步,SLAM逐渐被用于对环境的重建,也即把所有看到的部分都完整的重建出来。视觉SLAM中常用的传感器是相机,根据相机的工作工作方式不同,可以分为三类:单目相机(Monocular)、双目相机(Stereo)、深度相机(RGB-D)。

单目SLAM只用一个摄像头就可以完成SLAM。最大的优点是传感器简单且成本低,但同时也有个大问题,就是不能通过单张图片得到深度信息(距离),存在尺寸不确定的现象,比如丢失深度信息的相片中,我们能见到"手捏太阳"、"借位拍照"这样的现象。单目相机无法依靠一张图像获得图像中物体离自己的相对距离,为了估计相对深度,利用相机移动形成的图像,进行三角化,测量像素的距离。即是说,它的轨迹和地图,只有在相机运动之后才能收敛,如果相机不进行运动时,就无法得知像素的位置。同时,相机运动还不能是纯粹的旋转,这就给单目SLAM的应用带来了一些麻烦。单目相机结构简单,成本较低。本质上是拍照时的场景在相机的成像平面上留下一个投影,以二维的形式记录了三维的世界。单目SLAM估计的轨迹和地图,与真实的轨迹地图,相差一个因子,也就是所谓的尺度。由于单目SLAM无法仅凭图像确定这个真实尺寸,所以又称为尺度不确定性。本质原因是通过单张图像无法确定深度,为了得到这个深度,人们开始使用双目相机和深度相机。

双目SLAM利用左右目的视差计算像素的距离,从而实现自身的定位。立体视觉既可以在运动时估计深度,亦可在静止时估计,消除了单目视觉的无法得到深度信息的麻烦。不过通过双目图像计算像素距离,计算量大,而且在特征少的白墙或暗光环境易丢失目标。双目相机由两个单目相机组成,但这两个相机之间的距离(称为基线)是已知的。我们通过这个基线来估计每个像素的空间位置,基线距离越大,能够测量到的就越远,双目与多目的缺点是配置与标定均较为复杂,其深度量程和精度受双目的基线与分辨率的限制,而且视觉计算非常消耗计算资源,需要使用GPU和FPGA设备加速后,才能实时输出整张图像的距离信息。因此在现有的条件下,计算量是双目的主要问题之一。

深度相机又称RGB-D相机,它最大的特点是可以通过红外结构光或Time-of-Flight(ToF)原理,像激光传感器那样,通过主动向物体发射光并接收返回的光,测出物体离相机的距离。因此,它比传统相机能够提供更丰富的信息,也不必像单目或双目那样费时费力地计算深度。目前常用的RGB-D相机还存在测量范围窄、噪声大、视野小、易受日光干扰、无法测量透射材质等诸多问题,在SLAM方面,主要用于室内。

相关推荐
QYR-分析4 分钟前
深耕智慧物流赛道:交叉带分拣机器人行业全景解析
大数据·人工智能·机器人
君为先-bey4 分钟前
LeMiCa——基于扩散的高效视频生成的词典序最小最大路径缓存
人工智能·深度学习·计算机视觉·扩散模型
Days20505 分钟前
AI提示词管理器:解锁大模型高效应用的核心工具
大数据·人工智能
KaMeidebaby5 分钟前
卡梅德生物技术快报|抗体的制备与纯化:分子实验实操:番茄 sHSP 重组表达与抗体的制备与纯化工艺
前端·数据库·人工智能·其他·算法·百度·新浪微博
我爱cope6 分钟前
【Agent智能体8 | 反思设计模式-大语言模型反思机制的四个演进阶段】
人工智能·设计模式·语言模型
虹科网络安全7 分钟前
艾体宝洞察|“顶会”看安全(八):针对预训练大语言模型的仅标签成员推断攻击
人工智能·安全·语言模型
IT_陈寒8 分钟前
Vite热更新把我整不会了,原来还要这样配!
前端·人工智能·后端
skywalk816310 分钟前
使用llama.cpp运行模型unsloth/Qwen3.6-35B-A3B-UD-Q4_K_M.gguf 速度大约5.5 token/s
人工智能·llama
暴躁小师兄数据学院11 分钟前
【AI大模型应用开发工程师特训笔记】第04讲(第1章):Python基础与环境搭建
人工智能·笔记·python·ai
架构源启13 分钟前
Spring AI进阶系列(11) Spring AI Multi-Agent 协作系统:辩论、投票与共识机制实战
java·人工智能·spring