视觉SLAM:模型介绍、算法框架及应用场景

发布于:2024-10-24 编辑:匿名 来源:网络

作者:湖南大学张长虹 校对:董亚伟 编辑:郑欣欣@一点artificial-point-intelligence 原文地址:视觉SLAM:模型介绍、算法框架及应用场景本文章主要是想用尽量少的专业词汇来解释清楚视觉SLAM是如何定位的(有些表述可能不严谨)。希望对视觉SLAM感兴趣的伙伴在第一次接触SLAM时能够有一个基本的了解。

本文还介绍了理解视觉SLAM的经典框架和应用场景。想要深入学习的,请参考更专业、更系统的书籍和文献。

01 什么是SLAMSLAM(Simultaneous Localization and Mapping),意思是同时定位和地图构建。它是指配备特定传感器的车辆、无人机等移动机器人。

在没有环境先验信息的情况下(什么是先验信息?可以自己做一下(Check it out)),运动时估计自己的运动状态,同时建立环境模型是一系列的任务。目前大家在现实生活中接触比较多并且应用SLAM技术的就是扫地机器人,我们想一下:扫地机器人来到一个陌生的环境后,它是如何清理一块垃圾的?就是机器人先确定自己的位置,然后再确定垃圾相对于自己的位置,这样就有了起点和终点,机器人只需要从起点移动到终点就可以清扫了。

但这是一个非常直观的想法,而这个想法的前提是:我们知道房间的地图结构,这样我们才能更好地完成垃圾清理的任务,因此,扫地机器人需要进行的流程。完整的应该是:了解周围环境,绘制房间地图,与垃圾确认位置,然后规划路线,移动到那里,完成清洁工作。

在整个过程中,构建地图和给自己定位是我们SLAM的主要任务。通过这样一个小例子,就可以论证SLAM的作用了。

通俗地说,SLAM主要解决两个问题:1.我在哪里? ----定位 2.周围环境怎么样? ----测绘。根据传感器类型的不同,SLAM可以分为不同的类型,如表1所示。

表1 SLAM类型 本文主要介绍使用相机作为传感器的视觉SLAM。视觉SLAM基于连续的输入图像来推断相机的运动和周围环境。

接下来,我们将介绍相机模型和相机运动。我们将看到相机模型如何使用已知的图像信息构建观测方程并从观测方程求解相机运动。

获取相机运动后,定位完成。 。

我们从相机模型开始,一步步推导,直到最终完成定位。1.1 相机模型 相机的成像模型表示现实世界中的三维点与图像中的二维像素点的对应关系。

即相机视野内的三维点可以找到图像上对应的像素点,而不考虑畸变。下面,单目相机成像的理想模型是针孔模型,如图1所示。

光心O是镜头的中心,光轴是穿过光心并垂直于物理物体的直线。成像平面,f表示焦距,即从针孔到物理成像平面的距离,表示相机坐标系中任意三维空间点,经过光心投影到二维物理成像平面。

每个三维空间点对应于物理成像平面上的一个像素。针孔模型通过成像过程中的几何关系建立三维世界到二维像素平面的映射关系。

数学描述是函数关系,即也称为观测方程。其中,二维像素坐标和三维空间点坐标P、K是相机的内参矩阵,由相机本身的特性决定。

图1 相机成像模型 图2 三维空间坐标变换 1.2 相机运动 在了解相机运动之前,需要了解几个基本概念: 世界坐标系:在视觉SLAM中,拍摄第一张图像时的相机坐标系通常为指定的。它是世界坐标系,指定后不变且唯一。

世界坐标系可以理解为笛卡尔坐标系的原点。相机坐标系:以相机的光学中心(光圈)为原点的坐标系,随着相机的移动而变化。

相机的运动是刚体运动。刚体运动的坐标变换可以用旋转矩阵(R)和平移向量(t)来表示。

考虑一个三维空间点P,点P在世界坐标系下的观测值是,在相机坐标系下的观测值是,点P的观测值在不同坐标系下的变换关系为如下: 通过以上内容的介绍,我们可以按照以下步骤来了解定位是如何完成的: (1)视觉SLAM系统 输入的信息是不同时刻的摄像机图像。我们要使用的是图像的像素信息。

假设在第一帧坐标系中,已知某一空间点P(X,Y,Z),并且P在第一帧图像中。第二帧图像上的成像点分别为p_1和p_2。

(2) 通过相机模型,可以得到以下两个观测方程。 R和t表示从第一坐标系到第二坐标系的旋转和平移 p_1=\frac{1}{Z_1}KP\ \ p_2= \frac{1}{Z_2}K(RP+t) 。

(3)基于8个这样的匹配点对(p_1,p_2),求解上式可得到(R,t)。(4) (R,t)表示两个坐标系之间的转换关系。

一般情况下,第一帧的坐标系会被设置为世界坐标系。由于世界坐标系是固定的,所以我们可以得到第二帧中相机坐标系的位置和姿态完成,而定位就是获得任意时刻相机坐标系相对于世界坐标系的位置和姿态。

上述步骤是通过对问题进行大量简化而得到的。实际情况中,需要考虑的因素还有很多,比如相机类型的差异、相机运动表示方法的差异、相应的具体求解过程也不同等。

,需要更深入的研究和学习。 1.3 建图 建图是指构建地图的过程。

地图是对环境的描述。这种描述有多种形式。

必须根据不同的需求构建相应的地图。地图的表示形式主要分为两类:度量地图和拓扑地图。

在SLAM领域,研究人员更加关注度量地图。度量地图强调准确地表示地图中物体的位置关系。

度量地图分为两类:密集地图和稀疏地图。其中,稀疏图仅表示环境中具有代表性的空间点,例如桌子的边缘等更容易从图像中识别的点,而其他不具有代表性的点则被忽略,稀疏图主要用于SLAM定位。

与稀疏地图相比,密集地图重建了环境中的所有空间点,例如桌子的整个平面。二维稠密图由正方形网格组成,三维稠密图由立方网格组成。

通常,一个小块包含三种状态:占用、空闲和未知,以表示网格中是否存在对象。密集地图主要用于机器人或智能汽车的导航和避障。

02 SLAM算法框架 经典的视觉SLAM算法框架如图3所示,主要包括:传感器信息读取、前端(里程表)、后端、环路检测和建图。需要说明的是,不同类型的SLAM技术仅在前端处理上有所不同,后端使用的优化算法是通用的。

这部分会有一些专业术语。如果不清楚,需要耐心多读几遍。

如果您对前沿研究方向感兴趣,可以查找原文了解更多。图3 Visual SLAM算法框架输入:采集相机图像并进行预处理。

前端(视觉里程计):根据短时间内采集到的摄像头图像,计算出摄像头在移动机器人坐标系中的位置和姿态,即位姿,并建立局部地图。前端主流的方法是特征点法(间接法)和直接法。

特征点由关键点和描述符组成。关键点是指特征点在图像中的位置。

可以在多帧图像中进行检测,并通过比较描述符来建立配对关系。通过最小化冗余、投影误差来优化相机位姿,最经典的间接方法是orb-SLAM2。

直接方法没有特征提取步骤,直接使用像素的灰度信息通过最小化像素的光度误差来优化姿态。最经典的直接法是DSO。

间接法和直接法的理论基础已经比较完善。目前的改进方向是在现有的理论框架中添加先验约束,例如:尺度约束、平面特征约束、平行线特征约束等,年美团在ICRA学术会议上发表的工作《EDPLVO:Efficient Direct Point-Line Visual Odometry》将前端和扩展线特征改进为直接方法,并获得最佳导航论文奖。

后端:根据不同时刻视觉里程计计算出的相机位姿、3D地图点和环路检测信息,对位姿和3D地图点进行全局优化。后端处理SLAM过程中的噪声问题。

在数学上,它被建模为要解决的最大后验概率估计问题。主流方法包括以扩展卡尔曼滤波器为代表的滤波方法和非线性优化方法。

过滤方法更加简洁,适合计算资源有限的场景。非线性优化方法可以更准确地优化相机位姿和地图点位置,但计算时间较长,需要更多的计算资源。

环路检测:判断机器人是否已到达上一个位置。如果检测到环路,它可以提供更远的约束并消除累积误差。

主要通过图像之间的相似度来判断。最经典的方法就是词袋法。

模型。随着深度学习的快速发展,基于CNN(卷积神经网络)和RNN(循环神经网络)的方法可以有效提高循环检测的效率。

建图:根据估计的轨迹,创建与任务要求相对应的地图。对于SLAM来说,地图是用来辅助定位的,但对于导航、避障、三维重建等任务来说,地图扮演着更重要的角色。

为了完成不同的任务,地图的形式也不同。常见的地图类型包括占用网格地图、八叉树地图、语义地图等。

以上是视觉SLAM近20年发展形成的经典框架。它是研究人员多年工作的结晶,也是我们开展自己研究的基础。

在视觉SLAM领域,目前越来越多的工作是与深度学习结合进行的,包括语义分割网络、深度估计网络、注意力机制等。这些网络可以与视觉SLAM的很多方面相结合,比如特征萃取。

以及匹配、深度估计、位姿估计和重定位等,以提高视觉SLAM的整体性能。当然,与深度学习相结合的视觉SLAM技术还不够成熟。

如果你确定是视觉SLAM小伙伴,不妨一试~ 03 SLAM的应用 这部分场景将主要介绍SLAM的三大应用场景:自动驾驶高精度定位、自主移动机器人和室内场景的三维重建。不同场景下,对算法精度、计算资源和计算速度的要求不同。

针对不同的场景,应选择合适的算法。3.1 自动驾驶高精度定位 定位是高水平自动驾驶的关键一环。

目前,高速场景下的自动驾驶定位主要依靠组合导航技术。高速场景下,路况简单,车辆交互较少,不需要频繁换道。

在该场景下,车道级/分米级的定位精度就足够了,组合导航(GNSS/INS)技术可以满足该场景下的精度要求。城市低速场景下,车道较窄,车流量较大。

尤其是在十字路口等复杂场景下,会出现变道的情况。为了避免车辆变道越线或车辆碰撞,车辆需要达到厘米级的定位精度。

在这种场景下,通常需要集成组合导航、视觉SLAM、激光SLAM等多种技术进行定位,以达到厘米级的定位精度。在地下车库、隧道等没有GNSS信号的场景下,组合导航(GNSS/INS)算法失效,必须依靠视觉SLAM或激光SLAM进行定位。

图4 高精度定位 3.2 自主移动机器人 随着移动机器人的智能化程度越来越高,自主移动机器人开始出现在家庭服务、物流仓储搬运、故障检测等领域。它们曾经只存在于特殊的工业场景中。

移动机器人正逐渐走进我们的日常生活。不同场景下的机器人需要执行不同的复杂任务,但良好的自主导航是完成大多数复杂任务的前提。

导航是指机器人能够从当前位置行驶到指定的目标点,精确定位就是自主导航。关键是,如果机器人的位置估计错误,最终的导航结果可能会相差很大,机器人自然无法完成指定的任务。

SLAM技术可以满足机器人定位的需求,让机器人在未知环境中行驶的同时完成自身的定位和建图。确定机器人在地图上的位置和周围环境后,就可以设计路径规划。

算法,计算机器人到达指定位置的轨迹,然后控制机器人沿着指定轨迹移动,即完成导航任务。目前,视觉SLAM和激光SLAM技术都应用于移动机器人。

由于激光传感器受环境影响较小,且激光SLAM技术发展较早,目前已经可以大规模商业化。与激光SLAM算法相比,由于相机容易受到光照和环境结构的影响,视觉SLAM算法的鲁棒性无法达到与激光SLAM相同的水平。

因此,有必要将其与IMU结合起来,以实现更好的鲁棒性和更高的精度。对于SLAM技术来说,要完成导航任务,就需要构建地图。

地图可以实现路标和环境的可视化。此外,地图还可以帮助机器人更好地定位以及在失去位置后重新定位。

移动机器人需要的是3D密集地图,并且地图的比例随着场景的增加而增加。地图越大意味着我们需要更多的内存资源来存储地图,因此如何判断是否更新地图,如何高效地存储、表示和更新地图值得研究。

图5 移动机器人定位与建图知识拓展:除了SLAM之外,目前主流的移动机器人定位技术还有组合导航(GPS/INS)和二维码导航/磁导航。组合导航(GNSS/INS) GNSS技术是指通过观测GNSS卫星来获取坐标系中绝对定位坐标的测量技术。

中国的北斗导航系统和美国的GPS都是GNSS技术。空旷场所单个GNSS定位误差小于5米。

在城市环境中,GNSS 信号很容易被遮挡。此时GNSS定位误差可能达到数十米。

因此,现在大多采用组合导航(GNSS/INS),可以大大提高组合导航的鲁棒性。当然,它的应用场景主要是在户外空旷区域。

二维码导航/磁导航AGV最初用于港口集装箱运输。 AGV最初采用磁导航。

这种方法需要在机器人行驶的道路上按照一定的间隔预先埋入磁钉。 AGV小车自行安装。

磁导航传感器接收磁钉信息完成自身定位。其运动路径由磁钉的排列决定,降低了对路径规划技术的要求。

该技术适用于港口和工厂的自动搬运等封闭且固定的机器人行走路径。该技术的缺点是磁钉会出现老化问题,而且更换磁钉的成本非常高。

机器人的运行路线不能轻易改变。这一缺点极大地限制了AGV技术的更广泛应用。

当然,随着AGV的发展,二维码导航也随之出现。 AGV小车扫描天花板或地板上的二维码,获取当前位置信息。

用于仓储物流行业和服务送餐机器人。图6 GNSS定位(左)无人码头AGV(右) 3.3室内场景三维重建:AR(增强现实技术)等AR可以理解为通过图像计算摄像头位置和三维度的技术以及其他传感器信息环境结构,结合3D渲染提供更自然的人机交互能力。

举一个简单的场景,你可以在 VR 设备中拥有一只虚拟小猫。周末的下午,它会懒洋洋地躺在你的脚边,时不时地打哈欠。

要实现这样的场景,AR设备需要具备以下三个功能: · 自定位:指定AR设备在空间中的位置,以便AR设备能够将虚拟物体渲染在合适的位置,并放置“小猫”在你脚下渲染需要知道你在空间中的位置。 ·环境感知:指感知周围环境的三维几何信息,使虚拟物体能够与现实世界进行交互。

如果想让“小猫”在桌子上跳,就必须知道桌子的空间位置和形状。 · 人机交互:理解周围环境的输入,例如人类的语言和手势,并给出反馈。

要实现自我定位和环境感知的功能,就需要SLAM技术。具体来说,需要视觉惯性导航SLAM技术。

视觉惯性导航SLAM也是目前实现AR的主流方案。与单纯依靠摄像头的纯视觉SLAM方案相比,视觉惯性导航SLAM通过摄像头输入的图像信息以及IMU的速度和加速度信息实现更精准的定位。

同时,图像信息可以提供更丰富的环境信息,更有利于后续算法了解环境完成人机交互。此外,由于制造工艺的成熟,MIU和摄像设备体积更小、重量更轻,而且相对便宜。

综合考虑以上因素,视觉惯性导航SLAM技术更适合AR设备的需求。那么,最经典的视觉惯性导航SLAM算法就是vins-mono算法。

图7 AR原理图。当然,目前的视觉惯导SLAM算法只能基本满足AR设备的需求。

不过,为了给消费者提供更好的体验,AR设备必然会向更小、更轻的方向发展。事实上,硬件的小型化、轻量化确实是更迫切的需求。

当然,这并不意味着算法不重要。与自动驾驶汽车和移动机器人相比,AR设备对SLAM算法的要求更高。

首先,SLAM算法的计算效率更高。小型设备通常意味着更少的计算资源。

如何用更少的算力达到同样的效果,是一个可以长期研究的方向;其次,与自动驾驶汽车、机器人相比,AR设备更容易出现极端情况,比如你的身体突然发生一定程度的转动。这对于佩戴 AR 设备的您来说是正常现象,但 AR 设备可能会因旋转过大而无法定位。

这对SLAM算法的鲁棒性提出了更高的要求;最后,如何用更短的时间和更少的动作快速完成初始化也很重要,就像你希望你的笔记本电脑启动更快一样。越快越好,您不想在佩戴 AR 设备后等待 30 秒并完成某些操作才能开始使用它。

04 结论 总体来说,SLAM涉及到很多知识。前端包括相机图像处理、激光雷达点云处理、IMU数据处理。

后端优化算法包括卡尔曼滤波和非线性优化。环回检测更多的是机器学习的范围和各类映射算法,进一步需要深度学习的知识。

如果你想了解或者入门SLAM,我首先推荐高翔博士的《视觉SLAM十四讲》。在第一次学习过程中,你可以很快掌握SLAM由哪些部分组成以及每个部分的用途是什么。

首先学习完成后,可以结合十四讲的复习论文、经典论文、代码和理论知识来学习。打好基础后,可以看看前沿的学术论文,选择其中一个方向进行研究。

这里需要注意的是,研究方向是就业还是学术取决于个人情况。同时,不要错过每一个与同行交流的机会,无论是与学长、论坛、交流群等。

SLAM涉及的技术太多,所以一定要开阔视野,不断刷新自己的学习路线。

视觉SLAM:模型介绍、算法框架及应用场景

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 「霄云科技」获数千万元A+轮融资

    「霄云科技」获数千万元A+轮融资

    分布式存储厂商「霄云科技」宣布完成数千万元A+轮融资。 本轮融资由元禾重元领投,老股东小苗朗成继续跟投。 本轮融资将主要用于市场拓展和产品研发。 “小云科技”成立于2017年,提供分布式存储、云计算、超融合、虚拟化等IT基础设施解决方案。 其主要产品包括纯国产、自主

    06-17

  • 59岁的物美创始人即将拥有两家上市公司

    59岁的物美创始人即将拥有两家上市公司

    难得一见的张文中悄然变身IPO收割机。 投资界天天IPO(ID:pedailyIPO)获悉,物美科技已正式向港交所提交上市申请。 此次,物美超市与麦德龙中国计划将产品一起打包上市。 招股书显示,物美科技营业收入达1亿元。 而物美科技背后站着的是曾经称霸商界的张文中。 他的人生经历

    06-18

  • 优衣库全新服装工坊落地上海,为什么大品牌如此热衷于缝补衣服?

    优衣库全新服装工坊落地上海,为什么大品牌如此热衷于缝补衣服?

    三年新生活,三年旧生活,又三年修补。 这句用来形容艰苦岁月的老话,在如今制造业生产力十足的中国,已经离年轻人越来越远了。 不过,虽然路边街角的小服装修理摊已经消失,但国际各大品牌却在窗户透明的旗舰店里设立了服装修理站。 这两天,优衣库中国大陆首家RE.UNIQLO服装

    06-21

  • 凯叔说书宣布完成1.56亿元B+轮融资,目前位列网络广播亲子节目第一名

    凯叔说书宣布完成1.56亿元B+轮融资,目前位列网络广播亲子节目第一名

    据投资界3月7日消息,凯叔说书正式宣布完成B+轮1.56亿元融资。 本轮融资由微盈资本、正心谷创投、上海耀明投资领投,致信资本、前海母基金跟投。 本轮融资后,公司将逐步形成“热门IP+多形态商业化”的成熟业务闭环。   凯叔讲故事是中国最大的儿童有声故事品牌。 它由前中

    06-18

  • 知己汽车完成超80亿元B轮股权融资,中银资产领投,

    知己汽车完成超80亿元B轮股权融资,中银资产领投,

    据投资界(ID:pedaily)3月1日消息,知己汽车宣布成功获得超80亿元B轮股权融资,深化公司智能化战略,打造高端智能驾驶、智能座舱、智能控制技术优势,并提供雄厚的资金储备。 智机汽车B轮融资由中国银行旗下中银资管领投,农银投资、临港集团等跟投,宁德时代、Momenta、清

    06-18

  • 斯坦德机器人获亿元B轮融资,光速中国、源码资本联合领投

    斯坦德机器人获亿元B轮融资,光速中国、源码资本联合领投

    投资界(ID:pedaily)7月31日获悉,工业柔性物流服务商斯坦德机器人近日已完成100万元投资 本轮融资由光速中国和源码资本联合领投。 本轮资金将主要用于产品线升级、量产及海外市场拓展。 斯坦德机器人今年6月获得数千万元Pre-A轮融资,由和创资本领投,青城资本、耀宏创投跟

    06-17

  • 浙江省台州市-省级科技型中小企业认定指南

    浙江省台州市-省级科技型中小企业认定指南

    基本信息指南名称:省级科技型中小企业认定办理城市:台州市部门名称:市科技局统一社会信用代码:8J 服务对象:法人办 文件类型:承诺文件 法律处理时限:(工作日) 承诺处理时限:48(工作日) 处理地点:台州市科学技术局(台州市椒江区市府大道号)市)三楼办公室办理时

    06-18

  • 广州高瓴药业完成数千万元融资,凯泰资本与盛山资产共同投资

    广州高瓴药业完成数千万元融资,凯泰资本与盛山资产共同投资

    据投资界3月7日消息,广州高瓴药业股份有限公司(以下简称“高瓴药业”) 》)完成数千万元融资。 本轮融资由凯泰资本和盛善资产联合投资。 高瓴药业成立于2006年,开发小分子靶向创新药物,解决自身免疫性疾病和肿瘤未满足的医疗需求。 以自身免疫性疾病为例,一种自身免疫

    06-17

  • Python 的许多命令行工具

    Python 的许多命令行工具

    Python 的标准库是一个充满命令行实用程序的宝库,可以极大地简化您的编码和系统管理任务。 这些实用程序最有趣的一点是它们的易用性;您可以使用 -m 命令行参数将整个模块作为脚本调用。 此功能对于启动 Web 服务器、浏览 Web,甚至直接从命令行解析和格式化 JSON 数据等任务

    06-17

  • 员工作弊事件背后,也有人质疑晋升神坛的胖东来

    员工作弊事件背后,也有人质疑晋升神坛的胖东来

    被外界誉为“零售业神话”、“超市天花板”的庞东来再次因员工作弊事件进入公众视野。 此事件引起外界广泛关注后,庞东来表示,该员工当时正在准备员工餐,但因违反相关规定而被解除劳动合同。 胖东来的上述治疗结果公布后,立即引起网络热议。 随着“律师称发东来解雇涉事员

    06-18

  • 尚贤魔镜完成1亿美元B轮融资,

    尚贤魔镜完成1亿美元B轮融资,

    据投资界9月23日消息,尚贤魔镜近日完成1亿美元B轮融资,由贝恩互联网产业基金领投。 据了解,这是一个AI广告平台。 魔镜系列产品的逻辑是实时对比信息流广告将产生的新增用户与公司积累的真实活跃用户数据包,针对广告主的用户画像需求而形成的数据库通过其动态数据包进行大

    06-17

  • 冠安信息完成新一轮融资近3亿元,国信创投与国开制造业转型升级基金联合领投

    冠安信息完成新一轮融资近3亿元,国信创投与国开制造业转型升级基金联合领投

    投资圈(ID:pedaily)据2月3日消息,综合网络安全公司冠安信息完成新一轮近3亿元战略融资。 本轮融资由上海国信创业投资有限公司(简称国信创投)和国开行制造业转型升级基金联合领投,卓带投资跟投。 上海冠安信息技术有限公司成立于2018年8月,是一家提供大数据+泛安全产品

    06-18