当前位置:   article > 正文

SLAM 06.视觉里程计-3-直接法_slam 直接法

slam 直接法

1、特征法和直接法比较

1.1、特征法的缺点

特征点法有如下几个缺点:

  1. 特征点法需要提取多个特征点以及描述子,并且要进行多个特征点之间的匹配,运算量很大,难于满足实时要求。SIFT目前在CPU上是无法实时计算的,而ORB也需要近20毫秒的计算时长。如果整个SLAM以30毫秒每帧的速度运行,那么一半时间都将花在计算特征点上。
  2. 使用特征点时,忽略了除特征点外的所有信息。一幅图像有几十万像素,而特征点只有几百个。只使用特征点丢弃了大部分可能有用的图像信息,之后的运动估计、重建过程并未使用除特征点以外的信息。
  3. 弱纹理环境下容易失效。相机有时运动到特征缺失的地方,这些地方往往没有明显的纹理信息。例如,有时面对一堵白墙,或者空荡的走廊。这些场景下特征点数量会明显减少,可能找不到足够的匹配特征点来计算相机运动。 在这里插入图片描述

1.2、直接法的优缺点

所以就提出了直接法,直接法跳过了提取特征点的步骤。它构建一个优化问题,直接根据像素信息(通常是亮度),来估计相机的运动。这种方法省去了提特征的时间,然而代价则是,利用了所有信息之后,使得优化问题规模远远大于使用特征点的规模。因此,基于直接法的VO,多数需要GPU加速,才能做到实时化。此外,直接方法假设相机运动是连续的、缓慢的。只有在图像足够相似时才有效。而特征点方法在图像差异较大时也能工作。 因为利用了图像中所有的信息,直接法重构的地图是稠密的,这与基于稀疏特征点的VO有很大不同。在稠密地图里,你可以看到每处的细节,而不是离散的点。
直接法相对特征法的好处有:

  • 速度快
  • 对点特征缺失图像更鲁棒;
  • 姿态稳定连续;
  • 场景重建较稠密。

1.3、特征法和直接法区别

特征点法通过最小化重投影几何误差(geometric error)来计算相机位姿与地图点的位置(常用的有重投影误差(projection error)等),而直接法则最小化光度误差(photometric error,即像素之间的误差)。所谓光度误差是说,最小化的目标函数,通常由图像之间的灰度误差来决定,而非重投影之后的几何误差。直接法让单独一个点不具备识别意义,而是将大量的点组织起来,因此它的表达是一种细粒度的几何表示。直接法假设同一空间三维点在各个视角下测到的灰度值不变(因此假设所在平面是漫反射,没有遮挡,没有光照变化)。


直接法又分为光流法和直接法

2、光流

光流就是光在不同时刻在图像之间的流动,分为稀疏光流和稠密光流。计算部分像素运动称为稀疏光流,计算所有像素的称为稠密光流。稀疏光流使用LK算法,稠密使用HS算法。在SLAM中用光流去追一些特征点࿰

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/292783
推荐阅读
相关标签
  

闽ICP备14008679号