点线特征融合的单目视觉里程计

点线特征融合的单目视觉里程计---袁梦1*李艾华1

为了解决地下工程场景下巡逻机器人的定位与建图问题,提出了一种点线特征融合的单目半直接视觉里程计。本算法分为特征提取、状态估计和深度滤波器三个线程。特征提取线程负责图像点线特征的提取,之后状态估计线程利用点、线特征不同的匹配与跟踪策略获得相机的 6 自由度位姿,并通过帧与帧、特征与特征、局部帧之间约束关系进一步优化相机的位姿。深度滤波器线程通过概率分布的方式刻画 3 维路标点相对于相机光心的深度信息,该方式相对于固定深度值的方式能够提高深度估计的鲁棒性。

特征提取线程对输入的图像提取 Fast 角点和 Canny 边缘特征。

位姿估计线程首先采用光流法进行初始化,之后采用直接稀疏法求解相机位姿。根据特征点共视情况,对两个关键帧和局部多个关键帧的位姿进行优化,得到更加准确的位姿估计。

深度滤波器线程是用纯高斯概率分布来刻画两帧图像之间三角化得到的深度值,得到鲁棒性更强的 3D 路标(Landmark)的坐标值,进而加载到地图中供位姿估计使用。单目视觉里程计存在尺度漂移的问题,本文中采用计算相似变换(Sim3)来矫正尺度漂移的问题。整个算法流程框图如下图 1。

视觉里程计包括前端位姿估计与后端位姿优化。

位姿估计核心是特征提取与匹配跟踪,同时需要考虑因单目没有尺度需要进行相机初始化、关键帧选择以及特征丢失时进行重定位的问题。

位姿优化主要考虑帧与帧、局部帧(共视关系的图)之间的位姿优化问题。本文采用由深度估计收敛的 3D 路标点和关键帧的位姿组成的稀疏地图。

原文地址:https://www.cnblogs.com/Jessica-jie/p/7708879.html

时间: 2024-10-09 10:46:10

点线特征融合的单目视觉里程计的相关文章

单目视觉里程计 mono vo

之前为了改动svo进行了一些不同的尝试,两个视频demo在下面. 效果1 视频链接: https://v.qq.com/x/page/d0383rpx3ap.html 在不同数据集上测试 效果2 视频链接: https://v.qq.com/x/page/k03832nd7pu.html vo2对着天花板,用于室内机器人 vo2在euroc数据集上,无人机从起点飞出到飞回原点,可看到轨迹中起始点闭合的比较好,漂移小.

关于视觉里程计以及VI融合的相关研究(长期更新)

1. svo 源码:https://github.com/uzh-rpg/rpg_svo 国内对齐文章源码的研究: (1)冯斌: 对其代码重写 https://github.com/yueying/OpenMVO 对原理的一步步分析http://fengbing.net/ (2)白巧克力: 对文章的具体分析:http://blog.csdn.net/heyijia0327/article/details/51083398 2. svo+msf 文章:见我的分享http://pan.baidu.c

第三篇 视觉里程计(VO)的初始化过程以及openvslam中的相关实现详解

视觉里程计(Visual Odometry, VO),通过使用相机提供的连续帧图像信息(以及局部地图,先不考虑)来估计相邻帧的相机运动,将这些相对运行转换为以第一帧为参考的位姿信息,就得到了相机载体(假设统一的刚体)的里程信息. 初始化实例 在实例化跟踪器的时候会实例化一个初始化实例,有一些比较重要的参数需要注意下,看代码注释以及初始值,参数值也可以在yaml文件中自定义. // src/openvslam/module/initializer.h:83 //! max number of it

SLAM入门之视觉里程计(5):单应矩阵

在之前的博文OpenCV,计算两幅图像的单应矩阵,介绍调用OpenCV中的函数,通过4对对应的点的坐标计算两个图像之间单应矩阵\(H\),然后调用射影变换函数,将一幅图像变换到另一幅图像的视角中.当时只是知道通过单应矩阵,能够将图像1中的像素坐标\((u_1,v_1)\)变换到图像2中对应的位置上\((u_2,v_2)\),而没有深究其中的变换关系. 单应(Homography)是射影几何中的概念,又称为射影变换.它把一个射影平面上的点(三维齐次矢量)映射到另一个射影平面上,并且把直线映射为直线

视觉里程计 Visual Odometry

首先分析include头文件下的slamBase.h文件 # pragma once // 各种头文件 // C++标准库 #include <fstream> #include <vector> #include <map> using namespace std; // Eigen #include <Eigen/Core> #include <Eigen/Geometry> // OpenCV #include <opencv2/co

视觉里程计VO

视觉里程计的主要问题是如何根据图像来估计相机运动,VO的实现方法,按照是否需要提取特征,分为特征点法的前端以及不提取特征的直接法前端.基于特征点法的前端,长久以来被认为是视觉里程计的主流方法,它运行稳定,对光照.动态物体不敏感,是目前较为成熟的解决方案. 计算机视觉邻域的研究者们,设计了许多比角点更加稳定的局部图像特征,比如SIFT,SURF,ORB等.特征点由关键点(Key-point)和描述子(Descriper)两部分组成.SIFT(Scale Invariant Feature Tran

讯飞开放平台上线业界首个多生物特征融合认证方案

年末岁初,是各类犯罪案件的高发时段,而其中不法分子通过倒卖.盗取他人身份信息后,利用身份认证漏洞可办理银行卡.电话卡,进而从事各种违法犯罪活动的案件近来尤为常见.从前不久微信H5链接盗取支付宝存款的谣言散播中可见广大用户对身份安全认证,尤其是金融领域的安全认证的一贯担忧.话说讯飞开放平台刚刚上线多生物特征融合认证方案,免费向业界开发者开放,“声纹+人脸”验证护航全民信息安全.一起来探讨下,到底有什么特点?案例演示地址:讯飞开放平台多生物特征融合认证方案 信息时代掉,队的身份验证 身处信息社会,如

[SLAM]里程计运动模型

星球大战里面有2个非常出名的机器人一个是3PO,一个是R2. 我的机器人呢就叫小豆包啦,代号R5,不许侵犯它的署名哦. 常见的机器人运动模型包括:速度计运动模型,里程计运动模型和惯导运动模型.里程计是比较常见的一种类型. 首先是定义: 小豆包$t$时刻的位姿$x_{t}$,运动控制信息$u$,概率运动模型为$P\{x_{t}|u,x_{t-1}\}$. 将小豆包的运动分解为三个阶段:旋转$theta_{1}$,平移$theta_{trans}$,旋转$theta_{rot2}$.

线特征LSD and 描述子LBD(一)

最近在看有关特征提取的线特征,暑期就看了相关的论文:<基于点线综合特征的双目视觉SLAM方法_谢晓佳>,最近呢,把里面有关线特征提取LSD和描述子LBD的代码跑了一遍,记录如下: [1]LSD: a Line Segment Detector线段检测器 LSD是一种局部提取直线的算法,速度比Hough要快. LSD是一种直线检测分割算法,它能在线性的时间内得出亚像素级精度的检测结果.该算法被设计成可以在任何数字图像上都无需参数调节.它可以自己控制误检的数量:平均而言,每张图有一个误检. 有几篇