从零实战SLAM-第八课(非特征点的视觉里程计)

在七月算法报的班,老师讲的蛮好。好记性不如烂笔头,关键内容还是记录一下吧,课程入口,感兴趣的同学可以学习一下。


特征点法流程:

1.在图像中提取特征点并计算特征描述 非常耗时约10ms ORB

2.在不同图像中寻找特征匹配 非常耗时𝑂(𝑛∧2) 暴力匹配

3.利用匹配点信息计算相机位姿 比较快速<1ms

是否可以不使用特征匹配计算VO?

光流法:最小化重投影误差 Reprojection error

直接法:最小化光度误差 Photometric error

光流: 追踪源图像某个点在其他图像中的运动。本质→估计像素在不同时刻图像中的运动。

光流法又分为两大类,每一类的计算方法也不同。

❑ 稀疏光流:计算部分像素运动 ---- Lucas Kanade

❑ 稠密光流:计算全部像素运动 ---- Horn Schunck

光流法的前提假说:灰度不变。

光流法的数学基础

光流法中的L-K方法

LK光流的结果依赖于图像梯度

❑ 但梯度不够平滑,可能剧烈变化

❑ 局部的梯度不能用于预测长期图像走向

解决方式:多层光流

光流法的总结:

➢ 可以看成最小化像素误差的非线性优化

➢ 每次使用了 Taylor 一阶近似,在离优化点较远时效果不佳,往往需要迭代多次

➢ 运动较大时要使用金字塔

➢ 可以用于跟踪图像中的稀疏关键点的运动轨迹

➢ 得到配对点后,后续计算与特征法VO中相同

光流法的缺点:

➢ 没有用到相机本身的几何结构

➢ 没有考虑到相机的旋转和图像的缩放

➢ 对于边界上的点,光流不好追踪

直接法:

通过相机模型对相机位姿变化进行估计

建立目标函数

计算过程

左扰动分解中三项的物理意义

根据使用的图像信息不同,可分为:

➢ 稀疏直接法:只处理稀疏角点或关键点

➢ 稠密直接法:使用所有像素

➢ 半稠密直接法:使用部分梯度明显的像素

直接法的直观解释:

➢ 像素灰度引导着优化的方向

➢ 要使优化成立,必须保证从初始估计到最优估计中间的梯度一直下降

➢ 这很容易受到图像非凸性的影响

直接法的优势与劣势

优势:

❑ 省略特征提取的时间

❑ 只需有像素梯度而不必是角点(对白墙等地方有较好效果)

❑ 可稠密或半稠密

劣势:

❑ 灰度不变难以满足(易受曝光和模糊影响)

❑ 单像素区分性差

❑ 图像非凸性

相关推荐
九酒7 小时前
AI Agent 开发踩坑记:口播功能非得用 APP 原生实现吗?
前端·人工智能·agent
蝎子莱莱爱打怪7 小时前
DSpark 讲透:DeepSeek 不换模型,硬把 V4 提速 85%,是怎么做到的?
人工智能·面试·程序员
巫山老妖8 小时前
置身AI内
人工智能
IT_陈寒10 小时前
JavaScript项目实战经验分享
前端·人工智能·后端
vanuan11 小时前
两个AI智能体第一次对话-A2A双Agent协作实战
人工智能
韩师傅12 小时前
海天线算法的前世今生
python·计算机视觉
韩师傅12 小时前
当你的甲方设备过烂,要如何快速出效果?
python·计算机视觉
韩师傅13 小时前
当你的甲方吐槽天空不够蓝,你应该如何应对
python·计算机视觉
kfaino13 小时前
码农的AI翻身(四)你好,我叫 Attention
人工智能·后端
雨落Re15 小时前
如何设计一个高质量Skill
人工智能